This repository has been archived by the owner on Aug 18, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 7
Symphony v2 Draft Proposal
Ben Coleman edited this page Jun 9, 2021
·
9 revisions
Current working draft, this up for discussion and not fixed. This will be amended pending further input
As of 9th June this has stabilised, the changes are as follows:
- Added toplevel
symphonyVersion
field which is checked for by Rover v2 - Paths are relative to where rover is being executed NOT the location of the config file
- landingZonePath must not end with "caf_solution" or "caf_launchpad". This is appended internally by Rover v2
-
tfState
key must not end with ".tfstate". This is appended internally by Rover v2 -
tfState
key is optional, when not supplied the name of the stack is used - Added toplevel
workspace
key -
type
field is ignored
Suggestion: Use YAML aliases to prevent repetition e.g. with the landingzone path
Below is a sample YAML config, it's provided as an example only. For a working config to use as a reference please see the samples/ref-app direectory
symphonyVersion: 2
# The CAF environment name
environment: benc
# We can use YAML aliases to save repetition
aliases: &lzPath samples/ref-app/caf_modules/landingzones
# It is critical that this matches the container names in launchpad storage_accounts.tfvars
workspace: tfstate
levels:
- level: level0
launchpad: true
type: platform
stacks:
- stack: lp
landingZonePath: *lzPath
configurationPath: ./local/configs/level0/launchpad
- level: level1
type: platform # What is this key for?
stacks:
- stack: web
landingZonePath: *lzPath
configurationPath: ./local/configs/level1/web
tfState: web-state
- stack: test
landingZonePath: *lzPath
configurationPath: ./local/configs/level1/test
# tfState key is optional in v2, and the stack name is used instead