Skip to content

[backport-tenable_io-3.10] Sync CI configuration with main branch - #21173

Merged
mrodm merged 1 commit into
elastic:backport-tenable_io-3.10from
mrodm:sync-ci-configuration-tenable_io-3.10
Sep 11, 2026
Merged

mrodm merged 1 commit into
elastic:backport-tenable_io-3.10from
mrodm:sync-ci-configuration-tenable_io-3.10

Conversation

@mrodm

@mrodm mrodm commented Sep 10, 2026 •

Copy link
Copy Markdown
Collaborator

TL;DR

Syncs .buildkite and .github CI configuration from main to the
backport-tenable_io-3.10 backport branch.

This brings automated backport workflows, new CI scripts, Go tooling, and
GitHub Actions that only work when they are present on the target branch itself.

Proposed commit message

Sync CI configuration with main branch for backport-tenable_io-3.10.

Keep CI pipelines, GitHub Actions, and tooling consistent between active backport
branches and `main`, so that automated backport workflows and tooling improvements
land on all supported branches.

WHY:
GitHub Actions resolves workflow files from the branch where the event occurs,
not from `main`. Backport-branch workflows (changelog sync, post-backport
checklist, owner checks, auto-backport) must be present on the backport branch
itself to fire correctly.


Author's Checklist

  • CI configuration files have been synced verbatim from main.

Related issues


This PR was generated with the assistance of Claude (claude-sonnet-4-6).
🤖 Generated with Claude Code

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

@mrodm
mrodm marked this pull request as ready for review September 10, 2026 14:43
@mrodm
mrodm requested a review from a team as a code owner September 10, 2026 14:43
Copilot AI lite review requested due to automatic review settings September 10, 2026 14:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

One or more issues must be addressed before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR synchronizes CI, GitHub Actions, tooling, and backport automation from main to the backport branch.

Changes:

  • Adds the standalone backport CLI and related changelog, checklist, ownership, and package-detection logic.
  • Updates Buildkite/GitHub workflows and dependencies.
  • Removes legacy test-reporting and backport implementations.
File summaries
File Description
tools.go Updated as part of this pull request.
go.mod Updated as part of this pull request.
dev/testsreporter/xunit.go Updated as part of this pull request.
dev/testsreporter/testdata/sql_system_1718901944954979316.xml Updated as part of this pull request.
dev/testsreporter/testdata/nats_1718676056733968706.xml Updated as part of this pull request.
dev/testsreporter/testdata/fortinet_fortigate_1718675058322143368.xml Updated as part of this pull request.
dev/testsreporter/testdata/fortinet_fortigate_1718675052813006253.xml Updated as part of this pull request.
dev/testsreporter/testdata/elastic_package_registry_1718676502022628094.xml Updated as part of this pull request.
dev/testsreporter/testdata/CODEOWNERS-default-tests Updated as part of this pull request.
dev/testsreporter/testdata/cisco_umbrella_1718676502022628093.xml Updated as part of this pull request.
dev/testsreporter/testdata/cisco_umbrella_1718675095255991383.xml Updated as part of this pull request.
dev/testsreporter/testdata/cisco_umbrella_1718675095080627646.xml Updated as part of this pull request.
dev/testsreporter/testdata/cisco_umbrella_1718675092421310216.xml Updated as part of this pull request.
dev/testsreporter/packageerror.go Updated as part of this pull request.
dev/testsreporter/packageerror_test.go Updated as part of this pull request.
dev/testsreporter/githubissue.go Updated as part of this pull request.
dev/testsreporter/github.go Updated as part of this pull request.
dev/testsreporter/format.go Updated as part of this pull request.
dev/testsreporter/errorlinks.go Updated as part of this pull request.
dev/testsreporter/dataerror.go Updated as part of this pull request.
dev/testsreporter/builderror.go Updated as part of this pull request.
dev/testsreporter/builderror_test.go Updated as part of this pull request.
dev/testsreporter/_static/summary.tmpl Updated as part of this pull request.
dev/testsreporter/_static/description.tmpl Updated as part of this pull request.
dev/scripts/README.md Updated as part of this pull request.
dev/scripts/get_release_commit.sh Updated as part of this pull request.
dev/scripts/backport_apply.sh Updated as part of this pull request.
dev/packagenames/testdata/no_duplicates/p2/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/no_duplicates/p1/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/no_duplicates/technology/p2/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/no_duplicates/technology/p1/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/no_duplicates/p3/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/duplicates/technology/p2/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/duplicates/technology/p1/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/nested/duplicates/p3/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/invalid_manifests/p2/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/invalid_manifests/p1/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/duplicates/p2/manifest.yml Updated as part of this pull request.
dev/packagenames/testdata/duplicates/p1/manifest.yml Updated as part of this pull request.
dev/packagenames/packagenames.go Updated as part of this pull request.
dev/packagenames/packagenames_test.go Updated as part of this pull request.
dev/import-beats/README.md Updated as part of this pull request.
dev/gitutil/git.go Updated as part of this pull request.
dev/codeowners/testdata/test_packages/package_1/manifest.yml Updated as part of this pull request.
dev/codeowners/testdata/nested_packages/package_top/manifest.yml Updated as part of this pull request.
dev/codeowners/testdata/nested_packages/category/package_nested_2/manifest.yml Updated as part of this pull request.
dev/codeowners/testdata/nested_packages/category/package_nested_1/manifest.yml Updated as part of this pull request.
dev/codeowners/testdata/nested_packages/category/package_nested_1/data_stream/stream_2/.keep Updated as part of this pull request.
dev/codeowners/testdata/nested_packages/category/package_nested_1/data_stream/stream_1/.keep Updated as part of this pull request.
dev/codeowners/testdata/devexp/manifest.yml Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-owners-trailing-slash Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-nested-valid Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-nested-streams-valid Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-nested-streams-missing-owners Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-nested-missing-owner Updated as part of this pull request.
dev/codeowners/testdata/CODEOWNERS-nested-category-owner Updated as part of this pull request.
dev/citools/subscription.go Updated as part of this pull request.
dev/citools/packages.go Updated as part of this pull request.
dev/citools/packagemanifest.go Updated as part of this pull request.
dev/citools/logsdb.go Updated as part of this pull request.
dev/citools/logsdb_test.go Updated as part of this pull request.
dev/citools/kibana.go Updated as part of this pull request.
dev/citools/kibana_test.go Updated as part of this pull request.
dev/citools/gomod.go Updated as part of this pull request.
dev/citools/gomod_test.go Updated as part of this pull request.
cmd/backport/tools.go Updated as part of this pull request.
cmd/backport/magefile.go Updated as part of this pull request.
cmd/backport/go.mod Updated as part of this pull request.
cmd/backport/gitutil/git.go Updated as part of this pull request.
cmd/backport/citools/packages.go Updated as part of this pull request.
cmd/backport/citools/packagemanifest.go Updated as part of this pull request.
cmd/backport/backports/packages/detect.go Updated as part of this pull request.
cmd/backport/backports/owners/check.go Updated as part of this pull request.
cmd/backport/backports/owners/check_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/update.go Updated as part of this pull request.
cmd/backport/backports/changelog/update_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/sync_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/resolve.go Updated as part of this pull request.
cmd/backport/backports/changelog/resolve_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/insert.go Updated as part of this pull request.
cmd/backport/backports/changelog/insert_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/extract.go Updated as part of this pull request.
cmd/backport/backports/changelog/extract_test.go Updated as part of this pull request.
cmd/backport/backports/changelog/comment.go Updated as part of this pull request.
cmd/backport/.go-version Updated as part of this pull request.
.gitignore Updated as part of this pull request.
.github/workflows/validate-yaml-dashboards.requirements.txt Updated as part of this pull request.
.github/workflows/validate-package-docs.yml Updated as part of this pull request.
.github/workflows/vale-report.yml Updated as part of this pull request.
.github/workflows/vale-lint.yml Updated as part of this pull request.
.github/workflows/updatecli/updatecli.d/sync-packages-to-bug-issue-template.yml Updated as part of this pull request.
.github/workflows/updatecli/updatecli.d/bump-latest-8x-snapshot-version.yml Updated as part of this pull request.
.github/workflows/trigger-text-auditor.yml Updated as part of this pull request.
.github/workflows/trigger-stale-issues.yml Updated as part of this pull request.
.github/workflows/trigger-pr-review.yml Updated as part of this pull request.
.github/workflows/trigger-pr-actions-detective.yml Updated as part of this pull request.
.github/workflows/trigger-package-tests-security-ml.yml Updated as part of this pull request.
.github/workflows/trigger-newbie-contributor-patrol.yml Updated as part of this pull request.
.github/workflows/trigger-mention-in-pr.yml Updated as part of this pull request.
.github/workflows/trigger-mention-in-issue.yml Updated as part of this pull request.
.github/workflows/trigger-issue-triage.yml Updated as part of this pull request.
.github/workflows/trigger-duplicate-issue-detector.yml Updated as part of this pull request.
.github/workflows/trigger-docs-patrol.yml Updated as part of this pull request.
.github/workflows/trigger-bug-hunter.yml Updated as part of this pull request.
.github/workflows/trigger-breaking-change-detector.yml Updated as part of this pull request.
.github/workflows/sweep-ingest-pipeline-safety.yml Updated as part of this pull request.
.github/workflows/sweep-httpjson-pagination.yml Updated as part of this pull request.
.github/workflows/sweep-field-mapping-conflicts.yml Updated as part of this pull request.
.github/workflows/sweep-dashboard-data-scope.yml Updated as part of this pull request.
.github/workflows/requires-update.yml Updated as part of this pull request.
.github/workflows/pr-buildkite-detective.yml Updated as part of this pull request.
.github/workflows/post-backport-checklist.yml Updated as part of this pull request.
.github/workflows/notify-package-docs-failure.yml Updated as part of this pull request.
.github/workflows/docs-preview-cleanup.yml Updated as part of this pull request.
.github/workflows/docs-deploy.yml Updated as part of this pull request.
.github/workflows/docs-build.yml Updated as part of this pull request.
.github/workflows/ci-comment.yml Updated as part of this pull request.
.github/workflows/catalog-info.yml Updated as part of this pull request.
.github/workflows/bump-elastic-stack-version.yml Updated as part of this pull request.
.github/workflows/backport-packages-detect.yml Updated as part of this pull request.
.github/actions/sync-backport-changelog/action.yml Updated as part of this pull request.
.buildkite/scripts/trigger_integrations_in_parallel.sh Updated as part of this pull request.
.buildkite/scripts/trigger_backport.sh Updated as part of this pull request.
.buildkite/scripts/test_one_package.sh Updated as part of this pull request.
.buildkite/scripts/test_integrations_with_serverless.sh Updated as part of this pull request.
.buildkite/scripts/test_helpers.sh Updated as part of this pull request.
.buildkite/scripts/test_check_backport_owners.sh Updated as part of this pull request.
.buildkite/scripts/run_dev_scripts_tests.sh Updated as part of this pull request.
.buildkite/scripts/run_buildkite_scripts_tests.sh Updated as part of this pull request.
.buildkite/scripts/requirements-ci-python-scripts.txt Updated as part of this pull request.
.buildkite/scripts/process_benchmarks.sh Updated as part of this pull request.
.buildkite/scripts/packages/security_detection_engine.sh Updated as part of this pull request.
.buildkite/scripts/packages/crowdstrike.sh Updated as part of this pull request.
.buildkite/scripts/notify_backport_pr.sh Updated as part of this pull request.
.buildkite/scripts/non_package_patterns.txt Updated as part of this pull request.
.buildkite/scripts/check_sources.sh Updated as part of this pull request.
.buildkite/scripts/check_changelog_versions_in_main.sh Updated as part of this pull request.
.buildkite/scripts/check_backports_inventory.sh Updated as part of this pull request.
.buildkite/scripts/check_backport_tool.sh Updated as part of this pull request.
.buildkite/scripts/build_packages.sh Updated as part of this pull request.
.buildkite/scripts/backport_branch_lib.sh Updated as part of this pull request.
.buildkite/pull-requests.json Updated as part of this pull request.
.buildkite/pipeline.serverless.yml Updated as part of this pull request.
.buildkite/pipeline.schedule-weekly.yml Updated as part of this pull request.
.buildkite/pipeline.schedule-daily.yml Updated as part of this pull request.
.buildkite/pipeline.publish.yml Updated as part of this pull request.
.buildkite/pipeline.backport.yml Updated as part of this pull request.
.buildkite/pipeline.backport-dispatch.yml Updated as part of this pull request.
.buildkite/hooks/pre-exit Updated as part of this pull request.
.buildkite/hooks/pre-command Updated as part of this pull request.
Review details

Suppressed comments (11)

.buildkite/scripts/backport_branch.sh:238

  • The backport sync copies requires-update.yml into the branch, but this deletion removes the RequiresUpdate Mage target that the workflow dispatches with mage RequiresUpdate. A manual run of that workflow on any synced backport branch will fail with an unknown target; keep the target and its dependencies, or exclude/disable this workflow for backport branches.
    .github/workflows/post-backport-checklist.yml:7
  • This copied workflow only runs after Backport — detect packages, while that workflow is restricted to pull requests targeting main. It therefore never fires for an auto-backport PR targeting backport-*, so syncing this file does not provide the branch-targeted post-backport automation described in the PR and related issue. Add the pull-request workflow for backport targets (or clarify that this is source-PR-only automation).
    .github/workflows/requires-update.yml:68
  • Generated backport branches remove magefile_daily_jobs.go (the file that defines RequiresUpdate) while this workflow is copied onto the branch. A manual dispatch against such a branch therefore fails at mage RequiresUpdate because the target is unavailable; either keep the target/dependencies or omit this main-only workflow when assembling backport branches.
    .github/workflows/sync-backport-changelog.yml:108
  • For a rebase-merged PR, mergeCommit.oid is the last rebased commit and parents[0] is only the preceding PR commit. This makes the retry range cover just the final commit, so changelog entries introduced by earlier commits are silently omitted. Resolve the full merged PR range (or all PR commits) instead of using the last commit's parent.
    .github/workflows/validate-yaml-dashboards.yml:172
  • For a nested package such as packages/technology/foo/_dev/shared/kibana, this extracts technology as the package name and compiles into packages/technology/kibana/dashboard instead of the nested package's dashboard directory. Derive the package directory from the path before /_dev/ so nested packages validate their own committed JSON.
    .github/workflows/validate-yaml-dashboards.yml:125
  • This step repeats the direct interpolation of the PR-controlled changed-file list into shell source. A crafted dashboard filename can execute shell substitutions before the loop runs; pass the list through env: and consume it with newline-safe iteration.
    .github/workflows/validate-yaml-dashboards.yml:161
  • unique_dirs is derived from PR-controlled paths and is interpolated into shell source here. A crafted directory name can execute shell substitutions, while space splitting corrupts valid paths; pass it through env: and iterate safely instead.
    cmd/backport/backports/apply/apply.go:840
  • The apply --json contract writes only JSON to stdout, but this owner-sync commit uses Git.Run, which forwards git's commit summary to stdout before runApply marshals the result. Consumers piping this output to jq will receive invalid JSON. Use the existing RunToStderr helper for this command.
    cmd/backport/backports/apply/apply.go:853
  • This comment also claims go.mod pins Go 1.22, while cmd/backport/go.mod declares Go 1.26.0. Please correct the version reference so the compatibility guidance matches the module being built.
    cmd/backport/backports/checklist/checklist.go:105
  • This comment says the backport module pins Go 1.22, but cmd/backport/go.mod in this change declares Go 1.26.0. The stale version claim can mislead maintainers about the toolchain compatibility rationale; update or remove it.
    cmd/backport/main.go:249
  • The package-detect workflow passes the PR base tip and head SHA here, so before..after compares the two trees and includes changes that landed on the base branch after the PR was opened. That can add unrelated packages to the checklist/owner check. Use the three-dot PR range (as the changelog code already does) so only changes from the merge base to the head are detected.
  • Files reviewed: 174/196 changed files
  • Comments generated: 10
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +248 to +251
echo "--- Copying .github/actions from $SOURCE_BRANCH..."
git rm -r --cached ".github/actions" 2>/dev/null || true
git checkout "$SOURCE_BRANCH" -- ".github/actions"
git add .github/actions
PR_AUTHOR: ${{ steps.resolve.outputs.pr_author }}
COMMENT_ID: ${{ steps.find-comment.outputs.comment_id }}
BODY_FILE: ${{ steps.find-comment.outputs.body_file }}
run: .github/scripts/backport/process-checked-branches.sh
Comment on lines +115 to +119
run: |
PACKAGES="${{ steps.analyze.outputs.packages_needing_update }}"
CHANGE_TYPE="${{ steps.analyze.outputs.change_type }}"
VERSION_BUMP="${{ steps.analyze.outputs.version_bump }}"
CHANGELOG_DESC="${{ steps.analyze.outputs.changelog_desc }}"
- completed

permissions:
pull-requests: write
run: |
set +e # Don't exit on error, we'll handle it manually

CHANGED_FILES="${{ steps.find-changed.outputs.changed_files }}"
Comment on lines +941 to +943
if branchRE.MatchString(target) {
return target, nil
}
Comment thread cmd/backport/magefile.go

// Format runs goimports and ensures Elastic license headers are present.
func Format() {
mg.Deps(addLicenseHeaders, goImports)
Comment thread .buildkite/pipeline.yml
- label: ":busts_in_silhouette: Check backport package owners"
key: "check-backport-owners"
command: ".buildkite/scripts/check_backport_owners.sh"
soft_fail: true
}

// branchRE matches valid backport branch names (mirrors cmd/backport/backports/inventory.go).
var branchRE = regexp.MustCompile(`^backport-[a-zA-Z0-9_]+-[0-9][0-9.]*x?$`)
git log --oneline \
-G "^version: ['\"]?${ESCAPED_VERSION}['\"]?[[:space:]]*$" \
-- "$MANIFEST" \
| awk 'NF {print $1}' | sort -u
@mrodm
mrodm merged commit cdb15df into elastic:backport-tenable_io-3.10 Sep 11, 2026
10 of 11 checks passed
@mrodm
mrodm deleted the sync-ci-configuration-tenable_io-3.10 branch September 11, 2026 08:37
@github-actions

Copy link
Copy Markdown
Contributor

Changelog sync skipped — all changelog versions are already present on main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants