[Sprint 2] Add sandbox config template + create-sandbox script - #72
Open
thatlkat wants to merge 1 commit into
Open
[Sprint 2] Add sandbox config template + create-sandbox script#72thatlkat wants to merge 1 commit into
thatlkat wants to merge 1 commit into
Conversation
Adds two files on top of the civiform-deploy fork:
sandbox_civiform_config.sh.template
- Template for per-sandbox civiform_config.sh files
- Uses FAKE_IDP auth (no real OIDC/ADFS needed for demo sandboxes)
- Wildcard SSL cert *.sandbox.civiform.dev (pre-provisioned, shared)
- STAGING_DISABLE_DEMO_MODE_LOGINS=false (enables 1-click role switcher)
- SHOW_NOT_PRODUCTION_BANNER_ENABLED=true
- City branding via WHITELABEL_CIVIC_ENTITY_SHORT/LONG_NAME
- All notifications → civiform-sandbox@exygy.com
bin/create-sandbox
- Generates configs/sandbox-{slug}.sh from template via sed substitution
- Validates required args + slug format
- Calls bin/setup --config=configs/sandbox-{slug}.sh
- Called by EcsFargateSandboxService (Sprint 2) or manually for testing
configs/sandbox-*.sh is gitignored (contains generated secrets).
configs/.gitkeep tracks the directory.
Usage:
bin/create-sandbox \
--city-short='Burlington' \
--city-full='Burlington, Vermont' \
--slug='burlington-vt' \
--version='v1.55.0' \
--ssl-arn='arn:aws:acm:...' \
--account-id='123456789012'
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds two files on top of the
civiform-deployfork for the CiviForm Demo Sandbox provisioner.sandbox_civiform_config.sh.templateTemplate for per-sandbox
civiform_config.shfiles. Key sandbox-specific decisions baked in:STAGING_DISABLE_DEMO_MODE_LOGINS=false) — no real OIDC/ADFS needed{slug}.sandbox.civiform.dev*.sandbox.civiform.dev(pre-provisioned once, shared — ARN passed in at create time)SHOW_NOT_PRODUCTION_BANNER_ENABLED=trueWHITELABEL_CIVIC_ENTITY_SHORT/LONG_NAMEset per sandboxciviform-sandbox@exygy.com(not real city addresses)bin/create-sandboxScript that fills in the template placeholders via
sedand callsbin/setup.This is what
EcsFargateSandboxServicewill call at runtime (Sprint 2). Can also be run manually for testing.Generated configs go to
configs/sandbox-{slug}.sh— gitignored.Questions for Rocky + Sal
dev-services@exygy.comCloudflare access to add DNS records for*.sandbox.civiform.dev. Sal — can you get invited?*.sandbox.civiform.devas a wildcard (one cert, all sandboxes) or per-sandbox like the standard flow? Wildcard seems right for us.--account-id?civiform-staging-deployhas forking disabled so I forkedciviform-deployinstead — does this look like the right base? Rocky, LGTM on structure?Repo
thatlkat/civiform-deploy-sandbox→ transfer tociviformorg once Rocky approves.