Skip to content

Add draft supabox manifest-diff workflow - #2447

Draft
brainrake wants to merge 6 commits into
developfrom
martonboros/manifest-diff-tooling
Draft

Add draft supabox manifest-diff workflow#2447
brainrake wants to merge 6 commits into
developfrom
martonboros/manifest-diff-tooling

Conversation

@brainrake

@brainrake brainrake commented Sep 12, 2026

Copy link
Copy Markdown
Collaborator

Manifest snapshot for the AMI, no supabox needed:

  • PR-side: rides the existing per-PR instance in testinfra/test_ami_nix.py (via testinfra-ami-build.yml), zero extra EC2 cost. Uploaded as a build artifact.
  • develop-side: ami-release-nix.yml (amd64 leg) launches a bare, temporary instance from the just-built AMI in us-east-1 (temp security group + EC2 Instance Connect, same pattern Packer itself already uses in this account/region), snapshots it, uploads to S3 as the latest.txt baseline.

Part of MPG-117, the "RFC: declarative system management".

Known caveat: the PR-side instance's cloud-init runs a full staging project bootstrap before the manifest captures state, which can introduce per-boot noise (generated certs/keys) unrelated to actual AMI drift. Accepted for now.

🤖 Generated with Claude Code

Calls supabox's tag:manifest suite (supabase/supabox#216) once per
ref, diffing the resulting rootfs. MPG-117 / RFC: declarative system
management.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Comment thread .github/workflows/supabox-manifest-diff.yml Fixed
brainrake and others added 5 commits September 12, 2026 15:19
e2e.yml's Blacksmith sticky disk is keyed by profiles+latest only
(supabase/supabox#214), not by repo pin, so same-flavor parallel
builds race on the same cache. Chain pr after baseline.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
e2e.yml's own concurrency group is per-run_id for workflow_call, so
two PRs' calls race independently on the same profile-keyed sticky
disk. A workflow-level group serializes across PRs instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Replaces the supabox-based approach: snapshot rides the same
session-scoped instance testinfra_ami_nix.py already boots per PR,
zero extra AMI builds. Develop-side S3 caching is blocked pending a
region/instance-profile decision for us-east-1 (see PR description).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Bare instance launch (temp SG + EC2 Instance Connect), same pattern
Packer already uses in this account/region. Uploads to S3 as the
develop baseline for the AMI manifest diff.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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