mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-06-28 01:22:26 -04:00
[ci] Allow CI to be triggered by old elasticmachine-style comment (#105154)
This commit is contained in:
parent
b250f06b09
commit
37b57a411b
4 changed files with 130 additions and 4 deletions
|
@ -11,7 +11,7 @@
|
|||
"set_commit_status": false,
|
||||
"build_on_commit": true,
|
||||
"build_on_comment": true,
|
||||
"trigger_comment_regex": "(run\\W+elasticsearch-ci.+)|(^\\s*(buildkite\\s*)?test\\s+this(\\s+please)?)",
|
||||
"trigger_comment_regex": "(run\\W+elasticsearch-ci.+)|(^\\s*((buildkite|@elastic(search)?machine)\\s*)?test\\s+this(\\s+please)?)",
|
||||
"cancel_intermediate_builds": true,
|
||||
"cancel_intermediate_builds_on_comment": false
|
||||
},
|
||||
|
|
|
@ -201,3 +201,111 @@ exports[`generatePipelines should generate correct pipeline when using a trigger
|
|||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`generatePipelines should generate correct pipelines with a non-docs change and @elasticmachine 1`] = `
|
||||
[
|
||||
{
|
||||
"name": "bwc-snapshots",
|
||||
"pipeline": {
|
||||
"steps": [
|
||||
{
|
||||
"group": "bwc-snapshots",
|
||||
"steps": [
|
||||
{
|
||||
"agents": {
|
||||
"buildDirectory": "/dev/shm/bk",
|
||||
"image": "family/elasticsearch-ubuntu-2004",
|
||||
"machineType": "custom-32-98304",
|
||||
"provider": "gcp",
|
||||
},
|
||||
"command": ".ci/scripts/run-gradle.sh -Dignore.tests.seed v{{matrix.BWC_VERSION}}#bwcTest",
|
||||
"env": {
|
||||
"BWC_VERSION": "{{matrix.BWC_VERSION}}",
|
||||
},
|
||||
"label": "{{matrix.BWC_VERSION}} / bwc-snapshots",
|
||||
"matrix": {
|
||||
"setup": {
|
||||
"BWC_VERSION": [
|
||||
"7.17.14",
|
||||
"8.10.3",
|
||||
"8.11.0",
|
||||
],
|
||||
},
|
||||
},
|
||||
"timeout_in_minutes": 300,
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
"name": "using-defaults",
|
||||
"pipeline": {
|
||||
"env": {
|
||||
"CUSTOM_ENV_VAR": "value",
|
||||
},
|
||||
"steps": [
|
||||
{
|
||||
"command": "echo 'hello world'",
|
||||
"label": "test-step",
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
||||
exports[`generatePipelines should generate correct pipelines with a non-docs change and @elasticsearchmachine 1`] = `
|
||||
[
|
||||
{
|
||||
"name": "bwc-snapshots",
|
||||
"pipeline": {
|
||||
"steps": [
|
||||
{
|
||||
"group": "bwc-snapshots",
|
||||
"steps": [
|
||||
{
|
||||
"agents": {
|
||||
"buildDirectory": "/dev/shm/bk",
|
||||
"image": "family/elasticsearch-ubuntu-2004",
|
||||
"machineType": "custom-32-98304",
|
||||
"provider": "gcp",
|
||||
},
|
||||
"command": ".ci/scripts/run-gradle.sh -Dignore.tests.seed v{{matrix.BWC_VERSION}}#bwcTest",
|
||||
"env": {
|
||||
"BWC_VERSION": "{{matrix.BWC_VERSION}}",
|
||||
},
|
||||
"label": "{{matrix.BWC_VERSION}} / bwc-snapshots",
|
||||
"matrix": {
|
||||
"setup": {
|
||||
"BWC_VERSION": [
|
||||
"7.17.14",
|
||||
"8.10.3",
|
||||
"8.11.0",
|
||||
],
|
||||
},
|
||||
},
|
||||
"timeout_in_minutes": 300,
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
"name": "using-defaults",
|
||||
"pipeline": {
|
||||
"env": {
|
||||
"CUSTOM_ENV_VAR": "value",
|
||||
},
|
||||
"steps": [
|
||||
{
|
||||
"command": "echo 'hello world'",
|
||||
"label": "test-step",
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
`;
|
||||
|
|
|
@ -13,11 +13,11 @@ describe("generatePipelines", () => {
|
|||
});
|
||||
|
||||
// Helper for testing pipeline generations that should be the same when using the overall ci trigger comment "buildkite test this"
|
||||
const testWithTriggerCheck = (directory: string, changedFiles?: string[]) => {
|
||||
const testWithTriggerCheck = (directory: string, changedFiles?: string[], comment = "buildkite test this") => {
|
||||
const pipelines = generatePipelines(directory, changedFiles);
|
||||
expect(pipelines).toMatchSnapshot();
|
||||
|
||||
process.env["GITHUB_PR_TRIGGER_COMMENT"] = "buildkite test this";
|
||||
process.env["GITHUB_PR_TRIGGER_COMMENT"] = comment;
|
||||
const pipelinesWithTriggerComment = generatePipelines(directory, changedFiles);
|
||||
expect(pipelinesWithTriggerComment).toEqual(pipelines);
|
||||
};
|
||||
|
@ -42,4 +42,20 @@ describe("generatePipelines", () => {
|
|||
const pipelines = generatePipelines(`${import.meta.dir}/mocks/pipelines`, ["build.gradle"]);
|
||||
expect(pipelines).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test("should generate correct pipelines with a non-docs change and @elasticmachine", () => {
|
||||
testWithTriggerCheck(
|
||||
`${import.meta.dir}/mocks/pipelines`,
|
||||
["build.gradle", "docs/README.asciidoc"],
|
||||
"@elasticmachine test this please"
|
||||
);
|
||||
});
|
||||
|
||||
test("should generate correct pipelines with a non-docs change and @elasticsearchmachine", () => {
|
||||
testWithTriggerCheck(
|
||||
`${import.meta.dir}/mocks/pipelines`,
|
||||
["build.gradle", "docs/README.asciidoc"],
|
||||
"@elasticsearchmachine test this please"
|
||||
);
|
||||
});
|
||||
});
|
||||
|
|
|
@ -148,7 +148,9 @@ export const generatePipelines = (
|
|||
// However, if we're using the overall CI trigger "[buildkite] test this [please]", we should use the regular filters above
|
||||
if (
|
||||
process.env["GITHUB_PR_TRIGGER_COMMENT"] &&
|
||||
!process.env["GITHUB_PR_TRIGGER_COMMENT"].match(/^\s*(buildkite\s*)?test\s+this(\s+please)?/i)
|
||||
!process.env["GITHUB_PR_TRIGGER_COMMENT"].match(
|
||||
/^\s*((@elastic(search)?machine|buildkite)\s*)?test\s+this(\s+please)?/i
|
||||
)
|
||||
) {
|
||||
filters = [triggerCommentCheck];
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue