[MOD-18346] Tag EC2 CI runners and use GitHub-hosted ARM tests - #1032
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1032 +/- ##
==========================================
- Coverage 97.43% 97.40% -0.03%
==========================================
Files 141 141
Lines 8686 8686
==========================================
- Hits 8463 8461 -2
- Misses 223 225 +2 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin 0.6
git worktree add -d .worktree/backport-1032-to-0.6 origin/0.6
cd .worktree/backport-1032-to-0.6
git switch --create backport-1032-to-0.6
git cherry-pick -x 4941539bb9e06b3cfc992643704526d0c22c2759 |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin 0.7
git worktree add -d .worktree/backport-1032-to-0.7 origin/0.7
cd .worktree/backport-1032-to-0.7
git switch --create backport-1032-to-0.7
git cherry-pick -x 4941539bb9e06b3cfc992643704526d0c22c2759 |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin 0.8
git worktree add -d .worktree/backport-1032-to-0.8 origin/0.8
cd .worktree/backport-1032-to-0.8
git switch --create backport-1032-to-0.8
git cherry-pick -x 4941539bb9e06b3cfc992643704526d0c22c2759 |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin 8.2
git worktree add -d .worktree/backport-1032-to-8.2 origin/8.2
cd .worktree/backport-1032-to-8.2
git switch --create backport-1032-to-8.2
git cherry-pick -x 4941539bb9e06b3cfc992643704526d0c22c2759 |
|
Git push to origin failed for 8.4 with exitcode 1 |
Describe the changes in the pull request
EC2 CI runners were launched without the required ownership tags and were stopped through the AWS API while coverage and sanitizer tests were still running. Add the tags at instance creation in the coverage and benchmark workflows to address the automatic-shutdown CI blocker.
Set
team=ai_and_search. Use a commented Python step withgithub.actorpassed through an explicit environment variable (preserving the original actor on reruns). Normalizeowner: lowercase the handle, replace characters outside[a-z0-9_]with underscores, collapse repeated underscores, trim leading/trailing underscores, and limit the value to 63 characters. Fail before launching an instance if normalization produces an empty owner.Which issues this PR fixes
Fixes MOD-18346.
ARM unit tests now use the GitHub-hosted
ubuntu-22.04-armrunner, preserving Ubuntu 22.04 while removing EC2 provisioning and cleanup. The nightly and merge-queue callers no longer pass secrets to the ARM workflow.Main objects this PR modified
.github/workflows/coverage.yml.github/workflows/benchmark-runner.yml.github/workflows/arm.yml.github/workflows/event-nightly.yml.github/workflows/event-merge-to-queue.ymlValidation: parsed all workflow YAML files, checked Python syntax and whitespace, and executed each normalization step against mixed-case/hyphenated handles, bot handles, repeated separators, non-ASCII input, and long input. Verified emitted tag JSON and failure on an empty normalized owner. Examples:
Guy-Av→guy_av;dependabot[bot]→dependabot_bot. Live EC2 validation remains for CI.Mark if applicable
Note
Low Risk
Changes are limited to GitHub Actions workflows (runner labels and EC2 tagging); no application code, auth, or data paths are affected.
Overview
EC2 coverage and benchmark runners now get
teamandownertags at launch viaaws-resource-tagsonmachulav/ec2-github-runner, so automated shutdown no longer stops instances mid-job. A Prepare EC2 owner tag step normalizesgithub.actor(lowercase, safe characters, length cap) and fails the workflow ifownerwould be empty.ARM CI no longer provisions or tears down EC2 in
arm.yml; unit tests run on the GitHub-hostedubuntu-22.04-armlabel throughtask-unit-test.yml. Merge-queue and nightly workflows dropsecrets: inheriton thearmjob because AWS credentials are no longer needed there.Reviewed by Cursor Bugbot for commit 580da96. Bugbot is set up for automated code reviews on this repo. Configure here.