From 6b9aea44adde44a28bdd06dd725047b6194b8958 Mon Sep 17 00:00:00 2001 From: Petros Paraskevopoulos Date: Mon, 1 Jul 2024 12:11:35 +0300 Subject: [PATCH 1/3] CI: Add agent attribute with queue android to every yml file With that change all the steps in those YML pipelines would build on our Android queue by default. FYI: The below '.buildkite/**/*.yml' file were already using this agent: - pipeline.yml - schedules/dependency-analysis.yml For more info see: https://github.com/Automattic/buildkite-ci/pull/459 #issuecomment-2199589109 --- .buildkite/beta-builds.yml | 3 +++ .buildkite/code-freeze.yml | 3 +++ .buildkite/complete-code-freeze.yml | 3 +++ .buildkite/finalize-release.yml | 3 +++ .buildkite/new-beta-release.yml | 3 +++ .buildkite/release-builds.yml | 3 +++ .buildkite/update-release-notes.yml | 3 +++ 7 files changed, 21 insertions(+) diff --git a/.buildkite/beta-builds.yml b/.buildkite/beta-builds.yml index d54c253621cb..782a48c9c9b5 100644 --- a/.buildkite/beta-builds.yml +++ b/.buildkite/beta-builds.yml @@ -7,6 +7,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: ################# # Gradle Wrapper Validation diff --git a/.buildkite/code-freeze.yml b/.buildkite/code-freeze.yml index d46b6568e8a9..f5c20aa96a87 100644 --- a/.buildkite/code-freeze.yml +++ b/.buildkite/code-freeze.yml @@ -4,6 +4,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: - label: "Code Freeze" plugins: *common_plugins diff --git a/.buildkite/complete-code-freeze.yml b/.buildkite/complete-code-freeze.yml index c50c7ff05254..4f563dd1b17b 100644 --- a/.buildkite/complete-code-freeze.yml +++ b/.buildkite/complete-code-freeze.yml @@ -4,6 +4,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: - label: "Complete Code Freeze" plugins: *common_plugins diff --git a/.buildkite/finalize-release.yml b/.buildkite/finalize-release.yml index 7c03f7137228..cfc032f17f3c 100644 --- a/.buildkite/finalize-release.yml +++ b/.buildkite/finalize-release.yml @@ -4,6 +4,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: - label: "Finalize release" plugins: *common_plugins diff --git a/.buildkite/new-beta-release.yml b/.buildkite/new-beta-release.yml index 0cde24c0912b..9880e714051f 100644 --- a/.buildkite/new-beta-release.yml +++ b/.buildkite/new-beta-release.yml @@ -4,6 +4,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: - label: "New Beta Release" plugins: *common_plugins diff --git a/.buildkite/release-builds.yml b/.buildkite/release-builds.yml index 0e44afed36d1..e866f7026197 100644 --- a/.buildkite/release-builds.yml +++ b/.buildkite/release-builds.yml @@ -7,6 +7,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: ################# # Gradle Wrapper Validation diff --git a/.buildkite/update-release-notes.yml b/.buildkite/update-release-notes.yml index dcdca7b56518..2836f04083c5 100644 --- a/.buildkite/update-release-notes.yml +++ b/.buildkite/update-release-notes.yml @@ -4,6 +4,9 @@ common_params: - &common_plugins - automattic/a8c-ci-toolkit#3.4.2 +agents: + queue: "android" + steps: - label: "Update release notes" plugins: *common_plugins From 9b670253fb1210c04f8960c8b9a22aeaa0cc0b40 Mon Sep 17 00:00:00 2001 From: Petros Paraskevopoulos Date: Mon, 1 Jul 2024 12:15:27 +0300 Subject: [PATCH 2/3] CI: Remove custom meta-data to ci schedule for dependency analysis This configuration is removed as the goal would be to ultimately use the 'pipeline_file/xyz.yml' metadata key/value instead of this manually set 'scheduled-build/dependency-analysis' meta-data key/value pair. For more info see: https://github.com/Automattic/buildkite-ci/pull/459 #issuecomment-2199589109 --- .buildkite/schedules/dependency-analysis.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.buildkite/schedules/dependency-analysis.yml b/.buildkite/schedules/dependency-analysis.yml index fb6cd3b469f7..fd89a6ad5f23 100644 --- a/.buildkite/schedules/dependency-analysis.yml +++ b/.buildkite/schedules/dependency-analysis.yml @@ -9,9 +9,7 @@ agents: steps: - label: "dependency analysis" - # The meta-data added is used by Apps Metrics Prometheus collector to find the build. command: | - buildkite-agent meta-data set "scheduled-build" "dependency-analysis" echo "--- 📊 Analyzing" cp gradle.properties-example gradle.properties ./gradlew buildHealth From 4b2c1b5236f3e285297d5d97e4e795b3f13fe62e Mon Sep 17 00:00:00 2001 From: Petros Paraskevopoulos Date: Mon, 1 Jul 2024 13:09:43 +0300 Subject: [PATCH 3/3] CI: Add yaml language server schema to allow ides to recognize yml files FYI: This will offer syntax highlighting and autocompletion when editing those files in those IDEs (like VSCode). --- .buildkite/beta-builds.yml | 3 +++ .buildkite/code-freeze.yml | 3 +++ .buildkite/complete-code-freeze.yml | 3 +++ .buildkite/finalize-release.yml | 3 +++ .buildkite/new-beta-release.yml | 3 +++ .buildkite/pipeline.yml | 3 +++ .buildkite/release-builds.yml | 3 +++ .buildkite/schedules/dependency-analysis.yml | 3 +++ .buildkite/update-release-notes.yml | 3 +++ 9 files changed, 27 insertions(+) diff --git a/.buildkite/beta-builds.yml b/.buildkite/beta-builds.yml index 782a48c9c9b5..d7ee1deef39f 100644 --- a/.buildkite/beta-builds.yml +++ b/.buildkite/beta-builds.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # This pipeline is meant to be run via the Buildkite API, and is # only used for beta builds diff --git a/.buildkite/code-freeze.yml b/.buildkite/code-freeze.yml index f5c20aa96a87..ab1e90253793 100644 --- a/.buildkite/code-freeze.yml +++ b/.buildkite/code-freeze.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/complete-code-freeze.yml b/.buildkite/complete-code-freeze.yml index 4f563dd1b17b..8e27d9888b7a 100644 --- a/.buildkite/complete-code-freeze.yml +++ b/.buildkite/complete-code-freeze.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/finalize-release.yml b/.buildkite/finalize-release.yml index cfc032f17f3c..1900c4ad6b3f 100644 --- a/.buildkite/finalize-release.yml +++ b/.buildkite/finalize-release.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/new-beta-release.yml b/.buildkite/new-beta-release.yml index 9880e714051f..1b72021511c1 100644 --- a/.buildkite/new-beta-release.yml +++ b/.buildkite/new-beta-release.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index 290f05477e29..227a0a21dcf2 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/release-builds.yml b/.buildkite/release-builds.yml index e866f7026197..eb4df6618207 100644 --- a/.buildkite/release-builds.yml +++ b/.buildkite/release-builds.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # This pipeline is meant to be run via the Buildkite API, and is # only used for release builds diff --git a/.buildkite/schedules/dependency-analysis.yml b/.buildkite/schedules/dependency-analysis.yml index fd89a6ad5f23..5787bb5c2d5e 100644 --- a/.buildkite/schedules/dependency-analysis.yml +++ b/.buildkite/schedules/dependency-analysis.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key. diff --git a/.buildkite/update-release-notes.yml b/.buildkite/update-release-notes.yml index 2836f04083c5..4d1aab1ef66b 100644 --- a/.buildkite/update-release-notes.yml +++ b/.buildkite/update-release-notes.yml @@ -1,3 +1,6 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/buildkite/pipeline-schema/main/schema.json +--- + # Nodes with values to reuse in the pipeline. common_params: # Common plugin settings to use with the `plugins` key.