@jjrawlins/cdk-deploy-pr-github-action 0.0.6 → 0.0.8
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 +13 -13
- package/README.md +164 -1
- package/cdkdeployprgithubaction/jsii/jsii.go +2 -2
- package/cdkdeployprgithubaction/version +1 -1
- package/lib/CdkDeployDispatchWorkflow.js +1 -1
- package/lib/CdkDeployPipeline.js +18 -11
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -3499,7 +3499,7 @@
|
|
|
3499
3499
|
},
|
|
3500
3500
|
"name": "@jjrawlins/cdk-deploy-pr-github-action",
|
|
3501
3501
|
"readme": {
|
|
3502
|
-
"markdown": "#
|
|
3502
|
+
"markdown": "# @jjrawlins/cdk-deploy-pr-github-action\n\nA [projen](https://projen.io/) construct that generates GitHub Actions workflows for AWS CDK deployments.\n\n## Features\n\n- **Automated deploy pipeline** (`deploy.yml`) — synth, publish assets, and deploy on push to main\n- **Manual dispatch workflow** (`deploy-dispatch.yml`) — deploy any previously published version to any environment\n- **Versioned cloud assemblies** — publishes `cdk.out` to GitHub Packages with auto-incrementing versions\n- **GitHub Releases** — each deploy creates a git tag and GitHub Release tied to the assembly version\n- **Multi-stage deployments** — parallel or sequential stages with `dependsOn` ordering\n- **GitHub Environments** — per-stage environment protection rules, secrets scoping, and deployment approvals\n- **Manual approval stages** — exclude stages from auto-deploy, only deployable via dispatch\n- **Per-stage IAM role overrides** — cross-account deployments with per-stage OIDC roles\n- **Concurrency groups** — prevents concurrent deployments to the same stage\n- **Rollback support** — redeploy any previous assembly version via the dispatch workflow\n\n## Installation\n\n```bash\nnpm install @jjrawlins/cdk-deploy-pr-github-action\n```\n\nAlso available on [PyPI](https://pypi.org/project/jjrawlins-cdk-deploy-pr-github-action/), [NuGet](https://www.nuget.org/packages/JJRawlins.CdkDeployPrGithubAction), and [Go](https://pkg.go.dev/github.com/JaysonRawlins/cdk-deploy-pr-github-action).\n\n## Usage\n\nIn your `.projenrc.ts`:\n\n```typescript\nimport { CdkDeployPipeline } from '@jjrawlins/cdk-deploy-pr-github-action';\n\nnew CdkDeployPipeline(project, {\n stackPrefix: 'MyApp',\n pkgNamespace: '@my-org',\n iamRoleArn: 'arn:aws:iam::111111111111:role/GitHubActionsOidcRole',\n iamRoleRegion: 'us-east-1',\n stages: [\n {\n name: 'dev',\n env: { account: '222222222222', region: 'us-east-1' },\n environment: 'development',\n },\n {\n name: 'staging',\n env: { account: '333333333333', region: 'us-east-1' },\n environment: 'staging',\n dependsOn: ['dev'],\n },\n {\n name: 'prod',\n env: { account: '444444444444', region: 'us-east-1' },\n environment: 'production',\n dependsOn: ['staging'],\n manualApproval: true, // Only deployable via dispatch\n },\n ],\n});\n```\n\nRun `npx projen` to generate the workflow files.\n\n## Generated Workflows\n\n### `deploy.yml`\n\nTriggered on push to main. Jobs:\n\n1. **synth** — checks out code, installs dependencies, runs `cdk synth`, uploads cloud assembly artifact\n2. **publish-assets** — publishes Lambda/container assets to AWS, versions and publishes the cloud assembly to GitHub Packages, creates a git tag and GitHub Release\n3. **deploy-{stage}** — one job per non-manual stage, deploys stacks using the cloud assembly artifact\n\n### `deploy-dispatch.yml`\n\nTriggered manually via `workflow_dispatch`. Inputs:\n\n- **environment** — target environment (dropdown of configured stages)\n- **version** — assembly version to deploy (e.g., `0.0.4`)\n\nDownloads the specified assembly version from GitHub Packages and deploys it. This enables:\n\n- Deploying to `manualApproval` stages (e.g., production)\n- Rolling back to any previous version\n- Ad-hoc deployments outside the normal CI/CD flow\n\n## Options\n\n### `CdkDeployPipelineOptions`\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `pkgNamespace` | `string` | *required* | npm scope for assembly packages (e.g., `@my-org`) |\n| `stackPrefix` | `string` | *required* | Stack name prefix (e.g., `MyApp` -> `MyApp-dev`) |\n| `iamRoleArn` | `string` | *required* | Default OIDC role ARN for AWS credential assumption |\n| `stages` | `DeployStageOptions[]` | *required* | Deployment stages |\n| `iamRoleRegion` | `string` | `us-east-1` | Default AWS region for OIDC credential assumption |\n| `nodeVersion` | `string` | `24.x` | Node.js version for workflow runners |\n| `cdkCommand` | `string` | `npx cdk` | CDK CLI command prefix |\n| `installCommand` | `string` | `yarn install --check-files --frozen-lockfile` | Package install command |\n| `manualDeployment` | `boolean` | `true` | Generate the dispatch workflow |\n| `useGithubPackagesForAssembly` | `boolean` | `true` | Publish cloud assembly to GitHub Packages |\n| `branchName` | `string` | `main` | Branch that triggers deployments |\n\n### `DeployStageOptions`\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `name` | `string` | *required* | Stage name (used in job IDs and stack names) |\n| `env` | `{ account, region }` | *required* | AWS target environment |\n| `environment` | `string` | stage name | GitHub Environment name |\n| `iamRoleArn` | `string` | pipeline default | Override OIDC role for this stage |\n| `iamRoleRegion` | `string` | pipeline default | Override AWS region for this stage |\n| `dependsOn` | `string[]` | `[]` | Stages that must complete first |\n| `stacks` | `string[]` | `['{stackPrefix}-{name}']` | CDK stack names to deploy |\n| `manualApproval` | `boolean` | `false` | Exclude from auto-deploy, dispatch only |\n\n## Examples\n\n### Parallel stages\n\nStages without `dependsOn` run in parallel after asset publishing:\n\n```typescript\nstages: [\n { name: 'us-east-1', env: usEast1Env },\n { name: 'eu-west-1', env: euWest1Env },\n]\n```\n\n### Cross-account with per-stage roles\n\n```typescript\nstages: [\n {\n name: 'dev',\n env: { account: '222222222222', region: 'us-east-1' },\n iamRoleArn: 'arn:aws:iam::222222222222:role/DevDeployRole',\n },\n {\n name: 'prod',\n env: { account: '333333333333', region: 'us-east-1' },\n iamRoleArn: 'arn:aws:iam::333333333333:role/ProdDeployRole',\n manualApproval: true,\n },\n]\n```\n\n### Rolling back\n\nEach deploy creates a GitHub Release with the assembly version. To roll back:\n\n```bash\ngh workflow run deploy-dispatch.yml -f environment=production -f version=0.0.3\n```\n\n## Prerequisites\n\n- AWS OIDC identity provider configured for GitHub Actions\n- IAM role with trust policy for GitHub Actions OIDC\n- GitHub Environments configured for deployment protection rules (optional)\n\n## License\n\nApache-2.0\n"
|
|
3503
3503
|
},
|
|
3504
3504
|
"repository": {
|
|
3505
3505
|
"type": "git",
|
|
@@ -3878,7 +3878,7 @@
|
|
|
3878
3878
|
"kind": "interface",
|
|
3879
3879
|
"locationInModule": {
|
|
3880
3880
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3881
|
-
"line":
|
|
3881
|
+
"line": 354
|
|
3882
3882
|
},
|
|
3883
3883
|
"name": "DeployDispatchInternalOptions",
|
|
3884
3884
|
"properties": [
|
|
@@ -3890,7 +3890,7 @@
|
|
|
3890
3890
|
"immutable": true,
|
|
3891
3891
|
"locationInModule": {
|
|
3892
3892
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3893
|
-
"line":
|
|
3893
|
+
"line": 357
|
|
3894
3894
|
},
|
|
3895
3895
|
"name": "appName",
|
|
3896
3896
|
"type": {
|
|
@@ -3905,7 +3905,7 @@
|
|
|
3905
3905
|
"immutable": true,
|
|
3906
3906
|
"locationInModule": {
|
|
3907
3907
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3908
|
-
"line":
|
|
3908
|
+
"line": 362
|
|
3909
3909
|
},
|
|
3910
3910
|
"name": "cdkCommand",
|
|
3911
3911
|
"type": {
|
|
@@ -3920,7 +3920,7 @@
|
|
|
3920
3920
|
"immutable": true,
|
|
3921
3921
|
"locationInModule": {
|
|
3922
3922
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3923
|
-
"line":
|
|
3923
|
+
"line": 359
|
|
3924
3924
|
},
|
|
3925
3925
|
"name": "iamRoleArn",
|
|
3926
3926
|
"type": {
|
|
@@ -3935,7 +3935,7 @@
|
|
|
3935
3935
|
"immutable": true,
|
|
3936
3936
|
"locationInModule": {
|
|
3937
3937
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3938
|
-
"line":
|
|
3938
|
+
"line": 360
|
|
3939
3939
|
},
|
|
3940
3940
|
"name": "iamRoleRegion",
|
|
3941
3941
|
"type": {
|
|
@@ -3950,7 +3950,7 @@
|
|
|
3950
3950
|
"immutable": true,
|
|
3951
3951
|
"locationInModule": {
|
|
3952
3952
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3953
|
-
"line":
|
|
3953
|
+
"line": 363
|
|
3954
3954
|
},
|
|
3955
3955
|
"name": "installCommand",
|
|
3956
3956
|
"type": {
|
|
@@ -3965,7 +3965,7 @@
|
|
|
3965
3965
|
"immutable": true,
|
|
3966
3966
|
"locationInModule": {
|
|
3967
3967
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3968
|
-
"line":
|
|
3968
|
+
"line": 361
|
|
3969
3969
|
},
|
|
3970
3970
|
"name": "nodeVersion",
|
|
3971
3971
|
"type": {
|
|
@@ -3980,7 +3980,7 @@
|
|
|
3980
3980
|
"immutable": true,
|
|
3981
3981
|
"locationInModule": {
|
|
3982
3982
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3983
|
-
"line":
|
|
3983
|
+
"line": 356
|
|
3984
3984
|
},
|
|
3985
3985
|
"name": "pkgNamespace",
|
|
3986
3986
|
"type": {
|
|
@@ -3995,7 +3995,7 @@
|
|
|
3995
3995
|
"immutable": true,
|
|
3996
3996
|
"locationInModule": {
|
|
3997
3997
|
"filename": "src/CdkDeployPipeline.ts",
|
|
3998
|
-
"line":
|
|
3998
|
+
"line": 358
|
|
3999
3999
|
},
|
|
4000
4000
|
"name": "stackPrefix",
|
|
4001
4001
|
"type": {
|
|
@@ -4010,7 +4010,7 @@
|
|
|
4010
4010
|
"immutable": true,
|
|
4011
4011
|
"locationInModule": {
|
|
4012
4012
|
"filename": "src/CdkDeployPipeline.ts",
|
|
4013
|
-
"line":
|
|
4013
|
+
"line": 355
|
|
4014
4014
|
},
|
|
4015
4015
|
"name": "stages",
|
|
4016
4016
|
"type": {
|
|
@@ -4197,6 +4197,6 @@
|
|
|
4197
4197
|
"symbolId": "src/types:DeployStageOptions"
|
|
4198
4198
|
}
|
|
4199
4199
|
},
|
|
4200
|
-
"version": "0.0.
|
|
4201
|
-
"fingerprint": "
|
|
4200
|
+
"version": "0.0.8",
|
|
4201
|
+
"fingerprint": "egbFOWI4RgOQ2mJGGcPSVGdJswsyJ/utU8J8LbVZTt4="
|
|
4202
4202
|
}
|
package/README.md
CHANGED
|
@@ -1 +1,164 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @jjrawlins/cdk-deploy-pr-github-action
|
|
2
|
+
|
|
3
|
+
A [projen](https://projen.io/) construct that generates GitHub Actions workflows for AWS CDK deployments.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Automated deploy pipeline** (`deploy.yml`) — synth, publish assets, and deploy on push to main
|
|
8
|
+
- **Manual dispatch workflow** (`deploy-dispatch.yml`) — deploy any previously published version to any environment
|
|
9
|
+
- **Versioned cloud assemblies** — publishes `cdk.out` to GitHub Packages with auto-incrementing versions
|
|
10
|
+
- **GitHub Releases** — each deploy creates a git tag and GitHub Release tied to the assembly version
|
|
11
|
+
- **Multi-stage deployments** — parallel or sequential stages with `dependsOn` ordering
|
|
12
|
+
- **GitHub Environments** — per-stage environment protection rules, secrets scoping, and deployment approvals
|
|
13
|
+
- **Manual approval stages** — exclude stages from auto-deploy, only deployable via dispatch
|
|
14
|
+
- **Per-stage IAM role overrides** — cross-account deployments with per-stage OIDC roles
|
|
15
|
+
- **Concurrency groups** — prevents concurrent deployments to the same stage
|
|
16
|
+
- **Rollback support** — redeploy any previous assembly version via the dispatch workflow
|
|
17
|
+
|
|
18
|
+
## Installation
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install @jjrawlins/cdk-deploy-pr-github-action
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Also available on [PyPI](https://pypi.org/project/jjrawlins-cdk-deploy-pr-github-action/), [NuGet](https://www.nuget.org/packages/JJRawlins.CdkDeployPrGithubAction), and [Go](https://pkg.go.dev/github.com/JaysonRawlins/cdk-deploy-pr-github-action).
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
In your `.projenrc.ts`:
|
|
29
|
+
|
|
30
|
+
```typescript
|
|
31
|
+
import { CdkDeployPipeline } from '@jjrawlins/cdk-deploy-pr-github-action';
|
|
32
|
+
|
|
33
|
+
new CdkDeployPipeline(project, {
|
|
34
|
+
stackPrefix: 'MyApp',
|
|
35
|
+
pkgNamespace: '@my-org',
|
|
36
|
+
iamRoleArn: 'arn:aws:iam::111111111111:role/GitHubActionsOidcRole',
|
|
37
|
+
iamRoleRegion: 'us-east-1',
|
|
38
|
+
stages: [
|
|
39
|
+
{
|
|
40
|
+
name: 'dev',
|
|
41
|
+
env: { account: '222222222222', region: 'us-east-1' },
|
|
42
|
+
environment: 'development',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'staging',
|
|
46
|
+
env: { account: '333333333333', region: 'us-east-1' },
|
|
47
|
+
environment: 'staging',
|
|
48
|
+
dependsOn: ['dev'],
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'prod',
|
|
52
|
+
env: { account: '444444444444', region: 'us-east-1' },
|
|
53
|
+
environment: 'production',
|
|
54
|
+
dependsOn: ['staging'],
|
|
55
|
+
manualApproval: true, // Only deployable via dispatch
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
});
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Run `npx projen` to generate the workflow files.
|
|
62
|
+
|
|
63
|
+
## Generated Workflows
|
|
64
|
+
|
|
65
|
+
### `deploy.yml`
|
|
66
|
+
|
|
67
|
+
Triggered on push to main. Jobs:
|
|
68
|
+
|
|
69
|
+
1. **synth** — checks out code, installs dependencies, runs `cdk synth`, uploads cloud assembly artifact
|
|
70
|
+
2. **publish-assets** — publishes Lambda/container assets to AWS, versions and publishes the cloud assembly to GitHub Packages, creates a git tag and GitHub Release
|
|
71
|
+
3. **deploy-{stage}** — one job per non-manual stage, deploys stacks using the cloud assembly artifact
|
|
72
|
+
|
|
73
|
+
### `deploy-dispatch.yml`
|
|
74
|
+
|
|
75
|
+
Triggered manually via `workflow_dispatch`. Inputs:
|
|
76
|
+
|
|
77
|
+
- **environment** — target environment (dropdown of configured stages)
|
|
78
|
+
- **version** — assembly version to deploy (e.g., `0.0.4`)
|
|
79
|
+
|
|
80
|
+
Downloads the specified assembly version from GitHub Packages and deploys it. This enables:
|
|
81
|
+
|
|
82
|
+
- Deploying to `manualApproval` stages (e.g., production)
|
|
83
|
+
- Rolling back to any previous version
|
|
84
|
+
- Ad-hoc deployments outside the normal CI/CD flow
|
|
85
|
+
|
|
86
|
+
## Options
|
|
87
|
+
|
|
88
|
+
### `CdkDeployPipelineOptions`
|
|
89
|
+
|
|
90
|
+
| Option | Type | Default | Description |
|
|
91
|
+
|--------|------|---------|-------------|
|
|
92
|
+
| `pkgNamespace` | `string` | *required* | npm scope for assembly packages (e.g., `@my-org`) |
|
|
93
|
+
| `stackPrefix` | `string` | *required* | Stack name prefix (e.g., `MyApp` -> `MyApp-dev`) |
|
|
94
|
+
| `iamRoleArn` | `string` | *required* | Default OIDC role ARN for AWS credential assumption |
|
|
95
|
+
| `stages` | `DeployStageOptions[]` | *required* | Deployment stages |
|
|
96
|
+
| `iamRoleRegion` | `string` | `us-east-1` | Default AWS region for OIDC credential assumption |
|
|
97
|
+
| `nodeVersion` | `string` | `24.x` | Node.js version for workflow runners |
|
|
98
|
+
| `cdkCommand` | `string` | `npx cdk` | CDK CLI command prefix |
|
|
99
|
+
| `installCommand` | `string` | `yarn install --check-files --frozen-lockfile` | Package install command |
|
|
100
|
+
| `manualDeployment` | `boolean` | `true` | Generate the dispatch workflow |
|
|
101
|
+
| `useGithubPackagesForAssembly` | `boolean` | `true` | Publish cloud assembly to GitHub Packages |
|
|
102
|
+
| `branchName` | `string` | `main` | Branch that triggers deployments |
|
|
103
|
+
|
|
104
|
+
### `DeployStageOptions`
|
|
105
|
+
|
|
106
|
+
| Option | Type | Default | Description |
|
|
107
|
+
|--------|------|---------|-------------|
|
|
108
|
+
| `name` | `string` | *required* | Stage name (used in job IDs and stack names) |
|
|
109
|
+
| `env` | `{ account, region }` | *required* | AWS target environment |
|
|
110
|
+
| `environment` | `string` | stage name | GitHub Environment name |
|
|
111
|
+
| `iamRoleArn` | `string` | pipeline default | Override OIDC role for this stage |
|
|
112
|
+
| `iamRoleRegion` | `string` | pipeline default | Override AWS region for this stage |
|
|
113
|
+
| `dependsOn` | `string[]` | `[]` | Stages that must complete first |
|
|
114
|
+
| `stacks` | `string[]` | `['{stackPrefix}-{name}']` | CDK stack names to deploy |
|
|
115
|
+
| `manualApproval` | `boolean` | `false` | Exclude from auto-deploy, dispatch only |
|
|
116
|
+
|
|
117
|
+
## Examples
|
|
118
|
+
|
|
119
|
+
### Parallel stages
|
|
120
|
+
|
|
121
|
+
Stages without `dependsOn` run in parallel after asset publishing:
|
|
122
|
+
|
|
123
|
+
```typescript
|
|
124
|
+
stages: [
|
|
125
|
+
{ name: 'us-east-1', env: usEast1Env },
|
|
126
|
+
{ name: 'eu-west-1', env: euWest1Env },
|
|
127
|
+
]
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Cross-account with per-stage roles
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
stages: [
|
|
134
|
+
{
|
|
135
|
+
name: 'dev',
|
|
136
|
+
env: { account: '222222222222', region: 'us-east-1' },
|
|
137
|
+
iamRoleArn: 'arn:aws:iam::222222222222:role/DevDeployRole',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
name: 'prod',
|
|
141
|
+
env: { account: '333333333333', region: 'us-east-1' },
|
|
142
|
+
iamRoleArn: 'arn:aws:iam::333333333333:role/ProdDeployRole',
|
|
143
|
+
manualApproval: true,
|
|
144
|
+
},
|
|
145
|
+
]
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### Rolling back
|
|
149
|
+
|
|
150
|
+
Each deploy creates a GitHub Release with the assembly version. To roll back:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
gh workflow run deploy-dispatch.yml -f environment=production -f version=0.0.3
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## Prerequisites
|
|
157
|
+
|
|
158
|
+
- AWS OIDC identity provider configured for GitHub Actions
|
|
159
|
+
- IAM role with trust policy for GitHub Actions OIDC
|
|
160
|
+
- GitHub Environments configured for deployment protection rules (optional)
|
|
161
|
+
|
|
162
|
+
## License
|
|
163
|
+
|
|
164
|
+
Apache-2.0
|
|
@@ -13,7 +13,7 @@ import (
|
|
|
13
13
|
constructs "github.com/aws/constructs-go/constructs/v10/jsii"
|
|
14
14
|
)
|
|
15
15
|
|
|
16
|
-
//go:embed jjrawlins-cdk-deploy-pr-github-action-0.0.
|
|
16
|
+
//go:embed jjrawlins-cdk-deploy-pr-github-action-0.0.7.tgz
|
|
17
17
|
var tarball []byte
|
|
18
18
|
|
|
19
19
|
// Initialize loads the necessary packages in the @jsii/kernel to support the enclosing module.
|
|
@@ -24,5 +24,5 @@ func Initialize() {
|
|
|
24
24
|
constructs.Initialize()
|
|
25
25
|
|
|
26
26
|
// Load this library into the kernel
|
|
27
|
-
_jsii_.Load("@jjrawlins/cdk-deploy-pr-github-action", "0.0.
|
|
27
|
+
_jsii_.Load("@jjrawlins/cdk-deploy-pr-github-action", "0.0.7", tarball)
|
|
28
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0.0.
|
|
1
|
+
0.0.7
|
|
@@ -113,5 +113,5 @@ class CdkDeployDispatchWorkflow {
|
|
|
113
113
|
}
|
|
114
114
|
exports.CdkDeployDispatchWorkflow = CdkDeployDispatchWorkflow;
|
|
115
115
|
_a = JSII_RTTI_SYMBOL_1;
|
|
116
|
-
CdkDeployDispatchWorkflow[_a] = { fqn: "@jjrawlins/cdk-deploy-pr-github-action.CdkDeployDispatchWorkflow", version: "0.0.
|
|
116
|
+
CdkDeployDispatchWorkflow[_a] = { fqn: "@jjrawlins/cdk-deploy-pr-github-action.CdkDeployDispatchWorkflow", version: "0.0.8" };
|
|
117
117
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DZGtEZXBsb3lEaXNwYXRjaFdvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOENBQTJEO0FBQzNELHVFQUFrRTtBQUVsRSxtQ0FBc0M7QUFFdEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7QUFDOUIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDaEMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFFckM7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFhLHlCQUF5QjtJQUNwQyxZQUFZLE9BQVksRUFBRSxPQUFzQztRQUM5RCxNQUFNLEVBQ0osTUFBTSxFQUNOLFlBQVksRUFDWixPQUFPLEVBQ1AsV0FBVyxFQUNYLFVBQVUsRUFDVixhQUFhLEVBQ2IsV0FBVyxFQUNYLFVBQVUsRUFDVixjQUFjLEdBQ2YsR0FBRyxPQUFPLENBQUM7UUFFWixNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksZUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sUUFBUSxHQUFHLElBQUksdUJBQWMsQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLEVBQUU7WUFDekQsUUFBUSxFQUFFLHFCQUFxQjtTQUNoQyxDQUFDLENBQUM7UUFFSCx3Q0FBd0M7UUFDeEMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUNuQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMvQixDQUFDO1FBRUYsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNWLGdCQUFnQixFQUFFO2dCQUNoQixNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFO3dCQUNYLFdBQVcsRUFBRSxpQ0FBaUM7d0JBQzlDLFFBQVEsRUFBRSxJQUFJO3dCQUNkLElBQUksRUFBRSxRQUFR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RDt3QkFDRSxJQUFJLEVBQUUsVUFBVSxLQUFLLENBQUMsSUFBSSxFQUFFO3dCQUM1QixHQUFHLEVBQUUsYUFBYTtxQkFDbkI7aUJBQ0Y7YUFDRixDQUFDO1FBQ0osQ0FBQztRQUVELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQzs7QUFoSEgsOERBaUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2l0SHViLCBHaXRodWJXb3JrZmxvdyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24gfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnO1xuaW1wb3J0IHsgRGVwbG95RGlzcGF0Y2hJbnRlcm5hbE9wdGlvbnMgfSBmcm9tICcuL0Nka0RlcGxveVBpcGVsaW5lJztcbmltcG9ydCB7IHRvS2ViYWJDYXNlIH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IENIRUNLT1VUX1ZFUlNJT04gPSAndjUnO1xuY29uc3QgU0VUVVBfTk9ERV9WRVJTSU9OID0gJ3Y1JztcbmNvbnN0IEFXU19DUkVERU5USUFMU19WRVJTSU9OID0gJ3Y1JztcblxuLyoqXG4gKiBHZW5lcmF0ZXMgYSB3b3JrZmxvd19kaXNwYXRjaCB3b3JrZmxvdyBmb3IgbWFudWFsIENESyBkZXBsb3ltZW50cyBhbmQgcm9sbGJhY2tzLlxuICpcbiAqIEFsbG93cyBkZXBsb3lpbmcgYW55IHByZXZpb3VzbHkgcHVibGlzaGVkIHZlcnNpb24gb2YgdGhlIGNsb3VkIGFzc2VtYmx5XG4gKiB0byBhbnkgY29uZmlndXJlZCBlbnZpcm9ubWVudC4gVGhpcyBlbmFibGVzOlxuICogLSBNYW51YWwgcHJvbW90aW9uIGJldHdlZW4gZW52aXJvbm1lbnRzXG4gKiAtIFJvbGxiYWNrIHRvIGFueSBwcmV2aW91cyB2ZXJzaW9uXG4gKiAtIEFkLWhvYyBkZXBsb3ltZW50cyBvdXRzaWRlIHRoZSBub3JtYWwgQ0kvQ0QgZmxvd1xuICovXG5leHBvcnQgY2xhc3MgQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IGFueSwgb3B0aW9uczogRGVwbG95RGlzcGF0Y2hJbnRlcm5hbE9wdGlvbnMpIHtcbiAgICBjb25zdCB7XG4gICAgICBzdGFnZXMsXG4gICAgICBwa2dOYW1lc3BhY2UsXG4gICAgICBhcHBOYW1lLFxuICAgICAgc3RhY2tQcmVmaXgsXG4gICAgICBpYW1Sb2xlQXJuLFxuICAgICAgaWFtUm9sZVJlZ2lvbixcbiAgICAgIG5vZGVWZXJzaW9uLFxuICAgICAgY2RrQ29tbWFuZCxcbiAgICAgIGluc3RhbGxDb21tYW5kLFxuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgY29uc3QgZ2ggPSBwcm9qZWN0LmdpdGh1YiA/PyBuZXcgR2l0SHViKHByb2plY3QpO1xuICAgIGNvbnN0IHdvcmtmbG93ID0gbmV3IEdpdGh1YldvcmtmbG93KGdoLCAnZGVwbG95LWRpc3BhdGNoJywge1xuICAgICAgZmlsZU5hbWU6ICdkZXBsb3ktZGlzcGF0Y2gueW1sJyxcbiAgICB9KTtcblxuICAgIC8vIEJ1aWxkIGVudmlyb25tZW50IGNob2ljZXMgZnJvbSBzdGFnZXNcbiAgICBjb25zdCBlbnZpcm9ubWVudENob2ljZXMgPSBzdGFnZXMubWFwKFxuICAgICAgKHMpID0+IHMuZW52aXJvbm1lbnQgPz8gcy5uYW1lLFxuICAgICk7XG5cbiAgICB3b3JrZmxvdy5vbih7XG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7XG4gICAgICAgIGlucHV0czoge1xuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RhcmdldCBlbnZpcm9ubWVudCB0byBkZXBsb3kgdG8nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICB0eXBlOiAnY2hvaWNlJyxcbiAgICAgICAgICAgIG9wdGlvbnM6IGVudmlyb25tZW50Q2hvaWNlcyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHZlcnNpb246IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnQXNzZW1ibHkgdmVyc2lvbiB0byBkZXBsb3kgKGUuZy4sIDEuMy40KScsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3Qgam9iczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGNvbnN0IGpvYklkID0gYGRlcGxveS0ke3RvS2ViYWJDYXNlKHN0YWdlLm5hbWUpfWA7XG4gICAgICBjb25zdCBzdGFja3MgPSBzdGFnZS5zdGFja3MgPz8gW2Ake3N0YWNrUHJlZml4fS0ke3N0YWdlLm5hbWV9YF07XG4gICAgICBjb25zdCBnaXRodWJFbnYgPSBzdGFnZS5lbnZpcm9ubWVudCA/PyBzdGFnZS5uYW1lO1xuICAgICAgY29uc3Qgcm9sZUFybiA9IHN0YWdlLmlhbVJvbGVBcm4gPz8gaWFtUm9sZUFybjtcbiAgICAgIGNvbnN0IHJvbGVSZWdpb24gPVxuICAgICAgICBzdGFnZS5pYW1Sb2xlUmVnaW9uID8/IGlhbVJvbGVSZWdpb24gPz8gc3RhZ2UuZW52LnJlZ2lvbjtcblxuICAgICAgY29uc3QgZGVwbG95Q29tbWFuZCA9IHN0YWNrc1xuICAgICAgICAubWFwKChzKSA9PiBgJHtjZGtDb21tYW5kfSBkZXBsb3kgJHtzfSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXIgLS1hcHAgY2RrLm91dGApXG4gICAgICAgIC5qb2luKCcgJiYgJyk7XG5cbiAgICAgIGpvYnNbam9iSWRdID0ge1xuICAgICAgICBuYW1lOiBgRGVwbG95ICR7c3RhZ2UubmFtZX0gKG1hbnVhbClgLFxuICAgICAgICBpZjogYGdpdGh1Yi5ldmVudC5pbnB1dHMuZW52aXJvbm1lbnQgPT0gJyR7Z2l0aHViRW52fSdgLFxuICAgICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgICBlbnZpcm9ubWVudDogZ2l0aHViRW52LFxuICAgICAgICBjb25jdXJyZW5jeToge1xuICAgICAgICAgICdncm91cCc6IGBkZXBsb3ktJHt0b0tlYmFiQ2FzZShzdGFnZS5uYW1lKX1gLFxuICAgICAgICAgICdjYW5jZWwtaW4tcHJvZ3Jlc3MnOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICAgIHBhY2thZ2VzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgaWRUb2tlbjogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgfSxcbiAgICAgICAgZW52OiB7IENJOiAndHJ1ZScgfSxcbiAgICAgICAgc3RlcHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQ2hlY2tvdXQnLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvY2hlY2tvdXRAJHtDSEVDS09VVF9WRVJTSU9OfWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnU2V0dXAgTm9kZS5qcycsXG4gICAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICAgICdub2RlLXZlcnNpb24nOiBub2RlVmVyc2lvbixcbiAgICAgICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0luc3RhbGwgZGVwZW5kZW5jaWVzJyxcbiAgICAgICAgICAgIHJ1bjogaW5zdGFsbENvbW1hbmQsXG4gICAgICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0Rvd25sb2FkIHZlcnNpb25lZCBhc3NlbWJseScsXG4gICAgICAgICAgICBydW46IGBucG0gcGFjayAke3BrZ05hbWVzcGFjZX0vJHthcHBOYW1lfUBcXCR7eyBnaXRodWIuZXZlbnQuaW5wdXRzLnZlcnNpb24gfX0gJiYgdGFyIC14emYgKi50Z3ogJiYgbXYgcGFja2FnZSBjZGsub3V0YCxcbiAgICAgICAgICAgIGVudjogeyBOT0RFX0FVVEhfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLCBHSVRIVUJfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQVdTIENyZWRlbnRpYWxzJyxcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7QVdTX0NSRURFTlRJQUxTX1ZFUlNJT059YCxcbiAgICAgICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAgICAgJ3JvbGUtdG8tYXNzdW1lJzogcm9sZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogcm9sZVJlZ2lvbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBgRGVwbG95ICR7c3RhZ2UubmFtZX1gLFxuICAgICAgICAgICAgcnVuOiBkZXBsb3lDb21tYW5kLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIHdvcmtmbG93LmFkZEpvYnMoam9icyk7XG4gIH1cbn1cbiJdfQ==
|
package/lib/CdkDeployPipeline.js
CHANGED
|
@@ -171,17 +171,24 @@ class CdkDeployPipeline {
|
|
|
171
171
|
run: [
|
|
172
172
|
'cd cdk.out && npm publish --registry=https://npm.pkg.github.com',
|
|
173
173
|
'VERSION=$(node -p "require(\'./package.json\').version")',
|
|
174
|
-
'echo "
|
|
175
|
-
'echo "" >> $GITHUB_STEP_SUMMARY',
|
|
176
|
-
`echo "**Package:** \\\`${pkgNamespace}/${appName}\\\`" >> $GITHUB_STEP_SUMMARY`,
|
|
177
|
-
'echo "**Version:** \\`$VERSION\\`" >> $GITHUB_STEP_SUMMARY',
|
|
178
|
-
'echo "" >> $GITHUB_STEP_SUMMARY',
|
|
179
|
-
'echo "To deploy this version manually:" >> $GITHUB_STEP_SUMMARY',
|
|
180
|
-
'echo "\\`\\`\\`" >> $GITHUB_STEP_SUMMARY',
|
|
181
|
-
'echo "gh workflow run deploy-dispatch.yml -f environment=<env> -f version=$VERSION" >> $GITHUB_STEP_SUMMARY',
|
|
182
|
-
'echo "\\`\\`\\`" >> $GITHUB_STEP_SUMMARY',
|
|
174
|
+
'echo "ASSEMBLY_VERSION=$VERSION" >> $GITHUB_ENV',
|
|
183
175
|
].join('\n'),
|
|
184
176
|
env: { NODE_AUTH_TOKEN: '${{ secrets.GITHUB_TOKEN }}', GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' },
|
|
177
|
+
}, {
|
|
178
|
+
name: 'Tag and release assembly version',
|
|
179
|
+
run: [
|
|
180
|
+
'git tag "v${ASSEMBLY_VERSION}"',
|
|
181
|
+
'git push origin "v${ASSEMBLY_VERSION}"',
|
|
182
|
+
].join('\n'),
|
|
183
|
+
}, {
|
|
184
|
+
name: 'Create GitHub Release',
|
|
185
|
+
uses: 'softprops/action-gh-release@v2',
|
|
186
|
+
with: {
|
|
187
|
+
tag_name: 'v${{ env.ASSEMBLY_VERSION }}',
|
|
188
|
+
name: 'v${{ env.ASSEMBLY_VERSION }}',
|
|
189
|
+
body: `Assembly \`${pkgNamespace}/${appName}@\${{ env.ASSEMBLY_VERSION }}\` published to GitHub Packages.\n\nDeploy manually:\n\`\`\`\ngh workflow run deploy-dispatch.yml -f environment=<env> -f version=\${{ env.ASSEMBLY_VERSION }}\n\`\`\``,
|
|
190
|
+
generate_release_notes: true,
|
|
191
|
+
},
|
|
185
192
|
});
|
|
186
193
|
}
|
|
187
194
|
jobs['publish-assets'] = {
|
|
@@ -297,5 +304,5 @@ class CdkDeployPipeline {
|
|
|
297
304
|
}
|
|
298
305
|
exports.CdkDeployPipeline = CdkDeployPipeline;
|
|
299
306
|
_a = JSII_RTTI_SYMBOL_1;
|
|
300
|
-
CdkDeployPipeline[_a] = { fqn: "@jjrawlins/cdk-deploy-pr-github-action.CdkDeployPipeline", version: "0.0.
|
|
301
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRGVwbG95UGlwZWxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQ2RrRGVwbG95UGlwZWxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw4Q0FBMkQ7QUFDM0QsdUVBQWtFO0FBQ2xFLDJFQUF3RTtBQUV4RSxtQ0FBd0Q7QUFFeEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7QUFDOUIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDaEMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFDckMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFDckMsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLENBQUM7QUFFdkM7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxpQkFBaUI7SUFDNUIsWUFBWSxPQUFZLEVBQUUsT0FBaUM7UUFDekQsTUFBTSxFQUNKLFlBQVksRUFDWixXQUFXLEVBQ1gsVUFBVSxFQUNWLGFBQWEsR0FBRyxXQUFXLEVBQzNCLFdBQVcsR0FBRyxNQUFNLEVBQ3BCLFVBQVUsR0FBRyxTQUFTLEVBQ3RCLGNBQWMsR0FBRyw4Q0FBOEMsRUFDL0QsTUFBTSxFQUNOLGdCQUFnQixHQUFHLElBQUksRUFDdkIsNEJBQTRCLEdBQUcsSUFBSSxFQUNuQyxVQUFVLEdBQUcsTUFBTSxHQUNwQixHQUFHLE9BQU8sQ0FBQztRQUVaLGtCQUFrQjtRQUNsQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0RCxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzNC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O3FCQUNULEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxVQUFVLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztxQkFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUNoQixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsK0JBQStCO1FBQy9CLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkIsNEJBQTRCO1FBQzVCLElBQUksZ0JBQWdCLElBQUksNEJBQTRCLEVBQUUsQ0FBQztZQUNyRCxJQUFJLHFEQUF5QixDQUFDLE9BQU8sRUFBRTtnQkFDckMsTUFBTTtnQkFDTixZQUFZO2dCQUNaLE9BQU87Z0JBQ1AsV0FBVztnQkFDWCxVQUFVO2dCQUNWLGFBQWE7Z0JBQ2IsV0FBVztnQkFDWCxVQUFVO2dCQUNWLGNBQWM7YUFDZixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUEzVEgsOENBNFRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2l0SHViLCBHaXRodWJXb3JrZmxvdyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24gfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnO1xuaW1wb3J0IHsgQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyB9IGZyb20gJy4vQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyc7XG5pbXBvcnQgeyBDZGtEZXBsb3lQaXBlbGluZU9wdGlvbnMsIERlcGxveVN0YWdlT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgdG9LZWJhYkNhc2UsIHZhbGlkYXRlTm9DeWNsZXMgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgQ0hFQ0tPVVRfVkVSU0lPTiA9ICd2NSc7XG5jb25zdCBTRVRVUF9OT0RFX1ZFUlNJT04gPSAndjUnO1xuY29uc3QgQVdTX0NSRURFTlRJQUxTX1ZFUlNJT04gPSAndjUnO1xuY29uc3QgVVBMT0FEX0FSVElGQUNUX1ZFUlNJT04gPSAndjQnO1xuY29uc3QgRE9XTkxPQURfQVJUSUZBQ1RfVkVSU0lPTiA9ICd2NSc7XG5cbi8qKlxuICogR2VuZXJhdGVzIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cyBmb3IgQ0RLIGRlcGxveW1lbnRzLlxuICpcbiAqIENyZWF0ZXMgYSBgZGVwbG95LnltbGAgd29ya2Zsb3cgd2l0aDpcbiAqIC0gU3ludGggam9iIHRvIGNvbXBpbGUgYW5kIHN5bnRoZXNpemUgdGhlIENESyBhcHBcbiAqIC0gQXNzZXQgcHVibGlzaCBqb2IgdG8gdXBsb2FkIExhbWJkYS9jb250YWluZXIgYXNzZXRzIHRvIEFXU1xuICogLSBQZXItc3RhZ2UgZGVwbG95IGpvYnMgd2l0aCBHaXRIdWIgRW52aXJvbm1lbnRzLCBwYXJhbGxlbCBleGVjdXRpb24sIGFuZCBjb25jdXJyZW5jeSBncm91cHNcbiAqXG4gKiBPcHRpb25hbGx5IGNyZWF0ZXMgYSBgZGVwbG95LWRpc3BhdGNoLnltbGAgd29ya2Zsb3cgZm9yIG1hbnVhbCBkZXBsb3ltZW50cyBhbmQgcm9sbGJhY2tzLlxuICovXG5leHBvcnQgY2xhc3MgQ2RrRGVwbG95UGlwZWxpbmUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBhbnksIG9wdGlvbnM6IENka0RlcGxveVBpcGVsaW5lT3B0aW9ucykge1xuICAgIGNvbnN0IHtcbiAgICAgIHBrZ05hbWVzcGFjZSxcbiAgICAgIHN0YWNrUHJlZml4LFxuICAgICAgaWFtUm9sZUFybixcbiAgICAgIGlhbVJvbGVSZWdpb24gPSAndXMtZWFzdC0xJyxcbiAgICAgIG5vZGVWZXJzaW9uID0gJzI0LngnLFxuICAgICAgY2RrQ29tbWFuZCA9ICducHggY2RrJyxcbiAgICAgIGluc3RhbGxDb21tYW5kID0gJ3lhcm4gaW5zdGFsbCAtLWNoZWNrLWZpbGVzIC0tZnJvemVuLWxvY2tmaWxlJyxcbiAgICAgIHN0YWdlcyxcbiAgICAgIG1hbnVhbERlcGxveW1lbnQgPSB0cnVlLFxuICAgICAgdXNlR2l0aHViUGFja2FnZXNGb3JBc3NlbWJseSA9IHRydWUsXG4gICAgICBicmFuY2hOYW1lID0gJ21haW4nLFxuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgLy8gVmFsaWRhdGUgaW5wdXRzXG4gICAgaWYgKHN0YWdlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQXQgbGVhc3Qgb25lIGRlcGxveW1lbnQgc3RhZ2UgbXVzdCBiZSBkZWZpbmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhZ2VOYW1lcyA9IG5ldyBTZXQoc3RhZ2VzLm1hcCgocykgPT4gcy5uYW1lKSk7XG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGlmIChzdGFnZS5kZXBlbmRzT24pIHtcbiAgICAgICAgZm9yIChjb25zdCBkZXAgb2Ygc3RhZ2UuZGVwZW5kc09uKSB7XG4gICAgICAgICAgaWYgKCFzdGFnZU5hbWVzLmhhcyhkZXApKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgIGBTdGFnZSAnJHtzdGFnZS5uYW1lfScgZGVwZW5kcyBvbiAnJHtkZXB9Jywgd2hpY2ggaXMgbm90IGEgZGVmaW5lZCBzdGFnZS4gQXZhaWxhYmxlOiAke1suLi5zdGFnZU5hbWVzXS5qb2luKCcsICcpfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZGVwID09PSBzdGFnZS5uYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFN0YWdlICcke3N0YWdlLm5hbWV9JyBjYW5ub3QgZGVwZW5kIG9uIGl0c2VsZmApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhbGlkYXRlIHRoYXQgYXV0by1kZXBsb3kgc3RhZ2VzIGRvbid0IGRlcGVuZCBvbiBtYW51YWwtYXBwcm92YWwgc3RhZ2VzXG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGlmICghc3RhZ2UubWFudWFsQXBwcm92YWwgJiYgc3RhZ2UuZGVwZW5kc09uKSB7XG4gICAgICAgIGZvciAoY29uc3QgZGVwIG9mIHN0YWdlLmRlcGVuZHNPbikge1xuICAgICAgICAgIGNvbnN0IGRlcFN0YWdlID0gc3RhZ2VzLmZpbmQoKHMpID0+IHMubmFtZSA9PT0gZGVwKTtcbiAgICAgICAgICBpZiAoZGVwU3RhZ2U/Lm1hbnVhbEFwcHJvdmFsKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgIGBTdGFnZSAnJHtzdGFnZS5uYW1lfScgZGVwZW5kcyBvbiAnJHtkZXB9Jywgd2hpY2ggaGFzIG1hbnVhbEFwcHJvdmFsIGVuYWJsZWQuIEF1dG8tZGVwbG95IHN0YWdlcyBjYW5ub3QgZGVwZW5kIG9uIG1hbnVhbC1hcHByb3ZhbCBzdGFnZXMuYCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFsaWRhdGVOb0N5Y2xlcyhzdGFnZXMpO1xuXG4gICAgaWYgKHVzZUdpdGh1YlBhY2thZ2VzRm9yQXNzZW1ibHkgJiYgIXBrZ05hbWVzcGFjZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAncGtnTmFtZXNwYWNlIGlzIHJlcXVpcmVkIHdoZW4gdXNlR2l0aHViUGFja2FnZXNGb3JBc3NlbWJseSBpcyBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIHRoZSBkZXBsb3kgd29ya2Zsb3dcbiAgICBjb25zdCBnaCA9IHByb2plY3QuZ2l0aHViID8/IG5ldyBHaXRIdWIocHJvamVjdCk7XG4gICAgY29uc3Qgd29ya2Zsb3cgPSBuZXcgR2l0aHViV29ya2Zsb3coZ2gsICdkZXBsb3knLCB7XG4gICAgICBmaWxlTmFtZTogJ2RlcGxveS55bWwnLFxuICAgIH0pO1xuXG4gICAgd29ya2Zsb3cub24oe1xuICAgICAgcHVzaDogeyBicmFuY2hlczogW2JyYW5jaE5hbWVdIH0sXG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFwcE5hbWUgPSBwcm9qZWN0Lm5hbWUgPz8gc3RhY2tQcmVmaXgudG9Mb3dlckNhc2UoKTtcblxuICAgIC8vIEJ1aWxkIGpvYnMgb2JqZWN0XG4gICAgY29uc3Qgam9iczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gICAgLy8gLS0tIFN5bnRoIEpvYiAtLS1cbiAgICBqb2JzLnN5bnRoID0ge1xuICAgICAgbmFtZTogJ1N5bnRoZXNpemUgQ0RLIGFwcGxpY2F0aW9uJyxcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICBwYWNrYWdlczogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgfSxcbiAgICAgIGVudjogeyBDSTogJ3RydWUnIH0sXG4gICAgICBzdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9jaGVja291dEAke0NIRUNLT1VUX1ZFUlNJT059YCxcbiAgICAgICAgICB3aXRoOiB7ICdmZXRjaC1kZXB0aCc6IDAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdTZXR1cCBOb2RlLmpzJyxcbiAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgJ25vZGUtdmVyc2lvbic6IG5vZGVWZXJzaW9uLFxuICAgICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdJbnN0YWxsIGRlcGVuZGVuY2llcycsXG4gICAgICAgICAgcnVuOiBpbnN0YWxsQ29tbWFuZCxcbiAgICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ1N5bnRoJyxcbiAgICAgICAgICBydW46IGAke2Nka0NvbW1hbmR9IHN5bnRoYCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdVcGxvYWQgY2xvdWQgYXNzZW1ibHknLFxuICAgICAgICAgIHVzZXM6IGBhY3Rpb25zL3VwbG9hZC1hcnRpZmFjdEAke1VQTE9BRF9BUlRJRkFDVF9WRVJTSU9OfWAsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgbmFtZTogJ2Nsb3VkLWFzc2VtYmx5JyxcbiAgICAgICAgICAgIHBhdGg6ICdjZGsub3V0LycsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcblxuICAgIC8vIC0tLSBQdWJsaXNoIEFzc2V0cyBKb2IgLS0tXG4gICAgY29uc3QgcHVibGlzaFN0ZXBzOiBhbnlbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgdXNlczogYGFjdGlvbnMvY2hlY2tvdXRAJHtDSEVDS09VVF9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHsgJ2ZldGNoLWRlcHRoJzogMCB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1NldHVwIE5vZGUuanMnLFxuICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAnbm9kZS12ZXJzaW9uJzogbm9kZVZlcnNpb24sXG4gICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICAgICBydW46IGluc3RhbGxDb21tYW5kLFxuICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0Rvd25sb2FkIGNsb3VkIGFzc2VtYmx5JyxcbiAgICAgICAgdXNlczogYGFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RAJHtET1dOTE9BRF9BUlRJRkFDVF9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHsgbmFtZTogJ2Nsb3VkLWFzc2VtYmx5JywgcGF0aDogJ2Nkay5vdXQvJyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0FXUyBDcmVkZW50aWFscycsXG4gICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7QVdTX0NSRURFTlRJQUxTX1ZFUlNJT059YCxcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgICdyb2xlLXRvLWFzc3VtZSc6IGlhbVJvbGVBcm4sXG4gICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgJ2F3cy1yZWdpb24nOiBpYW1Sb2xlUmVnaW9uLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1B1Ymxpc2ggYXNzZXRzJyxcbiAgICAgICAgcnVuOiAnZm9yIG1hbmlmZXN0IGluICQoZmluZCBjZGsub3V0IC1uYW1lIFwiKi1hc3NldHMuanNvblwiKTsgZG8gbnB4IGNkay1hc3NldHMgcHVibGlzaCAtcCBcIiRtYW5pZmVzdFwiOyBkb25lJyxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGlmICh1c2VHaXRodWJQYWNrYWdlc0ZvckFzc2VtYmx5KSB7XG4gICAgICBwdWJsaXNoU3RlcHMucHVzaChcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdDb25maWd1cmUgZ2l0IGlkZW50aXR5JyxcbiAgICAgICAgICBydW46IFtcbiAgICAgICAgICAgICdnaXQgY29uZmlnIHVzZXIubmFtZSBcImdpdGh1Yi1hY3Rpb25zW2JvdF1cIicsXG4gICAgICAgICAgICAnZ2l0IGNvbmZpZyB1c2VyLmVtYWlsIFwiNDE4OTgyODIrZ2l0aHViLWFjdGlvbnNbYm90XUB1c2Vycy5ub3JlcGx5LmdpdGh1Yi5jb21cIicsXG4gICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdDcmVhdGUgYXNzZW1ibHkgcGFja2FnZScsXG4gICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICBgUEtHX05BTUU9XCIke3BrZ05hbWVzcGFjZX0vJHthcHBOYW1lfVwiYCxcbiAgICAgICAgICAgICdMQVRFU1Q9JChucG0gdmlldyBcIiRQS0dfTkFNRVwiIHZlcnNpb24gLS1yZWdpc3RyeT1odHRwczovL25wbS5wa2cuZ2l0aHViLmNvbSAyPi9kZXYvbnVsbCB8fCBlY2hvIFwiMC4wLjBcIiknLFxuICAgICAgICAgICAgYGVjaG8gJyR7SlNPTi5zdHJpbmdpZnkoeyBuYW1lOiBgJHtwa2dOYW1lc3BhY2V9LyR7YXBwTmFtZX1gLCBwdWJsaXNoQ29uZmlnOiB7IHJlZ2lzdHJ5OiAnaHR0cHM6Ly9ucG0ucGtnLmdpdGh1Yi5jb20nIH0gfSl9JyB8IGpxIC0tYXJnIHYgXCIkTEFURVNUXCIgJy4gKyB7dmVyc2lvbjogJHZ9JyA+IGNkay5vdXQvcGFja2FnZS5qc29uYCxcbiAgICAgICAgICAgICdjZCBjZGsub3V0ICYmIG5wbSB2ZXJzaW9uIC0tbm8tZ2l0LXRhZy12ZXJzaW9uIHBhdGNoJyxcbiAgICAgICAgICBdLmpvaW4oJ1xcbicpLFxuICAgICAgICAgIGVudjogeyBOT0RFX0FVVEhfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLCBHSVRIVUJfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnUHVibGlzaCBhc3NlbWJseSB0byBHaXRIdWIgUGFja2FnZXMnLFxuICAgICAgICAgIHJ1bjogW1xuICAgICAgICAgICAgJ2NkIGNkay5vdXQgJiYgbnBtIHB1Ymxpc2ggLS1yZWdpc3RyeT1odHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgICAnVkVSU0lPTj0kKG5vZGUgLXAgXCJyZXF1aXJlKFxcJy4vcGFja2FnZS5qc29uXFwnKS52ZXJzaW9uXCIpJyxcbiAgICAgICAgICAgICdlY2hvIFwiIyMjIEFzc2VtYmx5IFB1Ymxpc2hlZFwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAgICAgICAgICdlY2hvIFwiXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICAgICAgICAgYGVjaG8gXCIqKlBhY2thZ2U6KiogXFxcXFxcYCR7cGtnTmFtZXNwYWNlfS8ke2FwcE5hbWV9XFxcXFxcYFwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZYCxcbiAgICAgICAgICAgICdlY2hvIFwiKipWZXJzaW9uOioqIFxcXFxgJFZFUlNJT05cXFxcYFwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAgICAgICAgICdlY2hvIFwiXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICAgICAgICAgJ2VjaG8gXCJUbyBkZXBsb3kgdGhpcyB2ZXJzaW9uIG1hbnVhbGx5OlwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAgICAgICAgICdlY2hvIFwiXFxcXGBcXFxcYFxcXFxgXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICAgICAgICAgJ2VjaG8gXCJnaCB3b3JrZmxvdyBydW4gZGVwbG95LWRpc3BhdGNoLnltbCAtZiBlbnZpcm9ubWVudD08ZW52PiAtZiB2ZXJzaW9uPSRWRVJTSU9OXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICAgICAgICAgJ2VjaG8gXCJcXFxcYFxcXFxgXFxcXGBcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBqb2JzWydwdWJsaXNoLWFzc2V0cyddID0ge1xuICAgICAgbmFtZTogJ1B1Ymxpc2ggYXNzZXRzIHRvIEFXUycsXG4gICAgICBuZWVkczogWydzeW50aCddLFxuICAgICAgcnVuc09uOiBbJ3VidW50dS1sYXRlc3QnXSxcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICBwYWNrYWdlczogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgaWRUb2tlbjogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgIH0sXG4gICAgICBlbnY6IHsgQ0k6ICd0cnVlJyB9LFxuICAgICAgc3RlcHM6IHB1Ymxpc2hTdGVwcyxcbiAgICB9O1xuXG4gICAgLy8gLS0tIFBlci1TdGFnZSBEZXBsb3kgSm9icyAtLS1cbiAgICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xuICAgICAgaWYgKHN0YWdlLm1hbnVhbEFwcHJvdmFsKSBjb250aW51ZTtcbiAgICAgIGNvbnN0IGpvYklkID0gYGRlcGxveS0ke3RvS2ViYWJDYXNlKHN0YWdlLm5hbWUpfWA7XG4gICAgICBjb25zdCBzdGFja3MgPVxuICAgICAgICBzdGFnZS5zdGFja3MgPz8gW2Ake3N0YWNrUHJlZml4fS0ke3N0YWdlLm5hbWV9YF07XG4gICAgICBjb25zdCBnaXRodWJFbnYgPSBzdGFnZS5lbnZpcm9ubWVudCA/PyBzdGFnZS5uYW1lO1xuICAgICAgY29uc3Qgcm9sZUFybiA9IHN0YWdlLmlhbVJvbGVBcm4gPz8gaWFtUm9sZUFybjtcbiAgICAgIGNvbnN0IHJvbGVSZWdpb24gPVxuICAgICAgICBzdGFnZS5pYW1Sb2xlUmVnaW9uID8/IGlhbVJvbGVSZWdpb24gPz8gc3RhZ2UuZW52LnJlZ2lvbjtcblxuICAgICAgLy8gQ29tcHV0ZSBuZWVkc1xuICAgICAgbGV0IG5lZWRzOiBzdHJpbmdbXTtcbiAgICAgIGlmIChzdGFnZS5kZXBlbmRzT24gJiYgc3RhZ2UuZGVwZW5kc09uLmxlbmd0aCA+IDApIHtcbiAgICAgICAgbmVlZHMgPSBzdGFnZS5kZXBlbmRzT24ubWFwKFxuICAgICAgICAgIChkZXApID0+IGBkZXBsb3ktJHt0b0tlYmFiQ2FzZShkZXApfWAsXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZWVkcyA9IFsncHVibGlzaC1hc3NldHMnXTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGVwbG95Q29tbWFuZCA9IHN0YWNrc1xuICAgICAgICAubWFwKChzKSA9PiBgJHtjZGtDb21tYW5kfSBkZXBsb3kgJHtzfSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXIgLS1hcHAgY2RrLm91dGApXG4gICAgICAgIC5qb2luKCcgJiYgJyk7XG5cbiAgICAgIGpvYnNbam9iSWRdID0ge1xuICAgICAgICBuYW1lOiBgRGVwbG95ICR7c3RhZ2UubmFtZX1gLFxuICAgICAgICBuZWVkczogbmVlZHMsXG4gICAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICAgIGVudmlyb25tZW50OiBnaXRodWJFbnYsXG4gICAgICAgIGNvbmN1cnJlbmN5OiB7XG4gICAgICAgICAgJ2dyb3VwJzogYGRlcGxveS0ke3RvS2ViYWJDYXNlKHN0YWdlLm5hbWUpfWAsXG4gICAgICAgICAgJ2NhbmNlbC1pbi1wcm9ncmVzcyc6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgcGFja2FnZXM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgICBpZFRva2VuOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICB9LFxuICAgICAgICBlbnY6IHsgQ0k6ICd0cnVlJyB9LFxuICAgICAgICBzdGVwczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdDaGVja291dCcsXG4gICAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9jaGVja291dEAke0NIRUNLT1VUX1ZFUlNJT059YCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdTZXR1cCBOb2RlLmpzJyxcbiAgICAgICAgICAgIHVzZXM6IGBhY3Rpb25zL3NldHVwLW5vZGVAJHtTRVRVUF9OT0RFX1ZFUlNJT059YCxcbiAgICAgICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAgICAgJ25vZGUtdmVyc2lvbic6IG5vZGVWZXJzaW9uLFxuICAgICAgICAgICAgICAncmVnaXN0cnktdXJsJzogJ2h0dHBzOi8vbnBtLnBrZy5naXRodWIuY29tJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICAgICAgICAgcnVuOiBpbnN0YWxsQ29tbWFuZCxcbiAgICAgICAgICAgIGVudjogeyBOT0RFX0FVVEhfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLCBHSVRIVUJfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnRG93bmxvYWQgY2xvdWQgYXNzZW1ibHknLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RAJHtET1dOTE9BRF9BUlRJRkFDVF9WRVJTSU9OfWAsXG4gICAgICAgICAgICB3aXRoOiB7IG5hbWU6ICdjbG91ZC1hc3NlbWJseScsIHBhdGg6ICdjZGsub3V0LycgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdBV1MgQ3JlZGVudGlhbHMnLFxuICAgICAgICAgICAgdXNlczogYGF3cy1hY3Rpb25zL2NvbmZpZ3VyZS1hd3MtY3JlZGVudGlhbHNAJHtBV1NfQ1JFREVOVElBTFNfVkVSU0lPTn1gLFxuICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAncm9sZS10by1hc3N1bWUnOiByb2xlQXJuLFxuICAgICAgICAgICAgICAncm9sZS1zZXNzaW9uLW5hbWUnOiAnR2l0SHViQWN0aW9uJyxcbiAgICAgICAgICAgICAgJ2F3cy1yZWdpb24nOiByb2xlUmVnaW9uLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IGBEZXBsb3kgJHtzdGFnZS5uYW1lfWAsXG4gICAgICAgICAgICBydW46IGRlcGxveUNvbW1hbmQsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH07XG5cbiAgICAgIC8vIENyZWF0ZSBwcm9qZW4gdGFzayBmb3IgbG9jYWwgdXNhZ2VcbiAgICAgIHByb2plY3QuYWRkVGFzayhgZGVwbG95OiR7c3RhZ2UubmFtZX1gLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgRGVwbG95IHRvICR7c3RhZ2UubmFtZX1gLFxuICAgICAgICBleGVjOiBzdGFja3NcbiAgICAgICAgICAubWFwKChzKSA9PiBgJHtjZGtDb21tYW5kfSBkZXBsb3kgJHtzfSAtLXJlcXVpcmUtYXBwcm92YWwgbmV2ZXJgKVxuICAgICAgICAgIC5qb2luKCcgJiYgJyksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBBZGQgYWxsIGpvYnMgdG8gdGhlIHdvcmtmbG93XG4gICAgd29ya2Zsb3cuYWRkSm9icyhqb2JzKTtcblxuICAgIC8vIC0tLSBEaXNwYXRjaCBXb3JrZmxvdyAtLS1cbiAgICBpZiAobWFudWFsRGVwbG95bWVudCAmJiB1c2VHaXRodWJQYWNrYWdlc0ZvckFzc2VtYmx5KSB7XG4gICAgICBuZXcgQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICAgIHN0YWdlcyxcbiAgICAgICAgcGtnTmFtZXNwYWNlLFxuICAgICAgICBhcHBOYW1lLFxuICAgICAgICBzdGFja1ByZWZpeCxcbiAgICAgICAgaWFtUm9sZUFybixcbiAgICAgICAgaWFtUm9sZVJlZ2lvbixcbiAgICAgICAgbm9kZVZlcnNpb24sXG4gICAgICAgIGNka0NvbW1hbmQsXG4gICAgICAgIGluc3RhbGxDb21tYW5kLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogSW50ZXJuYWwgaGVscGVyIHRvIGJ1aWxkIGRlcGxveSBkaXNwYXRjaCB3b3JrZmxvdyBvcHRpb25zIGZyb20gcGlwZWxpbmUgb3B0aW9ucy5cbiAqIEV4cG9ydGVkIGZvciB1c2UgYnkgQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lEaXNwYXRjaEludGVybmFsT3B0aW9ucyB7XG4gIHJlYWRvbmx5IHN0YWdlczogRGVwbG95U3RhZ2VPcHRpb25zW107XG4gIHJlYWRvbmx5IHBrZ05hbWVzcGFjZTogc3RyaW5nO1xuICByZWFkb25seSBhcHBOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHN0YWNrUHJlZml4OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGlhbVJvbGVBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgaWFtUm9sZVJlZ2lvbjogc3RyaW5nO1xuICByZWFkb25seSBub2RlVmVyc2lvbjogc3RyaW5nO1xuICByZWFkb25seSBjZGtDb21tYW5kOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGluc3RhbGxDb21tYW5kOiBzdHJpbmc7XG59XG4iXX0=
|
|
307
|
+
CdkDeployPipeline[_a] = { fqn: "@jjrawlins/cdk-deploy-pr-github-action.CdkDeployPipeline", version: "0.0.8" };
|
|
308
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRGVwbG95UGlwZWxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQ2RrRGVwbG95UGlwZWxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw4Q0FBMkQ7QUFDM0QsdUVBQWtFO0FBQ2xFLDJFQUF3RTtBQUV4RSxtQ0FBd0Q7QUFFeEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7QUFDOUIsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDaEMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFDckMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFDckMsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLENBQUM7QUFFdkM7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxpQkFBaUI7SUFDNUIsWUFBWSxPQUFZLEVBQUUsT0FBaUM7UUFDekQsTUFBTSxFQUNKLFlBQVksRUFDWixXQUFXLEVBQ1gsVUFBVSxFQUNWLGFBQWEsR0FBRyxXQUFXLEVBQzNCLFdBQVcsR0FBRyxNQUFNLEVBQ3BCLFVBQVUsR0FBRyxTQUFTLEVBQ3RCLGNBQWMsR0FBRyw4Q0FBOEMsRUFDL0QsTUFBTSxFQUNOLGdCQUFnQixHQUFHLElBQUksRUFDdkIsNEJBQTRCLEdBQUcsSUFBSSxFQUNuQyxVQUFVLEdBQUcsTUFBTSxHQUNwQixHQUFHLE9BQU8sQ0FBQztRQUVaLGtCQUFrQjtRQUNsQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN0RCxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQzNC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QixHQUFHLEVBQUUsYUFBYTtxQkFDbkI7aUJBQ0Y7YUFDRixDQUFDO1lBRUYscUNBQXFDO1lBQ3JDLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RDLFdBQVcsRUFBRSxhQUFhLEtBQUssQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RDLElBQUksRUFBRSxNQUFNO3FCQUNULEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxVQUFVLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztxQkFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUNoQixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsK0JBQStCO1FBQy9CLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdkIsNEJBQTRCO1FBQzVCLElBQUksZ0JBQWdCLElBQUksNEJBQTRCLEVBQUUsQ0FBQztZQUNyRCxJQUFJLHFEQUF5QixDQUFDLE9BQU8sRUFBRTtnQkFDckMsTUFBTTtnQkFDTixZQUFZO2dCQUNaLE9BQU87Z0JBQ1AsV0FBVztnQkFDWCxVQUFVO2dCQUNWLGFBQWE7Z0JBQ2IsV0FBVztnQkFDWCxVQUFVO2dCQUNWLGNBQWM7YUFDZixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUFwVUgsOENBcVVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2l0SHViLCBHaXRodWJXb3JrZmxvdyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24gfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnO1xuaW1wb3J0IHsgQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyB9IGZyb20gJy4vQ2RrRGVwbG95RGlzcGF0Y2hXb3JrZmxvdyc7XG5pbXBvcnQgeyBDZGtEZXBsb3lQaXBlbGluZU9wdGlvbnMsIERlcGxveVN0YWdlT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgdG9LZWJhYkNhc2UsIHZhbGlkYXRlTm9DeWNsZXMgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgQ0hFQ0tPVVRfVkVSU0lPTiA9ICd2NSc7XG5jb25zdCBTRVRVUF9OT0RFX1ZFUlNJT04gPSAndjUnO1xuY29uc3QgQVdTX0NSRURFTlRJQUxTX1ZFUlNJT04gPSAndjUnO1xuY29uc3QgVVBMT0FEX0FSVElGQUNUX1ZFUlNJT04gPSAndjQnO1xuY29uc3QgRE9XTkxPQURfQVJUSUZBQ1RfVkVSU0lPTiA9ICd2NSc7XG5cbi8qKlxuICogR2VuZXJhdGVzIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cyBmb3IgQ0RLIGRlcGxveW1lbnRzLlxuICpcbiAqIENyZWF0ZXMgYSBgZGVwbG95LnltbGAgd29ya2Zsb3cgd2l0aDpcbiAqIC0gU3ludGggam9iIHRvIGNvbXBpbGUgYW5kIHN5bnRoZXNpemUgdGhlIENESyBhcHBcbiAqIC0gQXNzZXQgcHVibGlzaCBqb2IgdG8gdXBsb2FkIExhbWJkYS9jb250YWluZXIgYXNzZXRzIHRvIEFXU1xuICogLSBQZXItc3RhZ2UgZGVwbG95IGpvYnMgd2l0aCBHaXRIdWIgRW52aXJvbm1lbnRzLCBwYXJhbGxlbCBleGVjdXRpb24sIGFuZCBjb25jdXJyZW5jeSBncm91cHNcbiAqXG4gKiBPcHRpb25hbGx5IGNyZWF0ZXMgYSBgZGVwbG95LWRpc3BhdGNoLnltbGAgd29ya2Zsb3cgZm9yIG1hbnVhbCBkZXBsb3ltZW50cyBhbmQgcm9sbGJhY2tzLlxuICovXG5leHBvcnQgY2xhc3MgQ2RrRGVwbG95UGlwZWxpbmUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBhbnksIG9wdGlvbnM6IENka0RlcGxveVBpcGVsaW5lT3B0aW9ucykge1xuICAgIGNvbnN0IHtcbiAgICAgIHBrZ05hbWVzcGFjZSxcbiAgICAgIHN0YWNrUHJlZml4LFxuICAgICAgaWFtUm9sZUFybixcbiAgICAgIGlhbVJvbGVSZWdpb24gPSAndXMtZWFzdC0xJyxcbiAgICAgIG5vZGVWZXJzaW9uID0gJzI0LngnLFxuICAgICAgY2RrQ29tbWFuZCA9ICducHggY2RrJyxcbiAgICAgIGluc3RhbGxDb21tYW5kID0gJ3lhcm4gaW5zdGFsbCAtLWNoZWNrLWZpbGVzIC0tZnJvemVuLWxvY2tmaWxlJyxcbiAgICAgIHN0YWdlcyxcbiAgICAgIG1hbnVhbERlcGxveW1lbnQgPSB0cnVlLFxuICAgICAgdXNlR2l0aHViUGFja2FnZXNGb3JBc3NlbWJseSA9IHRydWUsXG4gICAgICBicmFuY2hOYW1lID0gJ21haW4nLFxuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgLy8gVmFsaWRhdGUgaW5wdXRzXG4gICAgaWYgKHN0YWdlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQXQgbGVhc3Qgb25lIGRlcGxveW1lbnQgc3RhZ2UgbXVzdCBiZSBkZWZpbmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RhZ2VOYW1lcyA9IG5ldyBTZXQoc3RhZ2VzLm1hcCgocykgPT4gcy5uYW1lKSk7XG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGlmIChzdGFnZS5kZXBlbmRzT24pIHtcbiAgICAgICAgZm9yIChjb25zdCBkZXAgb2Ygc3RhZ2UuZGVwZW5kc09uKSB7XG4gICAgICAgICAgaWYgKCFzdGFnZU5hbWVzLmhhcyhkZXApKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgIGBTdGFnZSAnJHtzdGFnZS5uYW1lfScgZGVwZW5kcyBvbiAnJHtkZXB9Jywgd2hpY2ggaXMgbm90IGEgZGVmaW5lZCBzdGFnZS4gQXZhaWxhYmxlOiAke1suLi5zdGFnZU5hbWVzXS5qb2luKCcsICcpfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZGVwID09PSBzdGFnZS5uYW1lKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFN0YWdlICcke3N0YWdlLm5hbWV9JyBjYW5ub3QgZGVwZW5kIG9uIGl0c2VsZmApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZhbGlkYXRlIHRoYXQgYXV0by1kZXBsb3kgc3RhZ2VzIGRvbid0IGRlcGVuZCBvbiBtYW51YWwtYXBwcm92YWwgc3RhZ2VzXG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGlmICghc3RhZ2UubWFudWFsQXBwcm92YWwgJiYgc3RhZ2UuZGVwZW5kc09uKSB7XG4gICAgICAgIGZvciAoY29uc3QgZGVwIG9mIHN0YWdlLmRlcGVuZHNPbikge1xuICAgICAgICAgIGNvbnN0IGRlcFN0YWdlID0gc3RhZ2VzLmZpbmQoKHMpID0+IHMubmFtZSA9PT0gZGVwKTtcbiAgICAgICAgICBpZiAoZGVwU3RhZ2U/Lm1hbnVhbEFwcHJvdmFsKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgIGBTdGFnZSAnJHtzdGFnZS5uYW1lfScgZGVwZW5kcyBvbiAnJHtkZXB9Jywgd2hpY2ggaGFzIG1hbnVhbEFwcHJvdmFsIGVuYWJsZWQuIEF1dG8tZGVwbG95IHN0YWdlcyBjYW5ub3QgZGVwZW5kIG9uIG1hbnVhbC1hcHByb3ZhbCBzdGFnZXMuYCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFsaWRhdGVOb0N5Y2xlcyhzdGFnZXMpO1xuXG4gICAgaWYgKHVzZUdpdGh1YlBhY2thZ2VzRm9yQXNzZW1ibHkgJiYgIXBrZ05hbWVzcGFjZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAncGtnTmFtZXNwYWNlIGlzIHJlcXVpcmVkIHdoZW4gdXNlR2l0aHViUGFja2FnZXNGb3JBc3NlbWJseSBpcyBlbmFibGVkJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIHRoZSBkZXBsb3kgd29ya2Zsb3dcbiAgICBjb25zdCBnaCA9IHByb2plY3QuZ2l0aHViID8/IG5ldyBHaXRIdWIocHJvamVjdCk7XG4gICAgY29uc3Qgd29ya2Zsb3cgPSBuZXcgR2l0aHViV29ya2Zsb3coZ2gsICdkZXBsb3knLCB7XG4gICAgICBmaWxlTmFtZTogJ2RlcGxveS55bWwnLFxuICAgIH0pO1xuXG4gICAgd29ya2Zsb3cub24oe1xuICAgICAgcHVzaDogeyBicmFuY2hlczogW2JyYW5jaE5hbWVdIH0sXG4gICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFwcE5hbWUgPSBwcm9qZWN0Lm5hbWUgPz8gc3RhY2tQcmVmaXgudG9Mb3dlckNhc2UoKTtcblxuICAgIC8vIEJ1aWxkIGpvYnMgb2JqZWN0XG4gICAgY29uc3Qgam9iczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuXG4gICAgLy8gLS0tIFN5bnRoIEpvYiAtLS1cbiAgICBqb2JzLnN5bnRoID0ge1xuICAgICAgbmFtZTogJ1N5bnRoZXNpemUgQ0RLIGFwcGxpY2F0aW9uJyxcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICBwYWNrYWdlczogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgfSxcbiAgICAgIGVudjogeyBDSTogJ3RydWUnIH0sXG4gICAgICBzdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9jaGVja291dEAke0NIRUNLT1VUX1ZFUlNJT059YCxcbiAgICAgICAgICB3aXRoOiB7ICdmZXRjaC1kZXB0aCc6IDAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdTZXR1cCBOb2RlLmpzJyxcbiAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgJ25vZGUtdmVyc2lvbic6IG5vZGVWZXJzaW9uLFxuICAgICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdJbnN0YWxsIGRlcGVuZGVuY2llcycsXG4gICAgICAgICAgcnVuOiBpbnN0YWxsQ29tbWFuZCxcbiAgICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ1N5bnRoJyxcbiAgICAgICAgICBydW46IGAke2Nka0NvbW1hbmR9IHN5bnRoYCxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdVcGxvYWQgY2xvdWQgYXNzZW1ibHknLFxuICAgICAgICAgIHVzZXM6IGBhY3Rpb25zL3VwbG9hZC1hcnRpZmFjdEAke1VQTE9BRF9BUlRJRkFDVF9WRVJTSU9OfWAsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgbmFtZTogJ2Nsb3VkLWFzc2VtYmx5JyxcbiAgICAgICAgICAgIHBhdGg6ICdjZGsub3V0LycsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcblxuICAgIC8vIC0tLSBQdWJsaXNoIEFzc2V0cyBKb2IgLS0tXG4gICAgY29uc3QgcHVibGlzaFN0ZXBzOiBhbnlbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgdXNlczogYGFjdGlvbnMvY2hlY2tvdXRAJHtDSEVDS09VVF9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHsgJ2ZldGNoLWRlcHRoJzogMCB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1NldHVwIE5vZGUuanMnLFxuICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAnbm9kZS12ZXJzaW9uJzogbm9kZVZlcnNpb24sXG4gICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICAgICBydW46IGluc3RhbGxDb21tYW5kLFxuICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0Rvd25sb2FkIGNsb3VkIGFzc2VtYmx5JyxcbiAgICAgICAgdXNlczogYGFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RAJHtET1dOTE9BRF9BUlRJRkFDVF9WRVJTSU9OfWAsXG4gICAgICAgIHdpdGg6IHsgbmFtZTogJ2Nsb3VkLWFzc2VtYmx5JywgcGF0aDogJ2Nkay5vdXQvJyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ0FXUyBDcmVkZW50aWFscycsXG4gICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7QVdTX0NSRURFTlRJQUxTX1ZFUlNJT059YCxcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgICdyb2xlLXRvLWFzc3VtZSc6IGlhbVJvbGVBcm4sXG4gICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgJ2F3cy1yZWdpb24nOiBpYW1Sb2xlUmVnaW9uLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ1B1Ymxpc2ggYXNzZXRzJyxcbiAgICAgICAgcnVuOiAnZm9yIG1hbmlmZXN0IGluICQoZmluZCBjZGsub3V0IC1uYW1lIFwiKi1hc3NldHMuanNvblwiKTsgZG8gbnB4IGNkay1hc3NldHMgcHVibGlzaCAtcCBcIiRtYW5pZmVzdFwiOyBkb25lJyxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGlmICh1c2VHaXRodWJQYWNrYWdlc0ZvckFzc2VtYmx5KSB7XG4gICAgICBwdWJsaXNoU3RlcHMucHVzaChcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdDb25maWd1cmUgZ2l0IGlkZW50aXR5JyxcbiAgICAgICAgICBydW46IFtcbiAgICAgICAgICAgICdnaXQgY29uZmlnIHVzZXIubmFtZSBcImdpdGh1Yi1hY3Rpb25zW2JvdF1cIicsXG4gICAgICAgICAgICAnZ2l0IGNvbmZpZyB1c2VyLmVtYWlsIFwiNDE4OTgyODIrZ2l0aHViLWFjdGlvbnNbYm90XUB1c2Vycy5ub3JlcGx5LmdpdGh1Yi5jb21cIicsXG4gICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdDcmVhdGUgYXNzZW1ibHkgcGFja2FnZScsXG4gICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICBgUEtHX05BTUU9XCIke3BrZ05hbWVzcGFjZX0vJHthcHBOYW1lfVwiYCxcbiAgICAgICAgICAgICdMQVRFU1Q9JChucG0gdmlldyBcIiRQS0dfTkFNRVwiIHZlcnNpb24gLS1yZWdpc3RyeT1odHRwczovL25wbS5wa2cuZ2l0aHViLmNvbSAyPi9kZXYvbnVsbCB8fCBlY2hvIFwiMC4wLjBcIiknLFxuICAgICAgICAgICAgYGVjaG8gJyR7SlNPTi5zdHJpbmdpZnkoeyBuYW1lOiBgJHtwa2dOYW1lc3BhY2V9LyR7YXBwTmFtZX1gLCBwdWJsaXNoQ29uZmlnOiB7IHJlZ2lzdHJ5OiAnaHR0cHM6Ly9ucG0ucGtnLmdpdGh1Yi5jb20nIH0gfSl9JyB8IGpxIC0tYXJnIHYgXCIkTEFURVNUXCIgJy4gKyB7dmVyc2lvbjogJHZ9JyA+IGNkay5vdXQvcGFja2FnZS5qc29uYCxcbiAgICAgICAgICAgICdjZCBjZGsub3V0ICYmIG5wbSB2ZXJzaW9uIC0tbm8tZ2l0LXRhZy12ZXJzaW9uIHBhdGNoJyxcbiAgICAgICAgICBdLmpvaW4oJ1xcbicpLFxuICAgICAgICAgIGVudjogeyBOT0RFX0FVVEhfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLCBHSVRIVUJfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnUHVibGlzaCBhc3NlbWJseSB0byBHaXRIdWIgUGFja2FnZXMnLFxuICAgICAgICAgIHJ1bjogW1xuICAgICAgICAgICAgJ2NkIGNkay5vdXQgJiYgbnBtIHB1Ymxpc2ggLS1yZWdpc3RyeT1odHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgICAnVkVSU0lPTj0kKG5vZGUgLXAgXCJyZXF1aXJlKFxcJy4vcGFja2FnZS5qc29uXFwnKS52ZXJzaW9uXCIpJyxcbiAgICAgICAgICAgICdlY2hvIFwiQVNTRU1CTFlfVkVSU0lPTj0kVkVSU0lPTlwiID4+ICRHSVRIVUJfRU5WJyxcbiAgICAgICAgICBdLmpvaW4oJ1xcbicpLFxuICAgICAgICAgIGVudjogeyBOT0RFX0FVVEhfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLCBHSVRIVUJfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnVGFnIGFuZCByZWxlYXNlIGFzc2VtYmx5IHZlcnNpb24nLFxuICAgICAgICAgIHJ1bjogW1xuICAgICAgICAgICAgJ2dpdCB0YWcgXCJ2JHtBU1NFTUJMWV9WRVJTSU9OfVwiJyxcbiAgICAgICAgICAgICdnaXQgcHVzaCBvcmlnaW4gXCJ2JHtBU1NFTUJMWV9WRVJTSU9OfVwiJyxcbiAgICAgICAgICBdLmpvaW4oJ1xcbicpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ0NyZWF0ZSBHaXRIdWIgUmVsZWFzZScsXG4gICAgICAgICAgdXNlczogJ3NvZnRwcm9wcy9hY3Rpb24tZ2gtcmVsZWFzZUB2MicsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgdGFnX25hbWU6ICd2JHt7IGVudi5BU1NFTUJMWV9WRVJTSU9OIH19JyxcbiAgICAgICAgICAgIG5hbWU6ICd2JHt7IGVudi5BU1NFTUJMWV9WRVJTSU9OIH19JyxcbiAgICAgICAgICAgIGJvZHk6IGBBc3NlbWJseSBcXGAke3BrZ05hbWVzcGFjZX0vJHthcHBOYW1lfUBcXCR7eyBlbnYuQVNTRU1CTFlfVkVSU0lPTiB9fVxcYCBwdWJsaXNoZWQgdG8gR2l0SHViIFBhY2thZ2VzLlxcblxcbkRlcGxveSBtYW51YWxseTpcXG5cXGBcXGBcXGBcXG5naCB3b3JrZmxvdyBydW4gZGVwbG95LWRpc3BhdGNoLnltbCAtZiBlbnZpcm9ubWVudD08ZW52PiAtZiB2ZXJzaW9uPVxcJHt7IGVudi5BU1NFTUJMWV9WRVJTSU9OIH19XFxuXFxgXFxgXFxgYCxcbiAgICAgICAgICAgIGdlbmVyYXRlX3JlbGVhc2Vfbm90ZXM6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgam9ic1sncHVibGlzaC1hc3NldHMnXSA9IHtcbiAgICAgIG5hbWU6ICdQdWJsaXNoIGFzc2V0cyB0byBBV1MnLFxuICAgICAgbmVlZHM6IFsnc3ludGgnXSxcbiAgICAgIHJ1bnNPbjogWyd1YnVudHUtbGF0ZXN0J10sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgcGFja2FnZXM6IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgIGlkVG9rZW46IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICB9LFxuICAgICAgZW52OiB7IENJOiAndHJ1ZScgfSxcbiAgICAgIHN0ZXBzOiBwdWJsaXNoU3RlcHMsXG4gICAgfTtcblxuICAgIC8vIC0tLSBQZXItU3RhZ2UgRGVwbG95IEpvYnMgLS0tXG4gICAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcbiAgICAgIGlmIChzdGFnZS5tYW51YWxBcHByb3ZhbCkgY29udGludWU7XG4gICAgICBjb25zdCBqb2JJZCA9IGBkZXBsb3ktJHt0b0tlYmFiQ2FzZShzdGFnZS5uYW1lKX1gO1xuICAgICAgY29uc3Qgc3RhY2tzID1cbiAgICAgICAgc3RhZ2Uuc3RhY2tzID8/IFtgJHtzdGFja1ByZWZpeH0tJHtzdGFnZS5uYW1lfWBdO1xuICAgICAgY29uc3QgZ2l0aHViRW52ID0gc3RhZ2UuZW52aXJvbm1lbnQgPz8gc3RhZ2UubmFtZTtcbiAgICAgIGNvbnN0IHJvbGVBcm4gPSBzdGFnZS5pYW1Sb2xlQXJuID8/IGlhbVJvbGVBcm47XG4gICAgICBjb25zdCByb2xlUmVnaW9uID1cbiAgICAgICAgc3RhZ2UuaWFtUm9sZVJlZ2lvbiA/PyBpYW1Sb2xlUmVnaW9uID8/IHN0YWdlLmVudi5yZWdpb247XG5cbiAgICAgIC8vIENvbXB1dGUgbmVlZHNcbiAgICAgIGxldCBuZWVkczogc3RyaW5nW107XG4gICAgICBpZiAoc3RhZ2UuZGVwZW5kc09uICYmIHN0YWdlLmRlcGVuZHNPbi5sZW5ndGggPiAwKSB7XG4gICAgICAgIG5lZWRzID0gc3RhZ2UuZGVwZW5kc09uLm1hcChcbiAgICAgICAgICAoZGVwKSA9PiBgZGVwbG95LSR7dG9LZWJhYkNhc2UoZGVwKX1gLFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmVlZHMgPSBbJ3B1Ymxpc2gtYXNzZXRzJ107XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGRlcGxveUNvbW1hbmQgPSBzdGFja3NcbiAgICAgICAgLm1hcCgocykgPT4gYCR7Y2RrQ29tbWFuZH0gZGVwbG95ICR7c30gLS1yZXF1aXJlLWFwcHJvdmFsIG5ldmVyIC0tYXBwIGNkay5vdXRgKVxuICAgICAgICAuam9pbignICYmICcpO1xuXG4gICAgICBqb2JzW2pvYklkXSA9IHtcbiAgICAgICAgbmFtZTogYERlcGxveSAke3N0YWdlLm5hbWV9YCxcbiAgICAgICAgbmVlZHM6IG5lZWRzLFxuICAgICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgICBlbnZpcm9ubWVudDogZ2l0aHViRW52LFxuICAgICAgICBjb25jdXJyZW5jeToge1xuICAgICAgICAgICdncm91cCc6IGBkZXBsb3ktJHt0b0tlYmFiQ2FzZShzdGFnZS5uYW1lKX1gLFxuICAgICAgICAgICdjYW5jZWwtaW4tcHJvZ3Jlc3MnOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICAgIHBhY2thZ2VzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgaWRUb2tlbjogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgfSxcbiAgICAgICAgZW52OiB7IENJOiAndHJ1ZScgfSxcbiAgICAgICAgc3RlcHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQ2hlY2tvdXQnLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvY2hlY2tvdXRAJHtDSEVDS09VVF9WRVJTSU9OfWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnU2V0dXAgTm9kZS5qcycsXG4gICAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7U0VUVVBfTk9ERV9WRVJTSU9OfWAsXG4gICAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICAgICdub2RlLXZlcnNpb24nOiBub2RlVmVyc2lvbixcbiAgICAgICAgICAgICAgJ3JlZ2lzdHJ5LXVybCc6ICdodHRwczovL25wbS5wa2cuZ2l0aHViLmNvbScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0luc3RhbGwgZGVwZW5kZW5jaWVzJyxcbiAgICAgICAgICAgIHJ1bjogaW5zdGFsbENvbW1hbmQsXG4gICAgICAgICAgICBlbnY6IHsgTk9ERV9BVVRIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JywgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0Rvd25sb2FkIGNsb3VkIGFzc2VtYmx5JyxcbiAgICAgICAgICAgIHVzZXM6IGBhY3Rpb25zL2Rvd25sb2FkLWFydGlmYWN0QCR7RE9XTkxPQURfQVJUSUZBQ1RfVkVSU0lPTn1gLFxuICAgICAgICAgICAgd2l0aDogeyBuYW1lOiAnY2xvdWQtYXNzZW1ibHknLCBwYXRoOiAnY2RrLm91dC8nIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQVdTIENyZWRlbnRpYWxzJyxcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7QVdTX0NSRURFTlRJQUxTX1ZFUlNJT059YCxcbiAgICAgICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAgICAgJ3JvbGUtdG8tYXNzdW1lJzogcm9sZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogcm9sZVJlZ2lvbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBgRGVwbG95ICR7c3RhZ2UubmFtZX1gLFxuICAgICAgICAgICAgcnVuOiBkZXBsb3lDb21tYW5kLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuXG4gICAgICAvLyBDcmVhdGUgcHJvamVuIHRhc2sgZm9yIGxvY2FsIHVzYWdlXG4gICAgICBwcm9qZWN0LmFkZFRhc2soYGRlcGxveToke3N0YWdlLm5hbWV9YCwge1xuICAgICAgICBkZXNjcmlwdGlvbjogYERlcGxveSB0byAke3N0YWdlLm5hbWV9YCxcbiAgICAgICAgZXhlYzogc3RhY2tzXG4gICAgICAgICAgLm1hcCgocykgPT4gYCR7Y2RrQ29tbWFuZH0gZGVwbG95ICR7c30gLS1yZXF1aXJlLWFwcHJvdmFsIG5ldmVyYClcbiAgICAgICAgICAuam9pbignICYmICcpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGFsbCBqb2JzIHRvIHRoZSB3b3JrZmxvd1xuICAgIHdvcmtmbG93LmFkZEpvYnMoam9icyk7XG5cbiAgICAvLyAtLS0gRGlzcGF0Y2ggV29ya2Zsb3cgLS0tXG4gICAgaWYgKG1hbnVhbERlcGxveW1lbnQgJiYgdXNlR2l0aHViUGFja2FnZXNGb3JBc3NlbWJseSkge1xuICAgICAgbmV3IENka0RlcGxveURpc3BhdGNoV29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgICBzdGFnZXMsXG4gICAgICAgIHBrZ05hbWVzcGFjZSxcbiAgICAgICAgYXBwTmFtZSxcbiAgICAgICAgc3RhY2tQcmVmaXgsXG4gICAgICAgIGlhbVJvbGVBcm4sXG4gICAgICAgIGlhbVJvbGVSZWdpb24sXG4gICAgICAgIG5vZGVWZXJzaW9uLFxuICAgICAgICBjZGtDb21tYW5kLFxuICAgICAgICBpbnN0YWxsQ29tbWFuZCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEludGVybmFsIGhlbHBlciB0byBidWlsZCBkZXBsb3kgZGlzcGF0Y2ggd29ya2Zsb3cgb3B0aW9ucyBmcm9tIHBpcGVsaW5lIG9wdGlvbnMuXG4gKiBFeHBvcnRlZCBmb3IgdXNlIGJ5IENka0RlcGxveURpc3BhdGNoV29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95RGlzcGF0Y2hJbnRlcm5hbE9wdGlvbnMge1xuICByZWFkb25seSBzdGFnZXM6IERlcGxveVN0YWdlT3B0aW9uc1tdO1xuICByZWFkb25seSBwa2dOYW1lc3BhY2U6IHN0cmluZztcbiAgcmVhZG9ubHkgYXBwTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBzdGFja1ByZWZpeDogc3RyaW5nO1xuICByZWFkb25seSBpYW1Sb2xlQXJuOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGlhbVJvbGVSZWdpb246IHN0cmluZztcbiAgcmVhZG9ubHkgbm9kZVZlcnNpb246IHN0cmluZztcbiAgcmVhZG9ubHkgY2RrQ29tbWFuZDogc3RyaW5nO1xuICByZWFkb25seSBpbnN0YWxsQ29tbWFuZDogc3RyaW5nO1xufVxuIl19
|