You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* breaking: upgrade to zero 0.1.0
this change uses the new zero version which removed global credential
file, and moved all the credentials to the zero-project.yml
zero-project.yml becomes the single source of truth for create/apply
Other notable changes include:
- module parameters conditions
- module parameter custom type
- zeroVersion requirement: error out upon incompatible zero version
* fixup! breaking: upgrade to zero 0.1.0
Copy file name to clipboardExpand all lines: zero-module.yml
+66-18Lines changed: 66 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,7 @@
1
1
name: zero-aws-eks-stack
2
2
description: 'zero module for an AWS kubernetes stack on EKS'
3
3
author: 'Commit'
4
+
zeroVersion: '>= 0.1.0'
4
5
5
6
template:
6
7
strictMode: true
@@ -15,12 +16,42 @@ requiredCredentials:
15
16
- github
16
17
17
18
parameters:
19
+
- field: useExistingAwsProfile
20
+
label: "Use credentials from an existing AWS profile?"
21
+
options:
22
+
"yes": "Yes"
23
+
"no": "No"
24
+
omitFromProjectFile: yes
25
+
- field: profilePicker
26
+
omitFromProjectFile: yes
27
+
type: AWSProfilePicker
28
+
conditions:
29
+
- action: KeyMatchCondition
30
+
whenValue: "yes"
31
+
matchField: useExistingAwsProfile
32
+
- field: accessKeyId
33
+
label: AWS AccessKeyId
34
+
envVarName: "AWS_ACCESS_KEY_ID"
35
+
conditions:
36
+
- action: KeyMatchCondition
37
+
whenValue: "no"
38
+
matchField: useExistingAwsProfile
39
+
- field: secretAccessKey
40
+
envVarName: "AWS_SECRET_ACCESS_KEY"
41
+
label: AWS SecretAccessKey
42
+
conditions:
43
+
- action: KeyMatchCondition
44
+
whenValue: "no"
45
+
matchField: useExistingAwsProfile
46
+
- field: githubAccessToken
47
+
label: "Github API Key to setup your repository and optionally CI/CD"
48
+
envVarName: GITHUB_ACCESS_TOKEN
18
49
- field: region
19
50
label: Select AWS Region
20
51
options:
21
-
-"us-west-2"
22
-
-"us-east-1"
23
-
-"us-east-2"
52
+
"us-west-2":"us-west-2 (Oregon)"
53
+
"us-east-1":"us-east-1 (N. Virginia)"
54
+
"us-east-2":"us-east-2 (Ohio)"
24
55
- field: productionHostRoot
25
56
label: Production Root Host Name (e.g. mydomain.com) - this must be the root of the chosen domain, not a subdomain.
26
57
fieldValidation:
@@ -61,40 +92,57 @@ parameters:
61
92
type: regex
62
93
value: '^([a-z0-9]+(-[a-z0-9]+)*\.)$'
63
94
errorMessage: Invalid subdomain (cannot contain special chars & must end with a '.')
95
+
- field: CIVendor
96
+
label: Using either circleCI or github Actions to build / test your repository
97
+
default: "circleci"
98
+
options:
99
+
"circleci": "CircleCi"
100
+
"github-actions": "Github Actions"
101
+
- field: circleciApiKey
102
+
label: "Circle CI API Key to setup your CI/CD for repositories"
103
+
envVarName: CIRCLECI_API_KEY
104
+
conditions:
105
+
- action: KeyMatchCondition
106
+
matchField: CIVendor
107
+
whenValue: "circleci"
64
108
- field: database
65
109
label: Database engine to use (postgres)
66
110
options:
67
-
- "postgres"
68
-
- "mysql"
111
+
"postgres": "PostgreSQL"
112
+
"mysql": "MySQL"
69
113
- field: cacheStore
70
114
label: "Cache store to use (default: no cache)"
71
115
options:
72
-
-"none"
73
-
- "redis"
74
-
- "memcached"
116
+
"none":"none"
117
+
"redis": "Redis"
118
+
"memcached": "Memcached"
75
119
- field: loggingType
76
120
label: Application logging to configure. Cloudwatch is cheaper with a more limited feature set. Elasticsearch + Kibana will set up more infrastructure but enable a much richer logging search and visualization experience.
77
121
options:
78
-
- "cloudwatch"
79
-
- "kibana"
122
+
"cloudwatch": "AWS CloudWatch"
123
+
"kibana": "Kibana"
80
124
- field: metricsType
81
125
label: Additional application metrics method to configure. Metrics are available through CloudWatch, but choosing prometheus will install Prometheus and Grafana, for a richer metrics experience. No additional infrastructure is required, but a number of prometheus pods will need to exist in the cluster, utilizing some resources.
82
126
options:
83
-
-"none"
84
-
- "prometheus"
127
+
"none":"none"
128
+
"prometheus": "Prometheus"
85
129
- field: notificationServiceEnabled
86
130
label: "Install the Zero Notification Service in your cluster?"
87
131
info: Provides easy notification capability through email, slack, etc. - https://github.com/commitdev/zero-notification-service
88
132
default: yes
89
133
options:
90
-
- "yes"
91
-
- "no"
134
+
"yes": "Yes"
135
+
"no": "No"
92
136
- field: sendgridApiKey
93
137
label: "API key to setup email integration (optional: leave blank to opt-out of Sendgrid setup)"
94
138
info: Signup at https://signup.sendgrid.com or create an API key at https://app.sendgrid.com/settings/api_keys - Sendgrid is an email delivery service enabling transactional email sending and more.
95
139
- field: notificationServiceSlackApiKey
96
140
label: "API key of your Slack bot if you want to use Slack with the Zero Notification Service. Leave blank if not applicable."
97
141
info: See https://slack.com/intl/en-ca/help/articles/215770388-Create-and-regenerate-API-tokens
0 commit comments