Skip to content

Commit 1b6cd31

Browse files
authored
feat: Add info for parameters in zero module definition (#41)
1 parent 3eb49a1 commit 1b6cd31

File tree

1 file changed

+37
-15
lines changed

1 file changed

+37
-15
lines changed

zero-module.yml

Lines changed: 37 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ requiredCredentials:
2323
parameters:
2424
- field: useExistingAwsProfile
2525
label: "Use credentials from an existing AWS profile?"
26+
info: "You can choose either a currently existing profile if you've already configured your AWS CLI, or manually enter a pair of AWS access keys."
2627
options:
2728
"yes": "Yes"
2829
"no": "No"
@@ -36,6 +37,7 @@ parameters:
3637
matchField: useExistingAwsProfile
3738
- field: accessKeyId
3839
label: AWS AccessKeyId
40+
info: "AWS access is controlled by a pair of keys tied to a user account.\nhttps://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html "
3941
envVarName: "AWS_ACCESS_KEY_ID"
4042
conditions:
4143
- action: KeyMatchCondition
@@ -44,54 +46,66 @@ parameters:
4446
- field: secretAccessKey
4547
envVarName: "AWS_SECRET_ACCESS_KEY"
4648
label: AWS SecretAccessKey
49+
info: "AWS access is controlled by a pair of keys tied to a user account.\nhttps://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html "
4750
conditions:
4851
- action: KeyMatchCondition
4952
whenValue: "no"
5053
matchField: useExistingAwsProfile
5154
- field: githubAccessToken
5255
label: "Github API Key to setup your repository and optionally CI/CD"
56+
info: "This API key will let us set up new repositories to check in your code.\nhttps://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token"
5357
envVarName: GITHUB_ACCESS_TOKEN
5458
- field: region
5559
label: Select AWS Region
60+
info: "This is the region your resources will be created in.\nMost regions have all the same features and functionality, but depending on your product you may need to choose a different region for data sovereignty reasons."
5661
options:
57-
"us-west-2": "us-west-2 (Oregon)"
58-
"us-east-1": "us-east-1 (N. Virginia)"
59-
"us-east-2": "us-east-2 (Ohio)"
62+
"us-east-1": "us-east-1 - US East (N. Virginia)"
63+
"us-east-2": "us-east-2 - US East (Ohio)"
64+
"us-west-2": "us-west-2 - US West (Oregon)"
65+
"ca-central-1": "ca-central-1 - Canada (Central)"
66+
"eu-west-1": "eu-west-1 - Europe (Ireland)"
67+
"ap-southeast-1": "ap-southeast-1 - Asia Pacific (Singapore)"
6068
- field: productionHostRoot
61-
label: Production Root Host Name (e.g. mydomain.com) - this must be the root of the chosen domain, not a subdomain.
69+
label: Production Root Host Name (e.g. mydomain.com)
70+
info: "This must be the root of the chosen domain, not a subdomain. You will also be prompted for the subdomains to use for your application."
6271
fieldValidation:
6372
type: regex
6473
value: '^([a-z0-9]+(-[a-z0-9]+)*\.{1})+[a-z]{2,}$'
6574
errorMessage: Invalid root domain name
6675
- field: productionFrontendSubdomain
6776
label: Production Frontend Host Name (e.g. app.)
77+
info: "The subdomain that will point to the static assets of your frontend hosted in Cloudfront."
6878
default: app.
6979
fieldValidation:
7080
type: regex
7181
value: '^([a-z0-9]+(-[a-z0-9]+)*\.)$'
72-
errorMessage: Invalid subdomain (cannot contain special chars & must end with a '.')
82+
errorMessage: Invalid subdomain (cannot contain special chars & must end with a '.')
7383
- field: productionBackendSubdomain
7484
label: Production Backend Host Name (e.g. api.)
85+
info: "The subdomain that will point to the API of your backend running in Kubernetes."
7586
default: api.
7687
fieldValidation:
7788
type: regex
7889
value: '^([a-z0-9]+(-[a-z0-9]+)*\.)$'
7990
errorMessage: Invalid subdomain (cannot contain special chars & must end with a '.')
8091
- field: stagingHostRoot
81-
label: Staging Root Host Name (e.g. mydomain-staging.com) - this must be the root of the chosen domain, not a subdomain.
92+
label: Staging Root Host Name (e.g. mydomain-staging.com)
93+
info: "This must be the root of the chosen domain, not a subdomain. You will also be prompted for the subdomains to use for your application.\nIt's recommended that you use different hostnames for staging and production instead of trying to have staging as a subdomain of your production domain."
8294
fieldValidation:
8395
type: regex
8496
value: '^([a-z0-9]+(-[a-z0-9]+)*\.{1})+[a-z]{2,}$'
8597
errorMessage: Invalid root domain name
8698
- field: stagingFrontendSubdomain
8799
label: Staging Frontend Host Name (e.g. app.)
100+
info: "The subdomain that will point to the static assets of your frontend hosted in Cloudfront."
88101
default: app.
89102
fieldValidation:
90103
type: regex
91104
value: '^([a-z0-9]+(-[a-z0-9]+)*\.)$'
92105
errorMessage: Invalid subdomain (cannot contain special chars & must end with a '.')
93106
- field: stagingBackendSubdomain
94107
label: Staging Backend Host Name (e.g. api.)
108+
info: "The subdomain that will point to the API of your backend running in Kubernetes."
95109
default: api.
96110
fieldValidation:
97111
type: regex
@@ -101,49 +115,57 @@ parameters:
101115
label: Random seed that will be shared between projects to come up with deterministic resource names
102116
execute: uuidgen | head -c 8
103117
- field: userAuth
104-
label: Enable user management using Kratos and authentication using the Oathkeeper access proxy?
118+
label: Enable user management and auth access proxy?
119+
info: "This will enable infrastructure and application code that uses Kratos for user management and the Oathkeeper access proxy.\nhttps://ory.sh"
105120
default: yes
106121
options:
107122
"yes": "Yes"
108123
"no": "No"
109124
- field: CIVendor
110-
label: Using either circleCI or github Actions to build / test your repository
125+
label: Which CI vendor would you like to use?
126+
info: "Build pipelines will be set up which will deploy your code to your infrastructure whenever PRs are merged to the main branch."
111127
default: "circleci"
112128
options:
113-
"circleci": "CircleCi"
129+
"circleci": "CircleCI"
114130
"github-actions": "Github Actions"
115131
- field: circleciApiKey
116-
label: "Circle CI API Key to setup your CI/CD for repositories"
132+
label: "CircleCI API Key"
133+
info: "This will let us configure your CircleCI account to automatically enable CI for these newly created projects.\nhttps://circleci.com/docs/2.0/managing-api-tokens/"
117134
envVarName: CIRCLECI_API_KEY
118135
conditions:
119136
- action: KeyMatchCondition
120137
matchField: CIVendor
121138
whenValue: "circleci"
122139
- field: billingEnabled
123-
label: "Provides a subscription example using stripe in backend and frontend repository"
140+
label: "Enable billing support?"
141+
info: "Provides a subscription example using stripe in the backend and frontend repositories."
124142
options:
125143
"yes": "Yes"
126144
"no": "No"
127145
- field: stagingStripePublicApiKey
128-
label: "Staging Stripe public api key, used for frontend repository (Recommended: using sandbox key while setting up)"
146+
label: "Staging Stripe public api key"
147+
info: "Used for the frontend repository. It's recommended to use a sandbox key while getting set up."
129148
conditions:
130149
- action: KeyMatchCondition
131150
matchField: billingEnabled
132151
whenValue: "yes"
133152
- field: stagingStripeSecretApiKey
134-
label: "Staging Stripe secret api key, used for backend repository (Recommended: using sandbox key while setting up)"
153+
label: "Staging Stripe secret api key"
154+
info: "Used for the backend repository. It's recommended to use a sandbox key while getting set up."
135155
conditions:
136156
- action: KeyMatchCondition
137157
matchField: billingEnabled
138158
whenValue: "yes"
139159
- field: productionStripePublicApiKey
140-
label: "Production Stripe public api key, used for frontend repository (Recommended: using sandbox key while setting up)"
160+
label: "Production Stripe public api key"
161+
info: "Used for the frontend repository. It's recommended to use a sandbox key while getting set up."
141162
conditions:
142163
- action: KeyMatchCondition
143164
matchField: billingEnabled
144165
whenValue: "yes"
145166
- field: productionStripeSecretApiKey
146-
label: "Production Stripe secret api key, used for backend repository (Recommended: using sandbox key while setting up)"
167+
label: "Production Stripe secret api key"
168+
info: "Used for the backend repository. It's recommended to use a sandbox key while getting set up."
147169
conditions:
148170
- action: KeyMatchCondition
149171
matchField: billingEnabled

0 commit comments

Comments
 (0)