deployable-awscdk-app-ts 0.0.1 ā 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +121 -133
- package/.projenrc.ts +4 -4
- package/API.md +426 -290
- package/README.md +18 -6
- package/lib/index.d.ts +18 -2
- package/lib/index.js +53 -10
- package/lib/steps.d.ts +1 -2
- package/lib/steps.js +31 -27
- package/lib/types.d.ts +23 -26
- package/lib/types.js +1 -1
- package/package.json +11 -11
package/.jsii
CHANGED
|
@@ -7,22 +7,21 @@
|
|
|
7
7
|
]
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"projen": "^0.
|
|
10
|
+
"projen": "^0.37.1"
|
|
11
11
|
},
|
|
12
12
|
"dependencyClosure": {
|
|
13
13
|
"projen": {
|
|
14
14
|
"submodules": {
|
|
15
15
|
"projen.awscdk": {},
|
|
16
|
-
"projen.
|
|
17
|
-
"projen.
|
|
16
|
+
"projen.cdk": {},
|
|
17
|
+
"projen.cdk8s": {},
|
|
18
|
+
"projen.cdktf": {},
|
|
18
19
|
"projen.github": {},
|
|
19
20
|
"projen.github.workflows": {},
|
|
20
21
|
"projen.java": {},
|
|
21
22
|
"projen.javascript": {},
|
|
22
|
-
"projen.json": {},
|
|
23
23
|
"projen.python": {},
|
|
24
24
|
"projen.release": {},
|
|
25
|
-
"projen.tasks": {},
|
|
26
25
|
"projen.typescript": {},
|
|
27
26
|
"projen.vscode": {},
|
|
28
27
|
"projen.web": {}
|
|
@@ -67,7 +66,7 @@
|
|
|
67
66
|
},
|
|
68
67
|
"name": "deployable-awscdk-app-ts",
|
|
69
68
|
"readme": {
|
|
70
|
-
"markdown": "# Deployable Typescript AWS CDK App Projen Project\n\nInspired by [projen](https://github.com/projen/projen)\nThis is a projen project for typescript AWS CDK Applications deployed via github actions.\n\n## Getting started\n\nTo create a new project, run the following command and follow the instructions:\n\n```\nconsole\n$ mkdir my-project\n$ cd my-project\n$ git init\n$ npx projen new --from deployable-awscdk-app-ts\nš¤ Synthesizing project...\n...\n```\n\nThis will initialize a projen project and will create `.projenrc.js` file for capturing the project details and options. Below is an example of the contents in this file\n\n### Example\n```javascript\nconst { DeployableAwsCdkTypeScriptApp } = require('deployable-awscdk-app-ts');\n\nconst project = new TypeScriptProject({\n name: 'my-test-app',\n defaultReleaseBranch: 'main',\n cdkVersion: '1.129.0',\n workflowNodeVersion: '14.18.1',\n deployOptions: {\n environments: ['dev'
|
|
69
|
+
"markdown": "# Deployable Typescript AWS CDK App Projen Project\n\nInspired by [projen](https://github.com/projen/projen)\nThis is a projen project for typescript AWS CDK Applications deployed via github actions.\n\n## Getting started\n\nTo create a new project, run the following command and follow the instructions:\n\n```\nconsole\n$ mkdir my-project\n$ cd my-project\n$ git init\n$ npx projen new --from deployable-awscdk-app-ts\nš¤ Synthesizing project...\n...\n```\n\nThis will initialize a projen project and will create `.projenrc.js` file for capturing the project details and options. Below is an example of the contents in this file\n\n### Example\n```javascript\nconst { DeployableAwsCdkTypeScriptApp } = require('deployable-awscdk-app-ts');\n\nconst project = new TypeScriptProject({\n name: 'my-test-app',\n defaultReleaseBranch: 'main',\n cdkVersion: '1.129.0',\n workflowNodeVersion: '14.18.1',\n deployOptions: {\n environments: [\n {\n name: 'dev',\n awsCredentials: {\n accessKeyIdSecretName: 'dev-secret-1',\n secretAccessKeySecretName: 'dev-secret-2',\n region: 'dev-aws-region-1',\n },\n },\n {\n name: 'staging',\n awsCredentials: {\n accessKeyIdSecretName: 'staging-secret-1',\n secretAccessKeySecretName: 'staging-secret-2',\n region: 'staging-aws-region-1',\n },\n },\n ]\n }\n});\n\nproject.synth()\n```\n"
|
|
71
70
|
},
|
|
72
71
|
"repository": {
|
|
73
72
|
"type": "git",
|
|
@@ -80,19 +79,19 @@
|
|
|
80
79
|
}
|
|
81
80
|
},
|
|
82
81
|
"types": {
|
|
83
|
-
"deployable-awscdk-app-ts.
|
|
82
|
+
"deployable-awscdk-app-ts.AWSCredentials": {
|
|
84
83
|
"assembly": "deployable-awscdk-app-ts",
|
|
85
84
|
"datatype": true,
|
|
86
85
|
"docs": {
|
|
87
86
|
"stability": "stable"
|
|
88
87
|
},
|
|
89
|
-
"fqn": "deployable-awscdk-app-ts.
|
|
88
|
+
"fqn": "deployable-awscdk-app-ts.AWSCredentials",
|
|
90
89
|
"kind": "interface",
|
|
91
90
|
"locationInModule": {
|
|
92
91
|
"filename": "src/types.ts",
|
|
93
|
-
"line":
|
|
92
|
+
"line": 42
|
|
94
93
|
},
|
|
95
|
-
"name": "
|
|
94
|
+
"name": "AWSCredentials",
|
|
96
95
|
"properties": [
|
|
97
96
|
{
|
|
98
97
|
"abstract": true,
|
|
@@ -104,7 +103,7 @@
|
|
|
104
103
|
"immutable": true,
|
|
105
104
|
"locationInModule": {
|
|
106
105
|
"filename": "src/types.ts",
|
|
107
|
-
"line":
|
|
106
|
+
"line": 70
|
|
108
107
|
},
|
|
109
108
|
"name": "region",
|
|
110
109
|
"type": {
|
|
@@ -114,70 +113,52 @@
|
|
|
114
113
|
{
|
|
115
114
|
"abstract": true,
|
|
116
115
|
"docs": {
|
|
117
|
-
"default": "
|
|
116
|
+
"default": "\"AWS_ACCESS_KEY_ID\"",
|
|
118
117
|
"stability": "stable",
|
|
119
|
-
"summary": "
|
|
118
|
+
"summary": "GitHub Secret name for AWS Access Key Id."
|
|
120
119
|
},
|
|
121
120
|
"immutable": true,
|
|
122
121
|
"locationInModule": {
|
|
123
122
|
"filename": "src/types.ts",
|
|
124
|
-
"line":
|
|
123
|
+
"line": 47
|
|
125
124
|
},
|
|
126
|
-
"name": "
|
|
125
|
+
"name": "accessKeyIdSecretName",
|
|
127
126
|
"optional": true,
|
|
128
127
|
"type": {
|
|
129
|
-
"primitive": "
|
|
128
|
+
"primitive": "string"
|
|
130
129
|
}
|
|
131
130
|
},
|
|
132
131
|
{
|
|
133
132
|
"abstract": true,
|
|
134
133
|
"docs": {
|
|
134
|
+
"default": "300",
|
|
135
135
|
"stability": "stable",
|
|
136
|
-
"summary": "
|
|
136
|
+
"summary": "Duration of assume role session."
|
|
137
137
|
},
|
|
138
138
|
"immutable": true,
|
|
139
139
|
"locationInModule": {
|
|
140
140
|
"filename": "src/types.ts",
|
|
141
|
-
"line":
|
|
141
|
+
"line": 64
|
|
142
142
|
},
|
|
143
|
-
"name": "
|
|
143
|
+
"name": "assumeRoleDurationSeconds",
|
|
144
144
|
"optional": true,
|
|
145
145
|
"type": {
|
|
146
|
-
"primitive": "
|
|
146
|
+
"primitive": "number"
|
|
147
147
|
}
|
|
148
|
-
}
|
|
149
|
-
],
|
|
150
|
-
"symbolId": "src/types:AWSCredentialsBase"
|
|
151
|
-
},
|
|
152
|
-
"deployable-awscdk-app-ts.AWSCredentialsGitHubSecrets": {
|
|
153
|
-
"assembly": "deployable-awscdk-app-ts",
|
|
154
|
-
"datatype": true,
|
|
155
|
-
"docs": {
|
|
156
|
-
"stability": "stable"
|
|
157
|
-
},
|
|
158
|
-
"fqn": "deployable-awscdk-app-ts.AWSCredentialsGitHubSecrets",
|
|
159
|
-
"interfaces": [
|
|
160
|
-
"deployable-awscdk-app-ts.AWSCredentialsBase"
|
|
161
|
-
],
|
|
162
|
-
"kind": "interface",
|
|
163
|
-
"locationInModule": {
|
|
164
|
-
"filename": "src/types.ts",
|
|
165
|
-
"line": 31
|
|
166
|
-
},
|
|
167
|
-
"name": "AWSCredentialsGitHubSecrets",
|
|
168
|
-
"properties": [
|
|
148
|
+
},
|
|
169
149
|
{
|
|
170
150
|
"abstract": true,
|
|
171
151
|
"docs": {
|
|
172
152
|
"stability": "stable",
|
|
173
|
-
"summary": "
|
|
153
|
+
"summary": "ARN of AWS role to be assumed."
|
|
174
154
|
},
|
|
175
155
|
"immutable": true,
|
|
176
156
|
"locationInModule": {
|
|
177
157
|
"filename": "src/types.ts",
|
|
178
|
-
"line":
|
|
158
|
+
"line": 58
|
|
179
159
|
},
|
|
180
|
-
"name": "
|
|
160
|
+
"name": "roleToAssume",
|
|
161
|
+
"optional": true,
|
|
181
162
|
"type": {
|
|
182
163
|
"primitive": "string"
|
|
183
164
|
}
|
|
@@ -185,73 +166,23 @@
|
|
|
185
166
|
{
|
|
186
167
|
"abstract": true,
|
|
187
168
|
"docs": {
|
|
169
|
+
"default": "\"AWS_SECRET_ACCESS_KEY\"",
|
|
188
170
|
"stability": "stable",
|
|
189
171
|
"summary": "GitHub Secret name for AWS Secret Access Key."
|
|
190
172
|
},
|
|
191
173
|
"immutable": true,
|
|
192
174
|
"locationInModule": {
|
|
193
175
|
"filename": "src/types.ts",
|
|
194
|
-
"line":
|
|
176
|
+
"line": 53
|
|
195
177
|
},
|
|
196
178
|
"name": "secretAccessKeySecretName",
|
|
179
|
+
"optional": true,
|
|
197
180
|
"type": {
|
|
198
181
|
"primitive": "string"
|
|
199
182
|
}
|
|
200
183
|
}
|
|
201
184
|
],
|
|
202
|
-
"symbolId": "src/types:
|
|
203
|
-
},
|
|
204
|
-
"deployable-awscdk-app-ts.AWSCredentialsValues": {
|
|
205
|
-
"assembly": "deployable-awscdk-app-ts",
|
|
206
|
-
"datatype": true,
|
|
207
|
-
"docs": {
|
|
208
|
-
"stability": "stable"
|
|
209
|
-
},
|
|
210
|
-
"fqn": "deployable-awscdk-app-ts.AWSCredentialsValues",
|
|
211
|
-
"interfaces": [
|
|
212
|
-
"deployable-awscdk-app-ts.AWSCredentialsBase"
|
|
213
|
-
],
|
|
214
|
-
"kind": "interface",
|
|
215
|
-
"locationInModule": {
|
|
216
|
-
"filename": "src/types.ts",
|
|
217
|
-
"line": 43
|
|
218
|
-
},
|
|
219
|
-
"name": "AWSCredentialsValues",
|
|
220
|
-
"properties": [
|
|
221
|
-
{
|
|
222
|
-
"abstract": true,
|
|
223
|
-
"docs": {
|
|
224
|
-
"stability": "stable",
|
|
225
|
-
"summary": "AWS Access Key Id."
|
|
226
|
-
},
|
|
227
|
-
"immutable": true,
|
|
228
|
-
"locationInModule": {
|
|
229
|
-
"filename": "src/types.ts",
|
|
230
|
-
"line": 47
|
|
231
|
-
},
|
|
232
|
-
"name": "accessKeyId",
|
|
233
|
-
"type": {
|
|
234
|
-
"primitive": "string"
|
|
235
|
-
}
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
"abstract": true,
|
|
239
|
-
"docs": {
|
|
240
|
-
"stability": "stable",
|
|
241
|
-
"summary": "AWS Secret Access Key."
|
|
242
|
-
},
|
|
243
|
-
"immutable": true,
|
|
244
|
-
"locationInModule": {
|
|
245
|
-
"filename": "src/types.ts",
|
|
246
|
-
"line": 52
|
|
247
|
-
},
|
|
248
|
-
"name": "secretAccessKey",
|
|
249
|
-
"type": {
|
|
250
|
-
"primitive": "string"
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
],
|
|
254
|
-
"symbolId": "src/types:AWSCredentialsValues"
|
|
185
|
+
"symbolId": "src/types:AWSCredentials"
|
|
255
186
|
},
|
|
256
187
|
"deployable-awscdk-app-ts.DeployOptions": {
|
|
257
188
|
"assembly": "deployable-awscdk-app-ts",
|
|
@@ -263,7 +194,7 @@
|
|
|
263
194
|
"kind": "interface",
|
|
264
195
|
"locationInModule": {
|
|
265
196
|
"filename": "src/types.ts",
|
|
266
|
-
"line":
|
|
197
|
+
"line": 16
|
|
267
198
|
},
|
|
268
199
|
"name": "DeployOptions",
|
|
269
200
|
"properties": [
|
|
@@ -271,43 +202,18 @@
|
|
|
271
202
|
"abstract": true,
|
|
272
203
|
"docs": {
|
|
273
204
|
"stability": "stable",
|
|
274
|
-
"summary": "
|
|
205
|
+
"summary": "Environment settings to deploy to."
|
|
275
206
|
},
|
|
276
207
|
"immutable": true,
|
|
277
208
|
"locationInModule": {
|
|
278
209
|
"filename": "src/types.ts",
|
|
279
|
-
"line":
|
|
280
|
-
},
|
|
281
|
-
"name": "awsCredentials",
|
|
282
|
-
"type": {
|
|
283
|
-
"union": {
|
|
284
|
-
"types": [
|
|
285
|
-
{
|
|
286
|
-
"fqn": "deployable-awscdk-app-ts.AWSCredentialsGitHubSecrets"
|
|
287
|
-
},
|
|
288
|
-
{
|
|
289
|
-
"fqn": "deployable-awscdk-app-ts.AWSCredentialsValues"
|
|
290
|
-
}
|
|
291
|
-
]
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
},
|
|
295
|
-
{
|
|
296
|
-
"abstract": true,
|
|
297
|
-
"docs": {
|
|
298
|
-
"stability": "stable",
|
|
299
|
-
"summary": "Environment names to deploy to."
|
|
300
|
-
},
|
|
301
|
-
"immutable": true,
|
|
302
|
-
"locationInModule": {
|
|
303
|
-
"filename": "src/types.ts",
|
|
304
|
-
"line": 14
|
|
210
|
+
"line": 20
|
|
305
211
|
},
|
|
306
212
|
"name": "environments",
|
|
307
213
|
"type": {
|
|
308
214
|
"collection": {
|
|
309
215
|
"elementtype": {
|
|
310
|
-
"
|
|
216
|
+
"fqn": "deployable-awscdk-app-ts.EnvironmentOptions"
|
|
311
217
|
},
|
|
312
218
|
"kind": "array"
|
|
313
219
|
}
|
|
@@ -323,7 +229,7 @@
|
|
|
323
229
|
"immutable": true,
|
|
324
230
|
"locationInModule": {
|
|
325
231
|
"filename": "src/types.ts",
|
|
326
|
-
"line":
|
|
232
|
+
"line": 27
|
|
327
233
|
},
|
|
328
234
|
"name": "stackPattern",
|
|
329
235
|
"optional": true,
|
|
@@ -336,7 +242,7 @@
|
|
|
336
242
|
},
|
|
337
243
|
"deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp": {
|
|
338
244
|
"assembly": "deployable-awscdk-app-ts",
|
|
339
|
-
"base": "projen.AwsCdkTypeScriptApp",
|
|
245
|
+
"base": "projen.awscdk.AwsCdkTypeScriptApp",
|
|
340
246
|
"docs": {
|
|
341
247
|
"stability": "stable"
|
|
342
248
|
},
|
|
@@ -347,7 +253,7 @@
|
|
|
347
253
|
},
|
|
348
254
|
"locationInModule": {
|
|
349
255
|
"filename": "src/index.ts",
|
|
350
|
-
"line":
|
|
256
|
+
"line": 15
|
|
351
257
|
},
|
|
352
258
|
"parameters": [
|
|
353
259
|
{
|
|
@@ -363,6 +269,21 @@
|
|
|
363
269
|
"filename": "src/index.ts",
|
|
364
270
|
"line": 8
|
|
365
271
|
},
|
|
272
|
+
"methods": [
|
|
273
|
+
{
|
|
274
|
+
"docs": {
|
|
275
|
+
"remarks": "1. Call \"this.preSynthesize()\"\n2. Delete all generated files\n3. Synthesize all sub-projects\n4. Synthesize all components of this project\n5. Call \"postSynthesize()\" for all components of this project\n6. Call \"this.postSynthesize()\"",
|
|
276
|
+
"stability": "stable",
|
|
277
|
+
"summary": "(experimental) Synthesize all project files into `outdir`."
|
|
278
|
+
},
|
|
279
|
+
"locationInModule": {
|
|
280
|
+
"filename": "src/index.ts",
|
|
281
|
+
"line": 33
|
|
282
|
+
},
|
|
283
|
+
"name": "synth",
|
|
284
|
+
"overrides": "projen.Project"
|
|
285
|
+
}
|
|
286
|
+
],
|
|
366
287
|
"name": "DeployableAwsCdkTypeScriptApp",
|
|
367
288
|
"symbolId": "src/index:DeployableAwsCdkTypeScriptApp"
|
|
368
289
|
},
|
|
@@ -374,7 +295,7 @@
|
|
|
374
295
|
},
|
|
375
296
|
"fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions",
|
|
376
297
|
"interfaces": [
|
|
377
|
-
"projen.AwsCdkTypeScriptAppOptions"
|
|
298
|
+
"projen.awscdk.AwsCdkTypeScriptAppOptions"
|
|
378
299
|
],
|
|
379
300
|
"kind": "interface",
|
|
380
301
|
"locationInModule": {
|
|
@@ -398,11 +319,78 @@
|
|
|
398
319
|
"type": {
|
|
399
320
|
"fqn": "deployable-awscdk-app-ts.DeployOptions"
|
|
400
321
|
}
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"abstract": true,
|
|
325
|
+
"docs": {
|
|
326
|
+
"default": "true",
|
|
327
|
+
"stability": "stable",
|
|
328
|
+
"summary": "Whether to generate nvmrc file for the node version of the project."
|
|
329
|
+
},
|
|
330
|
+
"immutable": true,
|
|
331
|
+
"locationInModule": {
|
|
332
|
+
"filename": "src/types.ts",
|
|
333
|
+
"line": 13
|
|
334
|
+
},
|
|
335
|
+
"name": "generateNvmrc",
|
|
336
|
+
"optional": true,
|
|
337
|
+
"type": {
|
|
338
|
+
"primitive": "boolean"
|
|
339
|
+
}
|
|
401
340
|
}
|
|
402
341
|
],
|
|
403
342
|
"symbolId": "src/types:DeployableAwsCdkTypeScriptAppOptions"
|
|
343
|
+
},
|
|
344
|
+
"deployable-awscdk-app-ts.EnvironmentOptions": {
|
|
345
|
+
"assembly": "deployable-awscdk-app-ts",
|
|
346
|
+
"datatype": true,
|
|
347
|
+
"docs": {
|
|
348
|
+
"stability": "stable"
|
|
349
|
+
},
|
|
350
|
+
"fqn": "deployable-awscdk-app-ts.EnvironmentOptions",
|
|
351
|
+
"kind": "interface",
|
|
352
|
+
"locationInModule": {
|
|
353
|
+
"filename": "src/types.ts",
|
|
354
|
+
"line": 30
|
|
355
|
+
},
|
|
356
|
+
"name": "EnvironmentOptions",
|
|
357
|
+
"properties": [
|
|
358
|
+
{
|
|
359
|
+
"abstract": true,
|
|
360
|
+
"docs": {
|
|
361
|
+
"stability": "stable",
|
|
362
|
+
"summary": "AWS credential details for deployment."
|
|
363
|
+
},
|
|
364
|
+
"immutable": true,
|
|
365
|
+
"locationInModule": {
|
|
366
|
+
"filename": "src/types.ts",
|
|
367
|
+
"line": 39
|
|
368
|
+
},
|
|
369
|
+
"name": "awsCredentials",
|
|
370
|
+
"type": {
|
|
371
|
+
"fqn": "deployable-awscdk-app-ts.AWSCredentials"
|
|
372
|
+
}
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
"abstract": true,
|
|
376
|
+
"docs": {
|
|
377
|
+
"stability": "stable",
|
|
378
|
+
"summary": "Environment name to deploy to."
|
|
379
|
+
},
|
|
380
|
+
"immutable": true,
|
|
381
|
+
"locationInModule": {
|
|
382
|
+
"filename": "src/types.ts",
|
|
383
|
+
"line": 34
|
|
384
|
+
},
|
|
385
|
+
"name": "name",
|
|
386
|
+
"type": {
|
|
387
|
+
"primitive": "string"
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
],
|
|
391
|
+
"symbolId": "src/types:EnvironmentOptions"
|
|
404
392
|
}
|
|
405
393
|
},
|
|
406
|
-
"version": "0.0.
|
|
407
|
-
"fingerprint": "+
|
|
394
|
+
"version": "0.0.5",
|
|
395
|
+
"fingerprint": "bxQ9sr2mJai52+fKPoxVSD/IUpAOSNvgaoMN9gTizJ0="
|
|
408
396
|
}
|
package/.projenrc.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {javascript, cdk, TextFile} from 'projen'
|
|
2
2
|
|
|
3
3
|
const nodeVersion = '14.18.1'
|
|
4
4
|
|
|
5
|
-
const project = new JsiiProject({
|
|
5
|
+
const project = new cdk.JsiiProject({
|
|
6
6
|
author: 'Amin Fazl',
|
|
7
7
|
authorAddress: 'amin.fazl@mondo.com.au',
|
|
8
8
|
defaultReleaseBranch: 'main',
|
|
@@ -16,8 +16,8 @@ const project = new JsiiProject({
|
|
|
16
16
|
],
|
|
17
17
|
projenrcTs: true,
|
|
18
18
|
repositoryUrl: 'https://github.com/amin.fazl/deployable-awscdk-app-ts.git',
|
|
19
|
-
packageManager: NodePackageManager.NPM,
|
|
20
|
-
npmAccess: NpmAccess.PUBLIC,
|
|
19
|
+
packageManager: javascript.NodePackageManager.NPM,
|
|
20
|
+
npmAccess: javascript.NpmAccess.PUBLIC,
|
|
21
21
|
deps: [
|
|
22
22
|
'projen',
|
|
23
23
|
],
|