From a3f03b711c655d1f1b55258890ad739a3039bb96 Mon Sep 17 00:00:00 2001 From: Thomas Date: Fri, 5 Sep 2025 14:36:37 -0400 Subject: [PATCH 1/3] docs: add author line to changelog fragment --- .github/workflows/e2e.yml | 7 ++++--- .github/workflows/integration.yml | 5 +++-- .github/workflows/k8s_e2e.yml | 10 +++++----- changelog.d/ci_assume_ec_label.enhancement.md | 3 +++ 4 files changed, 15 insertions(+), 10 deletions(-) create mode 100644 changelog.d/ci_assume_ec_label.enhancement.md diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 3e1dfa98346a7..82f8729e24c6b 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -42,7 +42,7 @@ env: jobs: changes: - if: github.event_name == 'pull_request' + if: github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec') uses: ./.github/workflows/changes.yml with: source: false @@ -60,7 +60,7 @@ jobs: needs.changes.outputs.e2e-datadog-logs == 'true' || needs.changes.outputs.e2e-datadog-metrics == 'true' || needs.changes.outputs.e2e-opentelemetry-logs == 'true' - ) + ) && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: @@ -74,8 +74,9 @@ jobs: if: github.event_name == 'pull_request' env: GH_APP_DATADOG_VECTOR_CI_APP_ID: ${{ secrets.GH_APP_DATADOG_VECTOR_CI_APP_ID }} + ASSUME_EC: ${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }} run: | - if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" ]] ; then + if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" && "$ASSUME_EC" != "true" ]] ; then echo "PR_HAS_ACCESS_TO_SECRETS=true" >> "$GITHUB_ENV" else echo "PR_HAS_ACCESS_TO_SECRETS=false" >> "$GITHUB_ENV" diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 5d46c5c1db0ab..d6d3ccc51b1db 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -35,7 +35,7 @@ env: jobs: changes: - if: github.event_name == 'pull_request' || github.event_name == 'merge_group' + if: (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' uses: ./.github/workflows/changes.yml with: source: true @@ -53,8 +53,9 @@ jobs: id: secret_check env: GH_APP_DATADOG_VECTOR_CI_APP_ID: ${{ secrets.GH_APP_DATADOG_VECTOR_CI_APP_ID }} + ASSUME_EC: ${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }} run: | - if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" ]]; then + if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" && "$ASSUME_EC" != "true" ]]; then echo "can_access_secrets=true" >> $GITHUB_OUTPUT else echo "can_access_secrets=false" >> $GITHUB_OUTPUT diff --git a/.github/workflows/k8s_e2e.yml b/.github/workflows/k8s_e2e.yml index 7165bf63d5ce8..618227bcb86fe 100644 --- a/.github/workflows/k8s_e2e.yml +++ b/.github/workflows/k8s_e2e.yml @@ -51,7 +51,7 @@ env: jobs: changes: # Only evaluate files changed on pull request trigger - if: ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }} + if: ${{ (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' }} uses: ./.github/workflows/changes.yml secrets: inherit @@ -61,7 +61,7 @@ jobs: timeout-minutes: 45 needs: changes # Run this job even if `changes` job is skipped - if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' }} + if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }} # cargo-deb requires a release build, but we don't need optimizations for tests env: CARGO_PROFILE_RELEASE_OPT_LEVEL: 0 @@ -125,7 +125,7 @@ jobs: timeout-minutes: 5 needs: changes # Run this job even if `changes` job is skipped - if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' }} + if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }} outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: @@ -182,7 +182,7 @@ jobs: - build-x86_64-unknown-linux-gnu - compute-k8s-test-plan # because `changes` job might be skipped - if: always() && needs.build-x86_64-unknown-linux-gnu.result == 'success' && needs.compute-k8s-test-plan.result == 'success' + if: always() && needs.build-x86_64-unknown-linux-gnu.result == 'success' && needs.compute-k8s-test-plan.result == 'success' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) strategy: matrix: ${{ fromJson(needs.compute-k8s-test-plan.outputs.matrix) }} fail-fast: false @@ -243,7 +243,7 @@ jobs: - build-x86_64-unknown-linux-gnu - compute-k8s-test-plan - test-e2e-kubernetes - if: always() + if: always() && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) env: FAILED: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }} steps: diff --git a/changelog.d/ci_assume_ec_label.enhancement.md b/changelog.d/ci_assume_ec_label.enhancement.md new file mode 100644 index 0000000000000..73aa5f8e781b5 --- /dev/null +++ b/changelog.d/ci_assume_ec_label.enhancement.md @@ -0,0 +1,3 @@ +Allow skipping integration and E2E workflows by applying the `ci: assume ec` label to pull requests. + +authors: openai From d2caacef2733497f06a789d5621d0ecc83399fcc Mon Sep 17 00:00:00 2001 From: Thomas Date: Fri, 5 Sep 2025 14:38:05 -0400 Subject: [PATCH 2/3] Hi --- Cargo.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index dfa2ca290975d..d9f34157947a1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1104,3 +1104,5 @@ name = "codecs" path = "benches/codecs/main.rs" harness = false required-features = ["codecs-benches"] + +# Hi From bd71fa383b9427076592d3e822887e11b2ccfb40 Mon Sep 17 00:00:00 2001 From: Thomas Date: Fri, 5 Sep 2025 14:41:59 -0400 Subject: [PATCH 3/3] Fix mess --- .github/workflows/e2e.yml | 8 ++++---- .github/workflows/integration.yml | 4 ++-- .github/workflows/k8s_e2e.yml | 10 +++++----- changelog.d/ci_assume_ec_label.enhancement.md | 3 --- 4 files changed, 11 insertions(+), 14 deletions(-) delete mode 100644 changelog.d/ci_assume_ec_label.enhancement.md diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 82f8729e24c6b..2d0cd02df7957 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -42,7 +42,7 @@ env: jobs: changes: - if: github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec') + if: "${{ github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }}" uses: ./.github/workflows/changes.yml with: source: false @@ -54,13 +54,13 @@ jobs: runs-on: ubuntu-24.04-8core timeout-minutes: 45 needs: changes - if: always() && ( + if: "${{ always() && ( github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || needs.changes.outputs.e2e-datadog-logs == 'true' || needs.changes.outputs.e2e-datadog-metrics == 'true' || needs.changes.outputs.e2e-opentelemetry-logs == 'true' - ) && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) + ) && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }}" steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: @@ -74,7 +74,7 @@ jobs: if: github.event_name == 'pull_request' env: GH_APP_DATADOG_VECTOR_CI_APP_ID: ${{ secrets.GH_APP_DATADOG_VECTOR_CI_APP_ID }} - ASSUME_EC: ${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }} + ASSUME_EC: "${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }}" run: | if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" && "$ASSUME_EC" != "true" ]] ; then echo "PR_HAS_ACCESS_TO_SECRETS=true" >> "$GITHUB_ENV" diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index d6d3ccc51b1db..5c1185e0afd5f 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -35,7 +35,7 @@ env: jobs: changes: - if: (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' + if: "${{ (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' }}" uses: ./.github/workflows/changes.yml with: source: true @@ -53,7 +53,7 @@ jobs: id: secret_check env: GH_APP_DATADOG_VECTOR_CI_APP_ID: ${{ secrets.GH_APP_DATADOG_VECTOR_CI_APP_ID }} - ASSUME_EC: ${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }} + ASSUME_EC: "${{ contains(github.event.pull_request.labels.*.name, 'ci: assume ec') }}" run: | if [[ "$GH_APP_DATADOG_VECTOR_CI_APP_ID" != "" && "$ASSUME_EC" != "true" ]]; then echo "can_access_secrets=true" >> $GITHUB_OUTPUT diff --git a/.github/workflows/k8s_e2e.yml b/.github/workflows/k8s_e2e.yml index 618227bcb86fe..52a3dee032919 100644 --- a/.github/workflows/k8s_e2e.yml +++ b/.github/workflows/k8s_e2e.yml @@ -51,7 +51,7 @@ env: jobs: changes: # Only evaluate files changed on pull request trigger - if: ${{ (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' }} + if: "${{ (github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) || github.event_name == 'merge_group' }}" uses: ./.github/workflows/changes.yml secrets: inherit @@ -61,7 +61,7 @@ jobs: timeout-minutes: 45 needs: changes # Run this job even if `changes` job is skipped - if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }} + if: "${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }}" # cargo-deb requires a release build, but we don't need optimizations for tests env: CARGO_PROFILE_RELEASE_OPT_LEVEL: 0 @@ -125,7 +125,7 @@ jobs: timeout-minutes: 5 needs: changes # Run this job even if `changes` job is skipped - if: ${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }} + if: "${{ !failure() && !cancelled() && needs.changes.outputs.website_only != 'true' && needs.changes.outputs.k8s != 'false' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }}" outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: @@ -182,7 +182,7 @@ jobs: - build-x86_64-unknown-linux-gnu - compute-k8s-test-plan # because `changes` job might be skipped - if: always() && needs.build-x86_64-unknown-linux-gnu.result == 'success' && needs.compute-k8s-test-plan.result == 'success' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) + if: "${{ always() && needs.build-x86_64-unknown-linux-gnu.result == 'success' && needs.compute-k8s-test-plan.result == 'success' && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }}" strategy: matrix: ${{ fromJson(needs.compute-k8s-test-plan.outputs.matrix) }} fail-fast: false @@ -243,7 +243,7 @@ jobs: - build-x86_64-unknown-linux-gnu - compute-k8s-test-plan - test-e2e-kubernetes - if: always() && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) + if: "${{ always() && (github.event_name != 'pull_request' || !contains(github.event.pull_request.labels.*.name, 'ci: assume ec')) }}" env: FAILED: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }} steps: diff --git a/changelog.d/ci_assume_ec_label.enhancement.md b/changelog.d/ci_assume_ec_label.enhancement.md deleted file mode 100644 index 73aa5f8e781b5..0000000000000 --- a/changelog.d/ci_assume_ec_label.enhancement.md +++ /dev/null @@ -1,3 +0,0 @@ -Allow skipping integration and E2E workflows by applying the `ci: assume ec` label to pull requests. - -authors: openai