Skip to content

chore: migrate semaphore pipelines to ARM (Graviton)#512

Merged
Yashprime1 merged 1 commit intomasterfrom
update-agent-to-arm
Feb 12, 2026
Merged

chore: migrate semaphore pipelines to ARM (Graviton)#512
Yashprime1 merged 1 commit intomasterfrom
update-agent-to-arm

Conversation

@Yashprime1
Copy link
Copy Markdown
Collaborator

@Yashprime1 Yashprime1 commented Feb 9, 2026

Summary

Migrate Semaphore CI pipelines to use ARM-based (Graviton) agents and ARM binaries.

Agent Type Changes

Old (x86) New (ARM/Graviton)
s1-agent-c5-12xlarge s1-agent-c6g-12xlarge
s1-agent-c5-9xlarge s1-agent-c6g-8xlarge
s1-agent-c5-4xlarge s1-agent-c6g-4xlarge
s1-agent-c5-xlarge s1-agent-c6g-xlarge
s1-agent-c5-large s1-agent-c6g-large
s1-agent-t2-micro s1-agent-t4g-micro

Binary/Tool Changes

Tool Old (x86) New (ARM)
uv uv-x86_64-unknown-linux-gnu uv-aarch64-unknown-linux-gnu
Go 1.19.3 go1.19.3.linux-amd64 go1.19.3.linux-arm64
Node.js 20.x linux-x64 linux-arm64
Amazon Corretto 17 linux-x64 linux-aarch64
OpenJDK 17 openjdk-amd64 openjdk-arm64
Packer linux_amd64 linux_arm64
Goss linux-amd64 linux-arm64

Note

Medium Risk
CI/deploy infrastructure changes only, but switching agent architecture and uv binaries can break builds/deploys if any tooling or scripts assume x86_64.

Overview
Migrates Semaphore build and deploy pipelines to ARM/Graviton agents by switching machine types (t2t4g, c5c6g) across build, staging deploy, and production deploy configs.

Updates staging/production deploy jobs to download and use the ARM uv tarball (uv-aarch64-unknown-linux-gnu) instead of the x86_64 build while keeping the same S3 upload and CloudFront invalidation steps.

Written by Cursor Bugbot for commit dbba105. This will update automatically on new commits. Configure here.

Summary by CodeRabbit

  • Chores
    • Updated CI/deployment infrastructure configurations across production and staging environments.
    • Optimized build agent machine types to enhance system performance and efficiency.
    • Modernized system architecture settings across deployment pipelines for improved reliability.

SNE-51978

- Update agent types: c5 → c6g (Graviton), t2 → t4g (Graviton)
- Update uv binary: x86_64 → aarch64
- Update Go binary: linux-amd64 → linux-arm64
- Update Node.js binaries: linux-x64 → linux-arm64
- Update Amazon Corretto JDK path: linux-x64 → linux-aarch64
- Update other arch-specific tools to ARM equivalents
@Yashprime1 Yashprime1 requested a review from a team as a code owner February 9, 2026 09:45
@francispereira
Copy link
Copy Markdown

francispereira commented Feb 9, 2026

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Feb 9, 2026

📝 Walkthrough

Walkthrough

Updates Semaphore CI configuration files to change agent machine types from x86_64-based agents to newer ARM-based agents (s1-agent-t4g-micro and s1-agent-c6g-large), and replaces the UV toolchain architecture from x86_64-unknown-linux-gnu to aarch64-unknown-linux-gnu across deployment and build configurations.

Changes

Cohort / File(s) Summary
Production Deployment Configuration
.semaphore/production-deploy.yml
Updated agent machine type from s1-agent-c5-large to s1-agent-c6g-large (both top-level and secrets section) and migrated UV toolchain from x86_64 to aarch64 architecture with corresponding download URL and PATH adjustments.
Staging Deployment Configuration
.semaphore/staging-deploy.yml
Updated agent machine type from s1-agent-t2-micro to s1-agent-t4g-micro for staging, and changed production-credential agent from s1-agent-c5-large to s1-agent-c6g-large with UV toolchain migration from x86_64 to aarch64.
Main Build Configuration
.semaphore/semaphore.yml
Updated agent machine type from s1-agent-t2-micro to s1-agent-t4g-micro for the primary build pipeline.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

Suggested reviewers

  • singhkunal2050

Poem

🐰 From x86 to ARM, the agents run faster,
New machines await, no deployment disaster,
UVs on aarch64, dancing with glee,
CI pipelines shimmer, efficient and spry! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description provides clear context about the infrastructure migration with detailed agent type and binary changes, but does not follow the repository's required template structure. Reorganize the description to match the template: add a 'Changes' section with Jira reference, 'Changes to Public Facing API' section, 'How Has This Been Tested?' section, and complete the checklist items.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'chore: migrate semaphore pipelines to ARM (Graviton)' is clear, specific, and directly summarizes the main change in the changeset—migrating CI pipelines from x86 to ARM architecture.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch update-agent-to-arm

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Yashprime1 Yashprime1 merged commit e68a27a into master Feb 12, 2026
15 of 21 checks passed
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