Skip to content

[MOD-18346] Tag EC2 CI runners and use GitHub-hosted ARM tests - #1032

Merged
GuyAv46 merged 3 commits into
mainfrom
fix/mod-18346-ec2-tags
Sep 8, 2026
Merged

[MOD-18346] Tag EC2 CI runners and use GitHub-hosted ARM tests#1032
GuyAv46 merged 3 commits into
mainfrom
fix/mod-18346-ec2-tags

Conversation

@GuyAv46

@GuyAv46 GuyAv46 commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

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 with github.actor passed through an explicit environment variable (preserving the original actor on reruns). Normalize owner: 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-arm runner, 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.yml

Validation: 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-Avguy_av; dependabot[bot]dependabot_bot. Live EC2 validation remains for CI.

Mark if applicable

  • This PR introduces API changes
  • This PR introduces serialization changes

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 team and owner tags at launch via aws-resource-tags on machulav/ec2-github-runner, so automated shutdown no longer stops instances mid-job. A Prepare EC2 owner tag step normalizes github.actor (lowercase, safe characters, length cap) and fails the workflow if owner would be empty.

ARM CI no longer provisions or tears down EC2 in arm.yml; unit tests run on the GitHub-hosted ubuntu-22.04-arm label through task-unit-test.yml. Merge-queue and nightly workflows drop secrets: inherit on the arm job 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.

alonre24
alonre24 previously approved these changes Sep 7, 2026
Comment thread .github/workflows/arm.yml Outdated
@GuyAv46 GuyAv46 changed the title [MOD-18346] Tag EC2 CI runners to prevent automatic shutdowns [MOD-18346] Tag EC2 CI runners and use GitHub-hosted ARM tests Sep 7, 2026
@GuyAv46
GuyAv46 requested a review from alonre24 September 7, 2026 13:05
@GuyAv46
GuyAv46 enabled auto-merge September 8, 2026 05:22
@codecov

codecov Bot commented Sep 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.40%. Comparing base (227e305) to head (580da96).
⚠️ Report is 1 commits behind head on main.

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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@GuyAv46
GuyAv46 disabled auto-merge September 8, 2026 06:03
@GuyAv46
GuyAv46 merged commit 4941539 into main Sep 8, 2026
23 of 26 checks passed
@GuyAv46
GuyAv46 deleted the fix/mod-18346-ec2-tags branch September 8, 2026 06:03
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Backport failed for 0.6, because it was unable to cherry-pick the commit(s).

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

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Backport failed for 0.7, because it was unable to cherry-pick the commit(s).

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

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Backport failed for 0.8, because it was unable to cherry-pick the commit(s).

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

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Backport failed for 8.2, because it was unable to cherry-pick the commit(s).

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

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Git push to origin failed for 8.4 with exitcode 1

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants