Skip to content

Add AWS tooling smoke harness - #1

Draft
dhempler wants to merge 2 commits into
codex/aws-self-hosting-installer-prfrom
codex/aws-tooling-smoke-harness
Draft

Add AWS tooling smoke harness#1
dhempler wants to merge 2 commits into
codex/aws-self-hosting-installer-prfrom
codex/aws-tooling-smoke-harness

Conversation

@dhempler

Copy link
Copy Markdown
Owner

Summary

  • add the smoke-test harness for the AWS self-hosting tooling introduced in Add guided AWS self-hosting installer ChurchApps/B1Admin#432: scripts/smoke-aws-tooling.mjs plus the 40 example output fixtures it validates against
  • split out of the installer PR to keep that PR's review surface focused on the product; this branch was built on the installer branch's exact code state and the suite passes against it

What the suite covers

  • syntax-checks every deploy/installer script and parses every CloudFormation template and sample JSON
  • runs hundreds of sequential scenarios against the real scripts with fake aws/gh binaries prepended to PATH: argument validation, output contracts against the example fixtures, failure-path messaging, and the guided installer's full state-machine walkthrough (IAM apply, private-repo sync, the post-adopt redeploy loop)

Testing

env AWS_ACCESS_KEY_ID=SMOKEINVALID AWS_SECRET_ACCESS_KEY=x AWS_SESSION_TOKEN=x \
  AWS_CONFIG_FILE=/dev/null AWS_SHARED_CREDENTIALS_FILE=/dev/null yarn smoke:aws-tooling

Passes clean (AWS tooling smoke checks passed., exit 0). Always run it with invalid AWS credentials as above: a few scenarios invoke the real aws CLI expecting failure, and on a machine with live credentials they would otherwise touch a real account.

Merge order

Stacked on the installer branch. Review/merge after the installer PR; if the installer PR is merged into ChurchApps first, this branch can be retargeted or reopened against ChurchApps/B1Admin main.

dhempler and others added 2 commits August 13, 2026 14:49
The smoke suite (scripts/smoke-aws-tooling.mjs) and the 40 example
output fixtures it validates against, split out of the installer PR to
keep its review surface focused. Exercises every deploy/installer
script against stubbed aws/gh binaries; run it with invalid AWS
credentials in the environment so its few live-CLI scenarios cannot
touch a real account:

  env AWS_ACCESS_KEY_ID=SMOKEINVALID AWS_SECRET_ACCESS_KEY=x \
    AWS_SESSION_TOKEN=x AWS_CONFIG_FILE=/dev/null \
    AWS_SHARED_CREDENTIALS_FILE=/dev/null yarn smoke:aws-tooling

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The validator now defaults to the data-api runner, which requires a
B1Admin typescript package and DatabaseSecretArn in the outputs file;
the scenario stubs typescript (mirroring the vite stub) and provides
data-api-shaped outputs instead of the removed direct-runner inputs.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@dhempler
dhempler force-pushed the codex/aws-self-hosting-installer-pr branch from 3c0741c to a1d5e01 Compare August 13, 2026 19:49
@dhempler
dhempler force-pushed the codex/aws-tooling-smoke-harness branch from e453594 to 2103787 Compare August 13, 2026 19:49
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.

1 participant