deployable-awscdk-app-ts 0.0.1

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/.gitattributes ADDED
@@ -0,0 +1,22 @@
1
+ # ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen".
2
+
3
+ *.snap linguist-generated
4
+ /.eslintrc.json linguist-generated
5
+ /.gitattributes linguist-generated
6
+ /.github/pull_request_template.md linguist-generated
7
+ /.github/workflows/build.yml linguist-generated
8
+ /.github/workflows/pull-request-lint.yml linguist-generated
9
+ /.github/workflows/release.yml linguist-generated
10
+ /.github/workflows/stale.yml linguist-generated
11
+ /.github/workflows/upgrade-main.yml linguist-generated
12
+ /.gitignore linguist-generated
13
+ /.mergify.yml linguist-generated
14
+ /.npmignore linguist-generated
15
+ /.nvmrc linguist-generated
16
+ /.projen/** linguist-generated
17
+ /.projen/deps.json linguist-generated
18
+ /.projen/tasks.json linguist-generated
19
+ /LICENSE linguist-generated
20
+ /package-lock.json linguist-generated
21
+ /package.json linguist-generated
22
+ /tsconfig.dev.json linguist-generated
package/.jsii ADDED
@@ -0,0 +1,408 @@
1
+ {
2
+ "author": {
3
+ "email": "amin.fazl@mondo.com.au",
4
+ "name": "Amin Fazl",
5
+ "roles": [
6
+ "author"
7
+ ]
8
+ },
9
+ "dependencies": {
10
+ "projen": "^0.34.26"
11
+ },
12
+ "dependencyClosure": {
13
+ "projen": {
14
+ "submodules": {
15
+ "projen.awscdk": {},
16
+ "projen.deps": {},
17
+ "projen.git": {},
18
+ "projen.github": {},
19
+ "projen.github.workflows": {},
20
+ "projen.java": {},
21
+ "projen.javascript": {},
22
+ "projen.json": {},
23
+ "projen.python": {},
24
+ "projen.release": {},
25
+ "projen.tasks": {},
26
+ "projen.typescript": {},
27
+ "projen.vscode": {},
28
+ "projen.web": {}
29
+ },
30
+ "targets": {
31
+ "java": {
32
+ "maven": {
33
+ "artifactId": "projen",
34
+ "groupId": "io.github.cdklabs"
35
+ },
36
+ "package": "io.github.cdklabs.projen"
37
+ },
38
+ "js": {
39
+ "npm": "projen"
40
+ },
41
+ "python": {
42
+ "distName": "projen",
43
+ "module": "projen"
44
+ }
45
+ }
46
+ }
47
+ },
48
+ "description": "A projen project for Typescript AWS CDK App",
49
+ "docs": {
50
+ "stability": "stable"
51
+ },
52
+ "homepage": "https://github.com/amin.fazl/deployable-awscdk-app-ts.git",
53
+ "jsiiVersion": "1.46.0 (build cd08c55)",
54
+ "keywords": [
55
+ "AWS CDK",
56
+ "Deployment",
57
+ "Typescript",
58
+ "projen"
59
+ ],
60
+ "license": "Apache-2.0",
61
+ "metadata": {
62
+ "jsii": {
63
+ "pacmak": {
64
+ "hasDefaultInterfaces": true
65
+ }
66
+ }
67
+ },
68
+ "name": "deployable-awscdk-app-ts",
69
+ "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', 'prod'],\n awsCredentials: {\n accessKeyIdSecretName: 'secret-1',\n secretAccessKeySecretName: 'secret-2',\n region: 'aws-region-1',\n },\n }\n});\n\nproject.synth()\n```\n"
71
+ },
72
+ "repository": {
73
+ "type": "git",
74
+ "url": "https://github.com/amin.fazl/deployable-awscdk-app-ts.git"
75
+ },
76
+ "schema": "jsii/0.10.0",
77
+ "targets": {
78
+ "js": {
79
+ "npm": "deployable-awscdk-app-ts"
80
+ }
81
+ },
82
+ "types": {
83
+ "deployable-awscdk-app-ts.AWSCredentialsBase": {
84
+ "assembly": "deployable-awscdk-app-ts",
85
+ "datatype": true,
86
+ "docs": {
87
+ "stability": "stable"
88
+ },
89
+ "fqn": "deployable-awscdk-app-ts.AWSCredentialsBase",
90
+ "kind": "interface",
91
+ "locationInModule": {
92
+ "filename": "src/types.ts",
93
+ "line": 55
94
+ },
95
+ "name": "AWSCredentialsBase",
96
+ "properties": [
97
+ {
98
+ "abstract": true,
99
+ "docs": {
100
+ "example": "\"us-east-2\"",
101
+ "stability": "stable",
102
+ "summary": "Default AWS region for the account."
103
+ },
104
+ "immutable": true,
105
+ "locationInModule": {
106
+ "filename": "src/types.ts",
107
+ "line": 71
108
+ },
109
+ "name": "region",
110
+ "type": {
111
+ "primitive": "string"
112
+ }
113
+ },
114
+ {
115
+ "abstract": true,
116
+ "docs": {
117
+ "default": "300",
118
+ "stability": "stable",
119
+ "summary": "Duration of assume role session."
120
+ },
121
+ "immutable": true,
122
+ "locationInModule": {
123
+ "filename": "src/types.ts",
124
+ "line": 65
125
+ },
126
+ "name": "assumeRoleDurationSeconds",
127
+ "optional": true,
128
+ "type": {
129
+ "primitive": "number"
130
+ }
131
+ },
132
+ {
133
+ "abstract": true,
134
+ "docs": {
135
+ "stability": "stable",
136
+ "summary": "ARN of AWS role to be assumed."
137
+ },
138
+ "immutable": true,
139
+ "locationInModule": {
140
+ "filename": "src/types.ts",
141
+ "line": 59
142
+ },
143
+ "name": "roleToAssume",
144
+ "optional": true,
145
+ "type": {
146
+ "primitive": "string"
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": [
169
+ {
170
+ "abstract": true,
171
+ "docs": {
172
+ "stability": "stable",
173
+ "summary": "GitHub Secret name for AWS Access Key Id."
174
+ },
175
+ "immutable": true,
176
+ "locationInModule": {
177
+ "filename": "src/types.ts",
178
+ "line": 35
179
+ },
180
+ "name": "accessKeyIdSecretName",
181
+ "type": {
182
+ "primitive": "string"
183
+ }
184
+ },
185
+ {
186
+ "abstract": true,
187
+ "docs": {
188
+ "stability": "stable",
189
+ "summary": "GitHub Secret name for AWS Secret Access Key."
190
+ },
191
+ "immutable": true,
192
+ "locationInModule": {
193
+ "filename": "src/types.ts",
194
+ "line": 40
195
+ },
196
+ "name": "secretAccessKeySecretName",
197
+ "type": {
198
+ "primitive": "string"
199
+ }
200
+ }
201
+ ],
202
+ "symbolId": "src/types:AWSCredentialsGitHubSecrets"
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"
255
+ },
256
+ "deployable-awscdk-app-ts.DeployOptions": {
257
+ "assembly": "deployable-awscdk-app-ts",
258
+ "datatype": true,
259
+ "docs": {
260
+ "stability": "stable"
261
+ },
262
+ "fqn": "deployable-awscdk-app-ts.DeployOptions",
263
+ "kind": "interface",
264
+ "locationInModule": {
265
+ "filename": "src/types.ts",
266
+ "line": 10
267
+ },
268
+ "name": "DeployOptions",
269
+ "properties": [
270
+ {
271
+ "abstract": true,
272
+ "docs": {
273
+ "stability": "stable",
274
+ "summary": "AWS credential details for deployment."
275
+ },
276
+ "immutable": true,
277
+ "locationInModule": {
278
+ "filename": "src/types.ts",
279
+ "line": 26
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
305
+ },
306
+ "name": "environments",
307
+ "type": {
308
+ "collection": {
309
+ "elementtype": {
310
+ "primitive": "string"
311
+ },
312
+ "kind": "array"
313
+ }
314
+ }
315
+ },
316
+ {
317
+ "abstract": true,
318
+ "docs": {
319
+ "remarks": "if not provided matches all of the stacks in the CDK App.",
320
+ "stability": "stable",
321
+ "summary": "Regex for stacks to be deployed."
322
+ },
323
+ "immutable": true,
324
+ "locationInModule": {
325
+ "filename": "src/types.ts",
326
+ "line": 21
327
+ },
328
+ "name": "stackPattern",
329
+ "optional": true,
330
+ "type": {
331
+ "primitive": "string"
332
+ }
333
+ }
334
+ ],
335
+ "symbolId": "src/types:DeployOptions"
336
+ },
337
+ "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp": {
338
+ "assembly": "deployable-awscdk-app-ts",
339
+ "base": "projen.AwsCdkTypeScriptApp",
340
+ "docs": {
341
+ "stability": "stable"
342
+ },
343
+ "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptApp",
344
+ "initializer": {
345
+ "docs": {
346
+ "stability": "stable"
347
+ },
348
+ "locationInModule": {
349
+ "filename": "src/index.ts",
350
+ "line": 12
351
+ },
352
+ "parameters": [
353
+ {
354
+ "name": "options",
355
+ "type": {
356
+ "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions"
357
+ }
358
+ }
359
+ ]
360
+ },
361
+ "kind": "class",
362
+ "locationInModule": {
363
+ "filename": "src/index.ts",
364
+ "line": 8
365
+ },
366
+ "name": "DeployableAwsCdkTypeScriptApp",
367
+ "symbolId": "src/index:DeployableAwsCdkTypeScriptApp"
368
+ },
369
+ "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions": {
370
+ "assembly": "deployable-awscdk-app-ts",
371
+ "datatype": true,
372
+ "docs": {
373
+ "stability": "stable"
374
+ },
375
+ "fqn": "deployable-awscdk-app-ts.DeployableAwsCdkTypeScriptAppOptions",
376
+ "interfaces": [
377
+ "projen.AwsCdkTypeScriptAppOptions"
378
+ ],
379
+ "kind": "interface",
380
+ "locationInModule": {
381
+ "filename": "src/types.ts",
382
+ "line": 3
383
+ },
384
+ "name": "DeployableAwsCdkTypeScriptAppOptions",
385
+ "properties": [
386
+ {
387
+ "abstract": true,
388
+ "docs": {
389
+ "stability": "stable",
390
+ "summary": "Deployment options."
391
+ },
392
+ "immutable": true,
393
+ "locationInModule": {
394
+ "filename": "src/types.ts",
395
+ "line": 7
396
+ },
397
+ "name": "deployOptions",
398
+ "type": {
399
+ "fqn": "deployable-awscdk-app-ts.DeployOptions"
400
+ }
401
+ }
402
+ ],
403
+ "symbolId": "src/types:DeployableAwsCdkTypeScriptAppOptions"
404
+ }
405
+ },
406
+ "version": "0.0.1",
407
+ "fingerprint": "+TO8Vco2CMpIavkGQ6VrdWgKqzU7O+ardmdrk/JdZH4="
408
+ }
package/.nvmrc ADDED
@@ -0,0 +1 @@
1
+ 14.18.1
package/.projenrc.ts ADDED
@@ -0,0 +1,55 @@
1
+ import {JsiiProject, NodePackageManager, NpmAccess, TextFile} from 'projen'
2
+
3
+ const nodeVersion = '14.18.1'
4
+
5
+ const project = new JsiiProject({
6
+ author: 'Amin Fazl',
7
+ authorAddress: 'amin.fazl@mondo.com.au',
8
+ defaultReleaseBranch: 'main',
9
+ name: 'deployable-awscdk-app-ts',
10
+ description: 'A projen project for Typescript AWS CDK App',
11
+ keywords: [
12
+ 'projen',
13
+ 'Typescript',
14
+ 'AWS CDK',
15
+ 'Deployment',
16
+ ],
17
+ projenrcTs: true,
18
+ repositoryUrl: 'https://github.com/amin.fazl/deployable-awscdk-app-ts.git',
19
+ packageManager: NodePackageManager.NPM,
20
+ npmAccess: NpmAccess.PUBLIC,
21
+ deps: [
22
+ 'projen',
23
+ ],
24
+ peerDeps: [
25
+ 'projen',
26
+ ],
27
+ devDeps: [
28
+ 'fs-extra',
29
+ '@types/fs-extra',
30
+ ],
31
+ workflowNodeVersion: nodeVersion,
32
+ depsUpgradeOptions: {
33
+ ignoreProjen: false,
34
+ },
35
+ })
36
+
37
+ new TextFile(project, '.nvmrc', {
38
+ lines: [nodeVersion],
39
+ })
40
+
41
+ project.eslint?.addRules({
42
+ 'curly': [
43
+ 'error',
44
+ 'multi',
45
+ 'consistent',
46
+ ],
47
+ 'semi': [
48
+ 'error',
49
+ 'never',
50
+ ],
51
+ 'object-curly-spacing': 'error',
52
+ 'nonblock-statement-body-position': ['error', 'below'],
53
+ })
54
+
55
+ project.synth()