@alma-cdk/project 0.0.14 → 0.0.17
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 +204 -195
- package/API.md +74 -55
- package/README.md +18 -2
- package/lib/configurations/accounts.d.ts +24 -17
- package/lib/configurations/accounts.js +18 -8
- package/lib/configurations/index.d.ts +1 -1
- package/lib/configurations/index.js +2 -2
- package/lib/context/account.js +1 -1
- package/lib/context/environment.js +1 -1
- package/lib/name/name-path.js +1 -1
- package/lib/name/name-url.js +1 -1
- package/lib/name/name.js +1 -1
- package/lib/project/account-type.js +1 -1
- package/lib/project/environment-type.js +1 -1
- package/lib/project/envregexp.js +1 -1
- package/lib/project/project-context.js +1 -1
- package/lib/project/project.js +1 -1
- package/lib/smartstack/description/index.js +22 -3
- package/lib/smartstack/name/index.js +35 -3
- package/lib/smartstack/name/index.test.js +6 -6
- package/lib/smartstack/stack.js +1 -1
- package/lib/template/index.d.ts +0 -1
- package/lib/template/index.js +5 -7
- package/lib/wrapper/account.d.ts +3 -0
- package/lib/wrapper/account.js +5 -2
- package/lib/wrapper/environment.d.ts +3 -0
- package/lib/wrapper/environment.js +5 -2
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -3008,7 +3008,7 @@
|
|
|
3008
3008
|
},
|
|
3009
3009
|
"name": "@alma-cdk/project",
|
|
3010
3010
|
"readme": {
|
|
3011
|
-
"markdown": "<br/><br/><br/>\n\n🚧 **Work-in-Progress**\n\n<br/><br/><br/>\n\n<div align=\"center\">\n\t<br/>\n\t<br/>\n <h1>\n\t<img width=\"300\" src=\"assets/alma-cdk-project.svg\" alt=\"Alma CDK Project\" />\n <br/>\n <br/>\n </h1>\n\n ```sh\n npm i -D @alma-cdk/project\n ```\n\n <div align=\"left\">\n\n Opinionated CDK “framework” with constructs & utilities for:\n - deploying multiple environments to multiple accounts (with many-to-many relationship)\n - managing account configuration through standardized props (no more random config files)\n - querying account and/or environment specific information within your CDK code\n - enabling dynamic & short-lived “feature-environments”\n - enabling well-defined tagging\n - providing structure & common conventions to CDK projects\n - choosing the target account & environment by passing in runtime context:\n\n ```sh\n npx cdk deploy -c environment=feature/abc-123\n ```\n ... which means you don't need to define all the possibile environments ahead of time!\n\n </div>\n <br/>\n</div>\n\n\n## Account Strategies\n\nDepending on the use case, you may choose a configuration between 1-3 AWS accounts with the following environments:\n\n\n1. **Shared account (`shared`)**:\n\n \n <br/>\n\n2. **Multi-account (`dev`+`prod`)**_– RECOMMENDED_:\n\n \n <br/>\n\n<br/>\n</details>\n\n3. **Multi-account (`dev`+`preprod`+`prod`)**:\n\n \n <br/>\n\n<br/>\n\n## Getting Started\n\nSteps required to define a _environmental_ project resources; At first, it might seem complex but once you get into the habbit of defining your projects this way it starts to make sense:\n\n1. Choose your [Account Strategy](#account-strategies)\n\n2. Initialize a new `Project` instead of `cdk.App`:\n\n ```ts\n // bin/app.ts\n import { Project,
|
|
3011
|
+
"markdown": "<br/><br/><br/>\n\n🚧 **Work-in-Progress**\n\n<br/><br/><br/>\n\n<div align=\"center\">\n\t<br/>\n\t<br/>\n <h1>\n\t<img width=\"300\" src=\"assets/alma-cdk-project.svg\" alt=\"Alma CDK Project\" />\n <br/>\n <br/>\n </h1>\n\n ```sh\n npm i -D @alma-cdk/project\n ```\n\n <div align=\"left\">\n\n Opinionated CDK “framework” with constructs & utilities for:\n - deploying multiple environments to multiple accounts (with many-to-many relationship)\n - managing account configuration through standardized props (no more random config files)\n - querying account and/or environment specific information within your CDK code\n - enabling dynamic & short-lived “feature-environments”\n - enabling well-defined tagging\n - providing structure & common conventions to CDK projects\n - choosing the target account & environment by passing in runtime context:\n\n ```sh\n npx cdk deploy -c environment=feature/abc-123\n ```\n ... which means you don't need to define all the possibile environments ahead of time!\n\n </div>\n <br/>\n</div>\n\n\n## Account Strategies\n\nDepending on the use case, you may choose a configuration between 1-3 AWS accounts with the following environments:\n\n\n1. **Shared account (`shared`)**:\n\n \n <br/>\n\n2. **Multi-account (`dev`+`prod`)**_– RECOMMENDED_:\n\n \n <br/>\n\n<br/>\n</details>\n\n3. **Multi-account (`dev`+`preprod`+`prod`)**:\n\n \n <br/>\n\n<br/>\n\n## Getting Started\n\nSteps required to define a _environmental_ project resources; At first, it might seem complex but once you get into the habbit of defining your projects this way it starts to make sense:\n\n1. Choose your [Account Strategy](#account-strategies)\n\n2. Initialize a new `Project` instead of `cdk.App`:\n\n ```ts\n // bin/app.ts\n import { Project, AccountStrategy } from '@alma-cdk/project';\n\n const project = new Project({\n // Basic info, you could also read these from package.json if you want\n name: 'my-cool-project',\n author: {\n organization: 'Acme Corp',\n name: 'Mad Scientists',\n email: 'mad.scientists@acme.example.com',\n },\n\n // If not set, defaults to one of: $CDK_DEFAULT_REGION, $AWS_REGION or us-east-1\n defaultRegion: 'eu-west-1',\n\n // Configures the project to use 2 AWS accounts (recommended)\n accounts: AccountStrategy.two({\n dev: {\n id: '111111111111',\n config: {\n // whatever you want here as [string]: any\n baseDomain: 'example.net',\n },\n },\n prod: {\n id: '222222222222',\n config: {\n // whatever you want here as [string]: any\n baseDomain: 'example.com',\n },\n },\n }),\n })\n ```\n\n3. Define a stack which `extends SmartStack` with resources:\n ```ts\n // lib/my-stack.ts\n import { Construct } from 'constructs';\n import { StackProps, RemovalPolicy } from 'aws-cdk-lib';\n import { SmartStack, Name, UrlName, PathName, EC } from '@alma-cdk/project';\n\n export class MyStack extends SmartStack {\n constructor(scope: Construct, id: string, props?: StackProps) {\n super(scope, id, props);\n\n new dynamodb.Table(this, 'Table', {\n removalPolicy: EC.isStable(this) ? RemovalPolicy.RETAIN : RemovalPolicy.DESTROY,\n\n tableName: Name.it(this, 'MyTable'),\n partitionKey: {\n type: dynamodb.AttributeType.STRING,\n name: 'pk',\n },\n // StagingMyTable\n });\n\n new events.EventBus(this, 'EventBus', {\n eventBusName: Name.withProject(this, 'MyEventBus'),\n // MyCoolProjectStagingMyEventBus\n });\n\n new s3.Bucket(this, 'Bucket', {\n\n removalPolicy: EC.isStable(this) ? RemovalPolicy.RETAIN : RemovalPolicy.DESTROY,\n autoDeleteObjects: EC.isStable(this) ? false : true,\n\n bucketName: UrlName.globally(this, 'MyBucket'),\n // acme-corp-my-cool-project-feature-foo-bar-my-bucket\n });\n\n new ssm.StringParameter(this, 'Parameter', {\n stringValue: 'Foo',\n tier: ssm.ParameterTier.ADVANCED,\n parameterName: PathName.withProject(this, 'MyNamespace/MyParameter'),\n // /MyCoolProject/Staging/MyNamespace/MyParameter\n });\n }\n }\n ```\n\n4. Define a new _environmental_ which `extends EnvironmentWrapper` and initialize all your environmental `SmartStack` stacks within:\n\n ```ts\n // lib/environment.ts\n import { EnvironmentWrapper } from '@alma-cdk/project';\n import { MyStack } from './my-stack';\n\n export class Environment extends EnvironmentWrapper {\n constructor(scope: Construct) {\n super(scope);\n new MyStack(this, 'MyStack', { description: 'This is required' });\n }\n }\n ```\n\n Resulting Stack properties (given `environment=staging`):\n\n | Property | Example value |\n | :---------------------- | :--------------------------------------------------- |\n | `stackName` | `\"MyCoolProject-Environment-Staging-MyExampleStack\"` |\n | `terminationProtection` | `true` |\n | `env.account` | `\"111111111111\"` |\n | `env.region` | `\"eu-west-1\"` |\n\n Resulting Tags for the Stack and its resources (given `environment=staging`):\n\n | Property | Example value |\n | :---------------------- | :-------------------------------- |\n | `Account` | `dev` |\n | `Environment` | `staging` |\n | `Project` | `my-cool-project` |\n | `Author` | `Mad Scientists` |\n | `Organization` | `Acme Corp` |\n | `Contact` | `mad.scientists@acme.example.com` |\n\n5. Finally initialize the environment with the `Project` scope:\n\n ```ts\n // bin/app.ts\n import { Project, Accounts } from '@alma-cdk/project';\n import { Environment } from '../lib/environment';\n\n const project = new Project({/* removed for brevity, see step 1 */})\n\n new Environment(project);\n ```\n\n<br/>\n\n\n## Documentation\n\nSee detailed documentation for specific classes & methods at [constructs.dev](http://constructs.dev/packages/@alma-cdk/project).\n\nGenerally speaking you would be most interested in the following:\n- Project\n- AccountStrategy\n- SmartStack\n- AccountWrapper & EnvironmentWrapper\n- AccountContext (AC)\n- EnvironmentContext (EC)\n- Name / UrlName / PathName\n"
|
|
3012
3012
|
},
|
|
3013
3013
|
"repository": {
|
|
3014
3014
|
"type": "git",
|
|
@@ -3108,13 +3108,14 @@
|
|
|
3108
3108
|
"assembly": "@alma-cdk/project",
|
|
3109
3109
|
"datatype": true,
|
|
3110
3110
|
"docs": {
|
|
3111
|
-
"stability": "experimental"
|
|
3111
|
+
"stability": "experimental",
|
|
3112
|
+
"summary": "Interface for a single account type configuration."
|
|
3112
3113
|
},
|
|
3113
3114
|
"fqn": "@alma-cdk/project.AccountConfiguration",
|
|
3114
3115
|
"kind": "interface",
|
|
3115
3116
|
"locationInModule": {
|
|
3116
3117
|
"filename": "src/configurations/accounts.ts",
|
|
3117
|
-
"line":
|
|
3118
|
+
"line": 16
|
|
3118
3119
|
},
|
|
3119
3120
|
"name": "AccountConfiguration",
|
|
3120
3121
|
"properties": [
|
|
@@ -3126,7 +3127,7 @@
|
|
|
3126
3127
|
"immutable": true,
|
|
3127
3128
|
"locationInModule": {
|
|
3128
3129
|
"filename": "src/configurations/accounts.ts",
|
|
3129
|
-
"line":
|
|
3130
|
+
"line": 17
|
|
3130
3131
|
},
|
|
3131
3132
|
"name": "id",
|
|
3132
3133
|
"type": {
|
|
@@ -3141,7 +3142,7 @@
|
|
|
3141
3142
|
"immutable": true,
|
|
3142
3143
|
"locationInModule": {
|
|
3143
3144
|
"filename": "src/configurations/accounts.ts",
|
|
3144
|
-
"line":
|
|
3145
|
+
"line": 18
|
|
3145
3146
|
},
|
|
3146
3147
|
"name": "config",
|
|
3147
3148
|
"optional": true,
|
|
@@ -3376,156 +3377,15 @@
|
|
|
3376
3377
|
"name": "AccountContext",
|
|
3377
3378
|
"symbolId": "src/context/account:AccountContext"
|
|
3378
3379
|
},
|
|
3379
|
-
"@alma-cdk/project.
|
|
3380
|
+
"@alma-cdk/project.AccountStrategy": {
|
|
3381
|
+
"abstract": true,
|
|
3380
3382
|
"assembly": "@alma-cdk/project",
|
|
3381
3383
|
"docs": {
|
|
3384
|
+
"remarks": "Available strategies are:\n- One Account: `shared`\n- Two Accounts: `dev`+`prod` – _recommended_\n- Three Accounts: `dev`+`preprod`+`prod`",
|
|
3382
3385
|
"stability": "experimental",
|
|
3383
|
-
"summary": "
|
|
3386
|
+
"summary": "Use static methods of `AccountStrategy` abstract class to define your account strategy."
|
|
3384
3387
|
},
|
|
3385
|
-
"fqn": "@alma-cdk/project.
|
|
3386
|
-
"initializer": {
|
|
3387
|
-
"docs": {
|
|
3388
|
-
"stability": "experimental"
|
|
3389
|
-
}
|
|
3390
|
-
},
|
|
3391
|
-
"kind": "class",
|
|
3392
|
-
"locationInModule": {
|
|
3393
|
-
"filename": "src/project/account-type.ts",
|
|
3394
|
-
"line": 10
|
|
3395
|
-
},
|
|
3396
|
-
"methods": [
|
|
3397
|
-
{
|
|
3398
|
-
"docs": {
|
|
3399
|
-
"stability": "experimental"
|
|
3400
|
-
},
|
|
3401
|
-
"locationInModule": {
|
|
3402
|
-
"filename": "src/project/account-type.ts",
|
|
3403
|
-
"line": 17
|
|
3404
|
-
},
|
|
3405
|
-
"name": "get",
|
|
3406
|
-
"parameters": [
|
|
3407
|
-
{
|
|
3408
|
-
"name": "scope",
|
|
3409
|
-
"type": {
|
|
3410
|
-
"fqn": "constructs.Construct"
|
|
3411
|
-
}
|
|
3412
|
-
}
|
|
3413
|
-
],
|
|
3414
|
-
"returns": {
|
|
3415
|
-
"type": {
|
|
3416
|
-
"primitive": "string"
|
|
3417
|
-
}
|
|
3418
|
-
},
|
|
3419
|
-
"static": true
|
|
3420
|
-
},
|
|
3421
|
-
{
|
|
3422
|
-
"docs": {
|
|
3423
|
-
"stability": "experimental"
|
|
3424
|
-
},
|
|
3425
|
-
"locationInModule": {
|
|
3426
|
-
"filename": "src/project/account-type.ts",
|
|
3427
|
-
"line": 31
|
|
3428
|
-
},
|
|
3429
|
-
"name": "matchFromEnvironment",
|
|
3430
|
-
"parameters": [
|
|
3431
|
-
{
|
|
3432
|
-
"name": "scope",
|
|
3433
|
-
"type": {
|
|
3434
|
-
"fqn": "constructs.Construct"
|
|
3435
|
-
}
|
|
3436
|
-
},
|
|
3437
|
-
{
|
|
3438
|
-
"name": "accounts",
|
|
3439
|
-
"type": {
|
|
3440
|
-
"collection": {
|
|
3441
|
-
"elementtype": {
|
|
3442
|
-
"fqn": "@alma-cdk/project.Account"
|
|
3443
|
-
},
|
|
3444
|
-
"kind": "map"
|
|
3445
|
-
}
|
|
3446
|
-
}
|
|
3447
|
-
},
|
|
3448
|
-
{
|
|
3449
|
-
"name": "environmentType",
|
|
3450
|
-
"type": {
|
|
3451
|
-
"primitive": "string"
|
|
3452
|
-
}
|
|
3453
|
-
}
|
|
3454
|
-
],
|
|
3455
|
-
"returns": {
|
|
3456
|
-
"type": {
|
|
3457
|
-
"primitive": "string"
|
|
3458
|
-
}
|
|
3459
|
-
},
|
|
3460
|
-
"static": true
|
|
3461
|
-
},
|
|
3462
|
-
{
|
|
3463
|
-
"docs": {
|
|
3464
|
-
"stability": "experimental"
|
|
3465
|
-
},
|
|
3466
|
-
"locationInModule": {
|
|
3467
|
-
"filename": "src/project/account-type.ts",
|
|
3468
|
-
"line": 12
|
|
3469
|
-
},
|
|
3470
|
-
"name": "set",
|
|
3471
|
-
"parameters": [
|
|
3472
|
-
{
|
|
3473
|
-
"name": "scope",
|
|
3474
|
-
"type": {
|
|
3475
|
-
"fqn": "constructs.Construct"
|
|
3476
|
-
}
|
|
3477
|
-
},
|
|
3478
|
-
{
|
|
3479
|
-
"name": "accountType",
|
|
3480
|
-
"type": {
|
|
3481
|
-
"primitive": "string"
|
|
3482
|
-
}
|
|
3483
|
-
}
|
|
3484
|
-
],
|
|
3485
|
-
"static": true
|
|
3486
|
-
}
|
|
3487
|
-
],
|
|
3488
|
-
"name": "AccountType",
|
|
3489
|
-
"symbolId": "src/project/account-type:AccountType"
|
|
3490
|
-
},
|
|
3491
|
-
"@alma-cdk/project.AccountWrapper": {
|
|
3492
|
-
"assembly": "@alma-cdk/project",
|
|
3493
|
-
"base": "constructs.Construct",
|
|
3494
|
-
"docs": {
|
|
3495
|
-
"stability": "experimental"
|
|
3496
|
-
},
|
|
3497
|
-
"fqn": "@alma-cdk/project.AccountWrapper",
|
|
3498
|
-
"initializer": {
|
|
3499
|
-
"docs": {
|
|
3500
|
-
"stability": "experimental"
|
|
3501
|
-
},
|
|
3502
|
-
"locationInModule": {
|
|
3503
|
-
"filename": "src/wrapper/account.ts",
|
|
3504
|
-
"line": 7
|
|
3505
|
-
},
|
|
3506
|
-
"parameters": [
|
|
3507
|
-
{
|
|
3508
|
-
"name": "scope",
|
|
3509
|
-
"type": {
|
|
3510
|
-
"fqn": "constructs.Construct"
|
|
3511
|
-
}
|
|
3512
|
-
}
|
|
3513
|
-
]
|
|
3514
|
-
},
|
|
3515
|
-
"kind": "class",
|
|
3516
|
-
"locationInModule": {
|
|
3517
|
-
"filename": "src/wrapper/account.ts",
|
|
3518
|
-
"line": 5
|
|
3519
|
-
},
|
|
3520
|
-
"name": "AccountWrapper",
|
|
3521
|
-
"symbolId": "src/wrapper/account:AccountWrapper"
|
|
3522
|
-
},
|
|
3523
|
-
"@alma-cdk/project.Accounts": {
|
|
3524
|
-
"assembly": "@alma-cdk/project",
|
|
3525
|
-
"docs": {
|
|
3526
|
-
"stability": "experimental"
|
|
3527
|
-
},
|
|
3528
|
-
"fqn": "@alma-cdk/project.Accounts",
|
|
3388
|
+
"fqn": "@alma-cdk/project.AccountStrategy",
|
|
3529
3389
|
"initializer": {
|
|
3530
3390
|
"docs": {
|
|
3531
3391
|
"stability": "experimental"
|
|
@@ -3534,26 +3394,26 @@
|
|
|
3534
3394
|
"kind": "class",
|
|
3535
3395
|
"locationInModule": {
|
|
3536
3396
|
"filename": "src/configurations/accounts.ts",
|
|
3537
|
-
"line":
|
|
3397
|
+
"line": 53
|
|
3538
3398
|
},
|
|
3539
3399
|
"methods": [
|
|
3540
3400
|
{
|
|
3541
3401
|
"docs": {
|
|
3542
|
-
"example": "
|
|
3402
|
+
"example": "AccountStrategy.one({\n shared: {\n id: '111111111111',\n },\n}),",
|
|
3543
3403
|
"remarks": "1. `shared` account with environments:\n - development\n - feature/*\n - test\n - qaN\n - staging\n - preproduction\n - production",
|
|
3544
3404
|
"stability": "experimental",
|
|
3545
3405
|
"summary": "Enables single account strategy."
|
|
3546
3406
|
},
|
|
3547
3407
|
"locationInModule": {
|
|
3548
3408
|
"filename": "src/configurations/accounts.ts",
|
|
3549
|
-
"line":
|
|
3409
|
+
"line": 74
|
|
3550
3410
|
},
|
|
3551
3411
|
"name": "one",
|
|
3552
3412
|
"parameters": [
|
|
3553
3413
|
{
|
|
3554
3414
|
"name": "props",
|
|
3555
3415
|
"type": {
|
|
3556
|
-
"fqn": "@alma-cdk/project.
|
|
3416
|
+
"fqn": "@alma-cdk/project.AccountStrategyOneProps"
|
|
3557
3417
|
}
|
|
3558
3418
|
}
|
|
3559
3419
|
],
|
|
@@ -3571,21 +3431,21 @@
|
|
|
3571
3431
|
},
|
|
3572
3432
|
{
|
|
3573
3433
|
"docs": {
|
|
3574
|
-
"example": "
|
|
3434
|
+
"example": "AccountStrategy.three({\n dev: {\n id: '111111111111',\n },\n preprod: {\n id: '222222222222',\n },\n prod: {\n id: '333333333333',\n },\n}),",
|
|
3575
3435
|
"remarks": "1. `dev` account with environments:\n - development\n - feature/*\n - test\n - staging\n2. `preprod` account with environments:\n - qaN\n - preproduction\n3. `prod` account with environments:\n - production",
|
|
3576
3436
|
"stability": "experimental",
|
|
3577
3437
|
"summary": "Enables triple account strategy."
|
|
3578
3438
|
},
|
|
3579
3439
|
"locationInModule": {
|
|
3580
3440
|
"filename": "src/configurations/accounts.ts",
|
|
3581
|
-
"line":
|
|
3441
|
+
"line": 177
|
|
3582
3442
|
},
|
|
3583
3443
|
"name": "three",
|
|
3584
3444
|
"parameters": [
|
|
3585
3445
|
{
|
|
3586
3446
|
"name": "props",
|
|
3587
3447
|
"type": {
|
|
3588
|
-
"fqn": "@alma-cdk/project.
|
|
3448
|
+
"fqn": "@alma-cdk/project.AccountStrategyThreeProps"
|
|
3589
3449
|
}
|
|
3590
3450
|
}
|
|
3591
3451
|
],
|
|
@@ -3603,21 +3463,21 @@
|
|
|
3603
3463
|
},
|
|
3604
3464
|
{
|
|
3605
3465
|
"docs": {
|
|
3606
|
-
"example": "
|
|
3466
|
+
"example": "AccountStrategy.two({\n dev: {\n id: '111111111111',\n },\n prod: {\n id: '222222222222',\n },\n}),",
|
|
3607
3467
|
"remarks": "1. `dev` account with environments:\n - development\n - feature/*\n - test\n - qaN\n - staging\n2. `prod` account with environments:\n - preproduction\n - production",
|
|
3608
3468
|
"stability": "experimental",
|
|
3609
3469
|
"summary": "Enables dual account strategy."
|
|
3610
3470
|
},
|
|
3611
3471
|
"locationInModule": {
|
|
3612
3472
|
"filename": "src/configurations/accounts.ts",
|
|
3613
|
-
"line":
|
|
3473
|
+
"line": 121
|
|
3614
3474
|
},
|
|
3615
3475
|
"name": "two",
|
|
3616
3476
|
"parameters": [
|
|
3617
3477
|
{
|
|
3618
3478
|
"name": "props",
|
|
3619
3479
|
"type": {
|
|
3620
|
-
"fqn": "@alma-cdk/project.
|
|
3480
|
+
"fqn": "@alma-cdk/project.AccountStrategyTwoProps"
|
|
3621
3481
|
}
|
|
3622
3482
|
}
|
|
3623
3483
|
],
|
|
@@ -3634,22 +3494,23 @@
|
|
|
3634
3494
|
"static": true
|
|
3635
3495
|
}
|
|
3636
3496
|
],
|
|
3637
|
-
"name": "
|
|
3638
|
-
"symbolId": "src/configurations/accounts:
|
|
3497
|
+
"name": "AccountStrategy",
|
|
3498
|
+
"symbolId": "src/configurations/accounts:AccountStrategy"
|
|
3639
3499
|
},
|
|
3640
|
-
"@alma-cdk/project.
|
|
3500
|
+
"@alma-cdk/project.AccountStrategyOneProps": {
|
|
3641
3501
|
"assembly": "@alma-cdk/project",
|
|
3642
3502
|
"datatype": true,
|
|
3643
3503
|
"docs": {
|
|
3644
|
-
"stability": "experimental"
|
|
3504
|
+
"stability": "experimental",
|
|
3505
|
+
"summary": "Props `AccountStrategy.one`."
|
|
3645
3506
|
},
|
|
3646
|
-
"fqn": "@alma-cdk/project.
|
|
3507
|
+
"fqn": "@alma-cdk/project.AccountStrategyOneProps",
|
|
3647
3508
|
"kind": "interface",
|
|
3648
3509
|
"locationInModule": {
|
|
3649
3510
|
"filename": "src/configurations/accounts.ts",
|
|
3650
|
-
"line":
|
|
3511
|
+
"line": 22
|
|
3651
3512
|
},
|
|
3652
|
-
"name": "
|
|
3513
|
+
"name": "AccountStrategyOneProps",
|
|
3653
3514
|
"properties": [
|
|
3654
3515
|
{
|
|
3655
3516
|
"abstract": true,
|
|
@@ -3659,7 +3520,7 @@
|
|
|
3659
3520
|
"immutable": true,
|
|
3660
3521
|
"locationInModule": {
|
|
3661
3522
|
"filename": "src/configurations/accounts.ts",
|
|
3662
|
-
"line":
|
|
3523
|
+
"line": 24
|
|
3663
3524
|
},
|
|
3664
3525
|
"name": "shared",
|
|
3665
3526
|
"type": {
|
|
@@ -3674,7 +3535,7 @@
|
|
|
3674
3535
|
"immutable": true,
|
|
3675
3536
|
"locationInModule": {
|
|
3676
3537
|
"filename": "src/configurations/accounts.ts",
|
|
3677
|
-
"line":
|
|
3538
|
+
"line": 23
|
|
3678
3539
|
},
|
|
3679
3540
|
"name": "mock",
|
|
3680
3541
|
"optional": true,
|
|
@@ -3683,21 +3544,22 @@
|
|
|
3683
3544
|
}
|
|
3684
3545
|
}
|
|
3685
3546
|
],
|
|
3686
|
-
"symbolId": "src/configurations/accounts:
|
|
3547
|
+
"symbolId": "src/configurations/accounts:AccountStrategyOneProps"
|
|
3687
3548
|
},
|
|
3688
|
-
"@alma-cdk/project.
|
|
3549
|
+
"@alma-cdk/project.AccountStrategyThreeProps": {
|
|
3689
3550
|
"assembly": "@alma-cdk/project",
|
|
3690
3551
|
"datatype": true,
|
|
3691
3552
|
"docs": {
|
|
3692
|
-
"stability": "experimental"
|
|
3553
|
+
"stability": "experimental",
|
|
3554
|
+
"summary": "Props `AccountStrategy.three`."
|
|
3693
3555
|
},
|
|
3694
|
-
"fqn": "@alma-cdk/project.
|
|
3556
|
+
"fqn": "@alma-cdk/project.AccountStrategyThreeProps",
|
|
3695
3557
|
"kind": "interface",
|
|
3696
3558
|
"locationInModule": {
|
|
3697
3559
|
"filename": "src/configurations/accounts.ts",
|
|
3698
|
-
"line":
|
|
3560
|
+
"line": 35
|
|
3699
3561
|
},
|
|
3700
|
-
"name": "
|
|
3562
|
+
"name": "AccountStrategyThreeProps",
|
|
3701
3563
|
"properties": [
|
|
3702
3564
|
{
|
|
3703
3565
|
"abstract": true,
|
|
@@ -3707,7 +3569,7 @@
|
|
|
3707
3569
|
"immutable": true,
|
|
3708
3570
|
"locationInModule": {
|
|
3709
3571
|
"filename": "src/configurations/accounts.ts",
|
|
3710
|
-
"line":
|
|
3572
|
+
"line": 37
|
|
3711
3573
|
},
|
|
3712
3574
|
"name": "dev",
|
|
3713
3575
|
"type": {
|
|
@@ -3722,7 +3584,7 @@
|
|
|
3722
3584
|
"immutable": true,
|
|
3723
3585
|
"locationInModule": {
|
|
3724
3586
|
"filename": "src/configurations/accounts.ts",
|
|
3725
|
-
"line":
|
|
3587
|
+
"line": 38
|
|
3726
3588
|
},
|
|
3727
3589
|
"name": "preprod",
|
|
3728
3590
|
"type": {
|
|
@@ -3737,7 +3599,7 @@
|
|
|
3737
3599
|
"immutable": true,
|
|
3738
3600
|
"locationInModule": {
|
|
3739
3601
|
"filename": "src/configurations/accounts.ts",
|
|
3740
|
-
"line":
|
|
3602
|
+
"line": 39
|
|
3741
3603
|
},
|
|
3742
3604
|
"name": "prod",
|
|
3743
3605
|
"type": {
|
|
@@ -3752,7 +3614,7 @@
|
|
|
3752
3614
|
"immutable": true,
|
|
3753
3615
|
"locationInModule": {
|
|
3754
3616
|
"filename": "src/configurations/accounts.ts",
|
|
3755
|
-
"line":
|
|
3617
|
+
"line": 36
|
|
3756
3618
|
},
|
|
3757
3619
|
"name": "mock",
|
|
3758
3620
|
"optional": true,
|
|
@@ -3761,21 +3623,22 @@
|
|
|
3761
3623
|
}
|
|
3762
3624
|
}
|
|
3763
3625
|
],
|
|
3764
|
-
"symbolId": "src/configurations/accounts:
|
|
3626
|
+
"symbolId": "src/configurations/accounts:AccountStrategyThreeProps"
|
|
3765
3627
|
},
|
|
3766
|
-
"@alma-cdk/project.
|
|
3628
|
+
"@alma-cdk/project.AccountStrategyTwoProps": {
|
|
3767
3629
|
"assembly": "@alma-cdk/project",
|
|
3768
3630
|
"datatype": true,
|
|
3769
3631
|
"docs": {
|
|
3770
|
-
"stability": "experimental"
|
|
3632
|
+
"stability": "experimental",
|
|
3633
|
+
"summary": "Props `AccountStrategy.two`."
|
|
3771
3634
|
},
|
|
3772
|
-
"fqn": "@alma-cdk/project.
|
|
3635
|
+
"fqn": "@alma-cdk/project.AccountStrategyTwoProps",
|
|
3773
3636
|
"kind": "interface",
|
|
3774
3637
|
"locationInModule": {
|
|
3775
3638
|
"filename": "src/configurations/accounts.ts",
|
|
3776
|
-
"line":
|
|
3639
|
+
"line": 28
|
|
3777
3640
|
},
|
|
3778
|
-
"name": "
|
|
3641
|
+
"name": "AccountStrategyTwoProps",
|
|
3779
3642
|
"properties": [
|
|
3780
3643
|
{
|
|
3781
3644
|
"abstract": true,
|
|
@@ -3785,7 +3648,7 @@
|
|
|
3785
3648
|
"immutable": true,
|
|
3786
3649
|
"locationInModule": {
|
|
3787
3650
|
"filename": "src/configurations/accounts.ts",
|
|
3788
|
-
"line":
|
|
3651
|
+
"line": 30
|
|
3789
3652
|
},
|
|
3790
3653
|
"name": "dev",
|
|
3791
3654
|
"type": {
|
|
@@ -3800,7 +3663,7 @@
|
|
|
3800
3663
|
"immutable": true,
|
|
3801
3664
|
"locationInModule": {
|
|
3802
3665
|
"filename": "src/configurations/accounts.ts",
|
|
3803
|
-
"line":
|
|
3666
|
+
"line": 31
|
|
3804
3667
|
},
|
|
3805
3668
|
"name": "prod",
|
|
3806
3669
|
"type": {
|
|
@@ -3815,7 +3678,7 @@
|
|
|
3815
3678
|
"immutable": true,
|
|
3816
3679
|
"locationInModule": {
|
|
3817
3680
|
"filename": "src/configurations/accounts.ts",
|
|
3818
|
-
"line":
|
|
3681
|
+
"line": 29
|
|
3819
3682
|
},
|
|
3820
3683
|
"name": "mock",
|
|
3821
3684
|
"optional": true,
|
|
@@ -3824,7 +3687,152 @@
|
|
|
3824
3687
|
}
|
|
3825
3688
|
}
|
|
3826
3689
|
],
|
|
3827
|
-
"symbolId": "src/configurations/accounts:
|
|
3690
|
+
"symbolId": "src/configurations/accounts:AccountStrategyTwoProps"
|
|
3691
|
+
},
|
|
3692
|
+
"@alma-cdk/project.AccountType": {
|
|
3693
|
+
"assembly": "@alma-cdk/project",
|
|
3694
|
+
"docs": {
|
|
3695
|
+
"stability": "experimental",
|
|
3696
|
+
"summary": "Internal class to handle set/get operations for Account Type."
|
|
3697
|
+
},
|
|
3698
|
+
"fqn": "@alma-cdk/project.AccountType",
|
|
3699
|
+
"initializer": {
|
|
3700
|
+
"docs": {
|
|
3701
|
+
"stability": "experimental"
|
|
3702
|
+
}
|
|
3703
|
+
},
|
|
3704
|
+
"kind": "class",
|
|
3705
|
+
"locationInModule": {
|
|
3706
|
+
"filename": "src/project/account-type.ts",
|
|
3707
|
+
"line": 10
|
|
3708
|
+
},
|
|
3709
|
+
"methods": [
|
|
3710
|
+
{
|
|
3711
|
+
"docs": {
|
|
3712
|
+
"stability": "experimental"
|
|
3713
|
+
},
|
|
3714
|
+
"locationInModule": {
|
|
3715
|
+
"filename": "src/project/account-type.ts",
|
|
3716
|
+
"line": 17
|
|
3717
|
+
},
|
|
3718
|
+
"name": "get",
|
|
3719
|
+
"parameters": [
|
|
3720
|
+
{
|
|
3721
|
+
"name": "scope",
|
|
3722
|
+
"type": {
|
|
3723
|
+
"fqn": "constructs.Construct"
|
|
3724
|
+
}
|
|
3725
|
+
}
|
|
3726
|
+
],
|
|
3727
|
+
"returns": {
|
|
3728
|
+
"type": {
|
|
3729
|
+
"primitive": "string"
|
|
3730
|
+
}
|
|
3731
|
+
},
|
|
3732
|
+
"static": true
|
|
3733
|
+
},
|
|
3734
|
+
{
|
|
3735
|
+
"docs": {
|
|
3736
|
+
"stability": "experimental"
|
|
3737
|
+
},
|
|
3738
|
+
"locationInModule": {
|
|
3739
|
+
"filename": "src/project/account-type.ts",
|
|
3740
|
+
"line": 31
|
|
3741
|
+
},
|
|
3742
|
+
"name": "matchFromEnvironment",
|
|
3743
|
+
"parameters": [
|
|
3744
|
+
{
|
|
3745
|
+
"name": "scope",
|
|
3746
|
+
"type": {
|
|
3747
|
+
"fqn": "constructs.Construct"
|
|
3748
|
+
}
|
|
3749
|
+
},
|
|
3750
|
+
{
|
|
3751
|
+
"name": "accounts",
|
|
3752
|
+
"type": {
|
|
3753
|
+
"collection": {
|
|
3754
|
+
"elementtype": {
|
|
3755
|
+
"fqn": "@alma-cdk/project.Account"
|
|
3756
|
+
},
|
|
3757
|
+
"kind": "map"
|
|
3758
|
+
}
|
|
3759
|
+
}
|
|
3760
|
+
},
|
|
3761
|
+
{
|
|
3762
|
+
"name": "environmentType",
|
|
3763
|
+
"type": {
|
|
3764
|
+
"primitive": "string"
|
|
3765
|
+
}
|
|
3766
|
+
}
|
|
3767
|
+
],
|
|
3768
|
+
"returns": {
|
|
3769
|
+
"type": {
|
|
3770
|
+
"primitive": "string"
|
|
3771
|
+
}
|
|
3772
|
+
},
|
|
3773
|
+
"static": true
|
|
3774
|
+
},
|
|
3775
|
+
{
|
|
3776
|
+
"docs": {
|
|
3777
|
+
"stability": "experimental"
|
|
3778
|
+
},
|
|
3779
|
+
"locationInModule": {
|
|
3780
|
+
"filename": "src/project/account-type.ts",
|
|
3781
|
+
"line": 12
|
|
3782
|
+
},
|
|
3783
|
+
"name": "set",
|
|
3784
|
+
"parameters": [
|
|
3785
|
+
{
|
|
3786
|
+
"name": "scope",
|
|
3787
|
+
"type": {
|
|
3788
|
+
"fqn": "constructs.Construct"
|
|
3789
|
+
}
|
|
3790
|
+
},
|
|
3791
|
+
{
|
|
3792
|
+
"name": "accountType",
|
|
3793
|
+
"type": {
|
|
3794
|
+
"primitive": "string"
|
|
3795
|
+
}
|
|
3796
|
+
}
|
|
3797
|
+
],
|
|
3798
|
+
"static": true
|
|
3799
|
+
}
|
|
3800
|
+
],
|
|
3801
|
+
"name": "AccountType",
|
|
3802
|
+
"symbolId": "src/project/account-type:AccountType"
|
|
3803
|
+
},
|
|
3804
|
+
"@alma-cdk/project.AccountWrapper": {
|
|
3805
|
+
"assembly": "@alma-cdk/project",
|
|
3806
|
+
"base": "constructs.Construct",
|
|
3807
|
+
"docs": {
|
|
3808
|
+
"stability": "experimental",
|
|
3809
|
+
"summary": "Wrapper for account-level stacks."
|
|
3810
|
+
},
|
|
3811
|
+
"fqn": "@alma-cdk/project.AccountWrapper",
|
|
3812
|
+
"initializer": {
|
|
3813
|
+
"docs": {
|
|
3814
|
+
"stability": "experimental"
|
|
3815
|
+
},
|
|
3816
|
+
"locationInModule": {
|
|
3817
|
+
"filename": "src/wrapper/account.ts",
|
|
3818
|
+
"line": 10
|
|
3819
|
+
},
|
|
3820
|
+
"parameters": [
|
|
3821
|
+
{
|
|
3822
|
+
"name": "scope",
|
|
3823
|
+
"type": {
|
|
3824
|
+
"fqn": "constructs.Construct"
|
|
3825
|
+
}
|
|
3826
|
+
}
|
|
3827
|
+
]
|
|
3828
|
+
},
|
|
3829
|
+
"kind": "class",
|
|
3830
|
+
"locationInModule": {
|
|
3831
|
+
"filename": "src/wrapper/account.ts",
|
|
3832
|
+
"line": 8
|
|
3833
|
+
},
|
|
3834
|
+
"name": "AccountWrapper",
|
|
3835
|
+
"symbolId": "src/wrapper/account:AccountWrapper"
|
|
3828
3836
|
},
|
|
3829
3837
|
"@alma-cdk/project.Author": {
|
|
3830
3838
|
"assembly": "@alma-cdk/project",
|
|
@@ -4501,7 +4509,8 @@
|
|
|
4501
4509
|
"assembly": "@alma-cdk/project",
|
|
4502
4510
|
"base": "constructs.Construct",
|
|
4503
4511
|
"docs": {
|
|
4504
|
-
"stability": "experimental"
|
|
4512
|
+
"stability": "experimental",
|
|
4513
|
+
"summary": "Wrapper for environmental stacks."
|
|
4505
4514
|
},
|
|
4506
4515
|
"fqn": "@alma-cdk/project.EnvironmentWrapper",
|
|
4507
4516
|
"initializer": {
|
|
@@ -4510,7 +4519,7 @@
|
|
|
4510
4519
|
},
|
|
4511
4520
|
"locationInModule": {
|
|
4512
4521
|
"filename": "src/wrapper/environment.ts",
|
|
4513
|
-
"line":
|
|
4522
|
+
"line": 9
|
|
4514
4523
|
},
|
|
4515
4524
|
"parameters": [
|
|
4516
4525
|
{
|
|
@@ -4524,7 +4533,7 @@
|
|
|
4524
4533
|
"kind": "class",
|
|
4525
4534
|
"locationInModule": {
|
|
4526
4535
|
"filename": "src/wrapper/environment.ts",
|
|
4527
|
-
"line":
|
|
4536
|
+
"line": 8
|
|
4528
4537
|
},
|
|
4529
4538
|
"name": "EnvironmentWrapper",
|
|
4530
4539
|
"symbolId": "src/wrapper/environment:EnvironmentWrapper"
|
|
@@ -5564,6 +5573,6 @@
|
|
|
5564
5573
|
"symbolId": "src/name/name-url:UrlName"
|
|
5565
5574
|
}
|
|
5566
5575
|
},
|
|
5567
|
-
"version": "0.0.
|
|
5568
|
-
"fingerprint": "
|
|
5576
|
+
"version": "0.0.17",
|
|
5577
|
+
"fingerprint": "OXl2lfPzMoWBNGRkixdEMnL3oE8vp1dDaa2drmST5Mk="
|
|
5569
5578
|
}
|