Skip to content

feat(lago): add api-arm64 subchart for Graviton - #239

Merged
koikonom merged 1 commit into
lago-v2from
inf-379_api_arm64_alias
Aug 31, 2026
Merged

feat(lago): add api-arm64 subchart for Graviton#239
koikonom merged 1 commit into
lago-v2from
inf-379_api_arm64_alias

Conversation

@koikonom

Copy link
Copy Markdown
Collaborator

What

Adds an api-arm64 subchart to charts/lago for the Graviton (arm64)
API migration pilot (INF-379). It mirrors the worker-arm64 alias from
INF-375.

  • New lago-rails alias api-arm64, gated by global.arm64.api.enabled
    (default false).
  • Merges api's shape via a YAML anchor. Overrides only
    nameOverride: lago-api-arm64, replicaCount: 1, and the arm64
    nodeSelector + toleration.
  • It keeps its own Service, so the pilot can be health-checked directly.

Breaking change

The worker gate global.arm64.enabled is renamed to
global.arm64.worker.enabled. The worker and API migrations now phase
independently. Any consumer of the old flag must move to the new name.
The only current consumer is dev-us-1, updated in the paired lago-deploy
PR.

Verification

  • helm unittest charts/lago — 57 tests pass (new api_arm64_test.yaml;
    worker_arm64_test.yaml updated to the new gate name).
  • helm template: both gates off by default render zero arm64 resources.
    The old global.arm64.enabled flag no longer triggers worker-arm64.

Notes

Chart versions are not bumped here. release.sh bumps them when the
release is cut (→ 0.12.0). The lago-deploy pin waits for that release.

🤖 Generated with Claude Code

INF-379 needs one API replica on arm64 nodes, side by side with the
amd64 api, for a pre-flight comparison before the staging-eu pilot. A
single Deployment cannot split its replicas across two node
architectures, so this adds a second one.

api-arm64 is a new lago-rails alias gated by global.arm64.api.enabled
(default false). Its values merge api's defaults through a YAML anchor
and override only what differs: release name, replicaCount 1, and the
nodeSelector and toleration that pin it to the arm64 Karpenter nodepool.

The worker gate global.arm64.enabled is renamed to
global.arm64.worker.enabled, so the worker and API migrations can phase
separately. This is a breaking rename for any consumer of the old flag.
The dev-us-1 values move to the new names in lago-deploy.

Chart.lock was regenerated via helm dependency update. Chart versions
are not bumped here. release.sh bumps every Chart.yaml when the release
is cut.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@koikonom
koikonom merged commit 5f271cc into lago-v2 Aug 31, 2026
3 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.

2 participants