projen 0.52.21 → 0.52.25
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 +139 -107
- package/changelog.md +3 -3
- package/docs/api/API.md +42 -39
- package/lib/awscdk/auto-discover.d.ts +14 -46
- package/lib/awscdk/auto-discover.js +8 -22
- package/lib/awscdk/awscdk-app-java.d.ts +10 -32
- package/lib/awscdk/awscdk-app-java.js +5 -9
- package/lib/awscdk/awscdk-app-ts.d.ts +15 -35
- package/lib/awscdk/awscdk-app-ts.js +6 -14
- package/lib/awscdk/awscdk-construct.d.ts +14 -28
- package/lib/awscdk/awscdk-construct.js +8 -16
- package/lib/awscdk/awscdk-deps-java.d.ts +1 -8
- package/lib/awscdk/awscdk-deps-java.js +3 -10
- package/lib/awscdk/awscdk-deps-js.d.ts +1 -8
- package/lib/awscdk/awscdk-deps-js.js +3 -10
- package/lib/awscdk/awscdk-deps.d.ts +28 -67
- package/lib/awscdk/awscdk-deps.js +5 -12
- package/lib/awscdk/cdk-config.d.ts +19 -51
- package/lib/awscdk/cdk-config.js +13 -11
- package/lib/awscdk/cdk-tasks.d.ts +7 -24
- package/lib/awscdk/cdk-tasks.js +3 -8
- package/lib/awscdk/integration-test.d.ts +7 -29
- package/lib/awscdk/integration-test.js +3 -8
- package/lib/awscdk/lambda-function.d.ts +22 -50
- package/lib/awscdk/lambda-function.js +11 -24
- package/lib/build/build-workflow.d.ts +33 -78
- package/lib/build/build-workflow.js +15 -25
- package/lib/cdk/auto-discover-base.d.ts +11 -34
- package/lib/cdk/auto-discover-base.js +5 -15
- package/lib/cdk/construct-lib.d.ts +8 -22
- package/lib/cdk/construct-lib.js +3 -8
- package/lib/cdk/integration-test-base.d.ts +12 -38
- package/lib/cdk/integration-test-base.js +2 -8
- package/lib/cdk/jsii-docgen.d.ts +6 -12
- package/lib/cdk/jsii-docgen.js +6 -8
- package/lib/cdk/jsii-project.d.ts +16 -95
- package/lib/cdk/jsii-project.js +3 -10
- package/lib/cdk8s/auto-discover.d.ts +6 -23
- package/lib/cdk8s/auto-discover.js +6 -15
- package/lib/cdk8s/cdk8s-app-ts.d.ts +21 -43
- package/lib/cdk8s/cdk8s-app-ts.js +4 -7
- package/lib/cdk8s/cdk8s-construct.d.ts +12 -27
- package/lib/cdk8s/cdk8s-construct.js +3 -7
- package/lib/cdk8s/integration-test.d.ts +2 -9
- package/lib/cdk8s/integration-test.js +3 -8
- package/lib/cdktf/cdktf-construct.d.ts +3 -12
- package/lib/cdktf/cdktf-construct.js +3 -7
- package/lib/component.d.ts +4 -17
- package/lib/component.js +6 -19
- package/lib/dependencies.d.ts +44 -77
- package/lib/dependencies.js +50 -38
- package/lib/dev-env.d.ts +26 -53
- package/lib/dev-env.js +9 -19
- package/lib/docker-compose.d.ts +83 -209
- package/lib/docker-compose.js +38 -61
- package/lib/file.d.ts +24 -71
- package/lib/file.js +4 -16
- package/lib/gitattributes.d.ts +3 -14
- package/lib/gitattributes.js +5 -16
- package/lib/github/auto-approve.d.ts +7 -23
- package/lib/github/auto-approve.js +3 -8
- package/lib/github/auto-merge.d.ts +7 -29
- package/lib/github/auto-merge.js +7 -16
- package/lib/github/dependabot.d.ts +54 -147
- package/lib/github/dependabot.js +81 -22
- package/lib/github/github-project.d.ts +26 -70
- package/lib/github/github-project.js +5 -10
- package/lib/github/github.d.ts +19 -58
- package/lib/github/github.js +9 -30
- package/lib/github/mergify.d.ts +9 -54
- package/lib/github/mergify.js +2 -14
- package/lib/github/pr-template.d.ts +3 -13
- package/lib/github/pr-template.js +3 -8
- package/lib/github/pull-request-lint.d.ts +8 -28
- package/lib/github/pull-request-lint.js +3 -9
- package/lib/github/stale.d.ts +17 -47
- package/lib/github/stale.js +6 -10
- package/lib/github/task-workflow.d.ts +21 -63
- package/lib/github/task-workflow.js +3 -8
- package/lib/github/workflows-model.d.ts +199 -582
- package/lib/github/workflows-model.js +5 -4
- package/lib/github/workflows.d.ts +14 -41
- package/lib/github/workflows.js +8 -16
- package/lib/gitlab/configuration-model.d.ts +145 -947
- package/lib/gitlab/configuration-model.js +11 -28
- package/lib/gitlab/configuration.d.ts +31 -121
- package/lib/gitlab/configuration.js +14 -49
- package/lib/gitlab/gitlab-configuration.d.ts +2 -13
- package/lib/gitlab/gitlab-configuration.js +4 -15
- package/lib/gitlab/nested-configuration.d.ts +1 -9
- package/lib/gitlab/nested-configuration.js +3 -8
- package/lib/gitpod.d.ts +71 -167
- package/lib/gitpod.js +75 -42
- package/lib/ignore-file.d.ts +4 -23
- package/lib/ignore-file.js +6 -25
- package/lib/ini.d.ts +2 -14
- package/lib/ini.js +3 -13
- package/lib/java/java-project.d.ts +29 -70
- package/lib/java/java-project.js +10 -17
- package/lib/java/junit.d.ts +5 -17
- package/lib/java/junit.js +3 -8
- package/lib/java/maven-compile.d.ts +4 -13
- package/lib/java/maven-compile.js +3 -8
- package/lib/java/maven-packaging.d.ts +6 -21
- package/lib/java/maven-packaging.js +3 -8
- package/lib/java/maven-sample.d.ts +2 -12
- package/lib/java/maven-sample.js +3 -8
- package/lib/java/pom.d.ts +38 -100
- package/lib/java/pom.js +13 -25
- package/lib/java/projenrc.d.ts +7 -22
- package/lib/java/projenrc.js +3 -8
- package/lib/javascript/bundler.d.ts +30 -72
- package/lib/javascript/bundler.js +13 -21
- package/lib/javascript/eslint.d.ts +27 -84
- package/lib/javascript/eslint.js +11 -30
- package/lib/javascript/jest.d.ts +91 -344
- package/lib/javascript/jest.js +6 -23
- package/lib/javascript/node-package.d.ts +111 -259
- package/lib/javascript/node-package.js +64 -81
- package/lib/javascript/node-project.d.ts +112 -220
- package/lib/javascript/node-project.js +54 -73
- package/lib/javascript/npm-config.d.ts +9 -19
- package/lib/javascript/npm-config.js +9 -16
- package/lib/javascript/prettier.d.ts +65 -196
- package/lib/javascript/prettier.js +70 -46
- package/lib/javascript/projenrc.d.ts +2 -12
- package/lib/javascript/projenrc.js +3 -8
- package/lib/javascript/typescript-config.d.ts +62 -158
- package/lib/javascript/typescript-config.js +31 -18
- package/lib/javascript/upgrade-dependencies.d.ts +35 -94
- package/lib/javascript/upgrade-dependencies.js +21 -51
- package/lib/json.d.ts +3 -17
- package/lib/json.js +3 -13
- package/lib/license.d.ts +3 -20
- package/lib/license.js +2 -13
- package/lib/logger.d.ts +18 -62
- package/lib/logger.js +17 -37
- package/lib/makefile.d.ts +14 -45
- package/lib/makefile.js +7 -25
- package/lib/object-file.d.ts +19 -39
- package/lib/object-file.js +17 -28
- package/lib/option-hints.d.ts +4 -13
- package/lib/option-hints.js +11 -5
- package/lib/project-build.d.ts +7 -26
- package/lib/project-build.js +3 -8
- package/lib/project.d.ts +64 -186
- package/lib/project.js +43 -91
- package/lib/projects.d.ts +11 -32
- package/lib/projects.js +4 -8
- package/lib/projenrc-json.d.ts +2 -12
- package/lib/projenrc-json.js +3 -8
- package/lib/python/pip.d.ts +7 -23
- package/lib/python/pip.js +8 -17
- package/lib/python/poetry.d.ts +36 -121
- package/lib/python/poetry.js +12 -26
- package/lib/python/projenrc.d.ts +4 -15
- package/lib/python/projenrc.js +3 -8
- package/lib/python/pytest.d.ts +3 -16
- package/lib/python/pytest.js +2 -8
- package/lib/python/python-deps.d.ts +7 -21
- package/lib/python/python-deps.js +1 -1
- package/lib/python/python-env.d.ts +1 -6
- package/lib/python/python-env.js +1 -1
- package/lib/python/python-packaging.d.ts +12 -34
- package/lib/python/python-packaging.js +1 -1
- package/lib/python/python-project.d.ts +34 -79
- package/lib/python/python-project.js +7 -20
- package/lib/python/python-sample.d.ts +2 -9
- package/lib/python/python-sample.js +3 -8
- package/lib/python/requirements-file.d.ts +4 -19
- package/lib/python/requirements-file.js +5 -15
- package/lib/python/setuppy.d.ts +11 -39
- package/lib/python/setuppy.js +3 -13
- package/lib/python/setuptools.d.ts +2 -14
- package/lib/python/setuptools.js +3 -8
- package/lib/python/venv.d.ts +4 -14
- package/lib/python/venv.js +4 -11
- package/lib/readme.d.ts +7 -16
- package/lib/readme.js +5 -7
- package/lib/release/publisher.d.ts +103 -206
- package/lib/release/publisher.js +47 -59
- package/lib/release/release-trigger.d.ts +16 -48
- package/lib/release/release-trigger.js +8 -18
- package/lib/release/release.d.ts +50 -110
- package/lib/release/release.js +9 -24
- package/lib/run-task.js +1820 -0
- package/lib/sample-file.d.ts +14 -47
- package/lib/sample-file.js +9 -30
- package/lib/semver.d.ts +4 -21
- package/lib/semver.js +6 -20
- package/lib/source-code.d.ts +7 -23
- package/lib/source-code.js +7 -19
- package/lib/task-model.d.ts +21 -61
- package/lib/task-model.js +1 -1
- package/lib/task-runtime.d.ts +7 -24
- package/lib/task-runtime.js +7 -20
- package/lib/task.d.ts +29 -73
- package/lib/task.js +28 -61
- package/lib/tasks.d.ts +12 -34
- package/lib/tasks.js +14 -36
- package/lib/testing.d.ts +6 -10
- package/lib/testing.js +8 -12
- package/lib/textfile.d.ts +9 -24
- package/lib/textfile.js +9 -19
- package/lib/toml.d.ts +2 -14
- package/lib/toml.js +3 -13
- package/lib/typescript/projenrc.d.ts +4 -14
- package/lib/typescript/projenrc.js +3 -8
- package/lib/typescript/typescript-typedoc.d.ts +1 -6
- package/lib/typescript/typescript-typedoc.js +3 -8
- package/lib/typescript/typescript.d.ts +24 -82
- package/lib/typescript/typescript.js +6 -15
- package/lib/version.d.ts +9 -38
- package/lib/version.js +2 -11
- package/lib/vscode/devcontainer.d.ts +10 -30
- package/lib/vscode/devcontainer.js +10 -26
- package/lib/vscode/launch-config.d.ts +18 -97
- package/lib/vscode/launch-config.js +9 -15
- package/lib/vscode/vscode.d.ts +0 -9
- package/lib/vscode/vscode.js +2 -11
- package/lib/web/next.d.ts +19 -60
- package/lib/web/next.js +6 -20
- package/lib/web/postcss.d.ts +3 -24
- package/lib/web/postcss.js +3 -8
- package/lib/web/react.d.ts +13 -60
- package/lib/web/react.js +7 -32
- package/lib/web/tailwind.d.ts +1 -15
- package/lib/web/tailwind.js +3 -7
- package/lib/xmlfile.d.ts +2 -14
- package/lib/xmlfile.js +3 -13
- package/lib/yaml.d.ts +4 -19
- package/lib/yaml.js +3 -13
- package/package.json +5 -5
- package/releasetag.txt +1 -1
- package/version.txt +1 -1
|
@@ -3,32 +3,22 @@ import { Component } from "../component";
|
|
|
3
3
|
import { GitIdentity } from "../github";
|
|
4
4
|
import { Job, JobStep, Tools, Triggers } from "../github/workflows-model";
|
|
5
5
|
import { Project } from "../project";
|
|
6
|
-
/**
|
|
7
|
-
* @experimental
|
|
8
|
-
*/
|
|
9
6
|
export interface BuildWorkflowOptions {
|
|
10
7
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @experimental
|
|
8
|
+
* The task to execute in order to build the project.
|
|
14
9
|
*/
|
|
15
10
|
readonly buildTask: Task;
|
|
16
11
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* @experimental
|
|
12
|
+
* A name of a directory that includes build artifacts.
|
|
20
13
|
*/
|
|
21
14
|
readonly artifactsDirectory: string;
|
|
22
15
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
16
|
+
* The container image to use for builds.
|
|
25
17
|
* @default - the default workflow container
|
|
26
|
-
* @experimental
|
|
27
18
|
*/
|
|
28
19
|
readonly containerImage?: string;
|
|
29
20
|
/**
|
|
30
|
-
*
|
|
31
|
-
*
|
|
21
|
+
* Automatically update files modified during builds to pull-request branches.
|
|
32
22
|
* This means that any files synthesized by projen or e.g. test snapshots will
|
|
33
23
|
* always be up-to-date before a PR is merged.
|
|
34
24
|
*
|
|
@@ -39,57 +29,41 @@ export interface BuildWorkflowOptions {
|
|
|
39
29
|
* not be pushed back to the branch.
|
|
40
30
|
*
|
|
41
31
|
* @default true
|
|
42
|
-
* @experimental
|
|
43
32
|
*/
|
|
44
33
|
readonly mutableBuild?: boolean;
|
|
45
34
|
/**
|
|
46
|
-
*
|
|
47
|
-
*
|
|
35
|
+
* Steps to execute before the build.
|
|
48
36
|
* @default []
|
|
49
|
-
* @experimental
|
|
50
37
|
*/
|
|
51
38
|
readonly preBuildSteps?: JobStep[];
|
|
52
39
|
/**
|
|
53
|
-
*
|
|
54
|
-
*
|
|
40
|
+
* Steps to execute after build.
|
|
55
41
|
* @default []
|
|
56
|
-
* @experimental
|
|
57
42
|
*/
|
|
58
43
|
readonly postBuildSteps?: JobStep[];
|
|
59
44
|
/**
|
|
60
|
-
*
|
|
61
|
-
*
|
|
45
|
+
* Git identity to use for the workflow.
|
|
62
46
|
* @default - default identity
|
|
63
|
-
* @experimental
|
|
64
47
|
*/
|
|
65
48
|
readonly gitIdentity?: GitIdentity;
|
|
66
49
|
/**
|
|
67
|
-
*
|
|
68
|
-
*
|
|
50
|
+
* Build environment variables.
|
|
69
51
|
* @default {}
|
|
70
|
-
* @experimental
|
|
71
52
|
*/
|
|
72
53
|
readonly env?: {
|
|
73
54
|
[key: string]: string;
|
|
74
55
|
};
|
|
75
56
|
/**
|
|
76
|
-
*
|
|
77
|
-
*
|
|
57
|
+
* Github Runner selection labels
|
|
78
58
|
* @default ["ubuntu-latest"]
|
|
79
|
-
* @experimental
|
|
80
59
|
*/
|
|
81
60
|
readonly runsOn?: string[];
|
|
82
61
|
/**
|
|
83
|
-
*
|
|
84
|
-
*
|
|
62
|
+
* Build workflow triggers
|
|
85
63
|
* @default "{ pullRequest: {}, workflowDispatch: {} }"
|
|
86
|
-
* @experimental
|
|
87
64
|
*/
|
|
88
65
|
readonly workflowTriggers?: Triggers;
|
|
89
66
|
}
|
|
90
|
-
/**
|
|
91
|
-
* @experimental
|
|
92
|
-
*/
|
|
93
67
|
export declare class BuildWorkflow extends Component {
|
|
94
68
|
private readonly postBuildSteps;
|
|
95
69
|
private readonly preBuildSteps;
|
|
@@ -100,38 +74,32 @@ export declare class BuildWorkflow extends Component {
|
|
|
100
74
|
private readonly artifactsDirectory;
|
|
101
75
|
private readonly defaultRunners;
|
|
102
76
|
private readonly _postBuildJobs;
|
|
103
|
-
/**
|
|
104
|
-
* @experimental
|
|
105
|
-
*/
|
|
106
77
|
constructor(project: Project, options: BuildWorkflowOptions);
|
|
107
78
|
private addBuildJob;
|
|
108
79
|
/**
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
* @experimental
|
|
80
|
+
* Returns a list of job IDs that are part of the build.
|
|
112
81
|
*/
|
|
113
82
|
get buildJobIds(): string[];
|
|
114
83
|
/**
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
* @param steps The job steps.
|
|
118
|
-
* @experimental
|
|
84
|
+
* Adds steps that are executed after the build.
|
|
85
|
+
* @param steps The job steps
|
|
119
86
|
*/
|
|
120
87
|
addPostBuildSteps(...steps: JobStep[]): void;
|
|
121
88
|
/**
|
|
122
|
-
*
|
|
89
|
+
* Adds another job to the build workflow which is executed after the build
|
|
90
|
+
* job succeeded.
|
|
123
91
|
*
|
|
124
92
|
* Jobs are executed _only_ if the build did NOT self mutate. If the build
|
|
125
93
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
126
94
|
* forks), so there is no point in executing the post-build job.
|
|
127
95
|
*
|
|
128
|
-
* @param id The id of the new job
|
|
129
|
-
* @param job The job specification
|
|
130
|
-
* @experimental
|
|
96
|
+
* @param id The id of the new job
|
|
97
|
+
* @param job The job specification
|
|
131
98
|
*/
|
|
132
99
|
addPostBuildJob(id: string, job: Job): void;
|
|
133
100
|
/**
|
|
134
|
-
*
|
|
101
|
+
* Run a task as a job within the build workflow which is executed after the
|
|
102
|
+
* build job succeeded.
|
|
135
103
|
*
|
|
136
104
|
* The job will have access to build artifacts and will install project
|
|
137
105
|
* dependencies in order to be able to run any commands used in the tasks.
|
|
@@ -140,19 +108,18 @@ export declare class BuildWorkflow extends Component {
|
|
|
140
108
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
141
109
|
* forks), so there is no point in executing the post-build job.
|
|
142
110
|
*
|
|
143
|
-
* @param options Specify tools and other options
|
|
144
|
-
* @experimental
|
|
111
|
+
* @param options Specify tools and other options
|
|
145
112
|
*/
|
|
146
113
|
addPostBuildJobTask(task: Task, options: AddPostBuildJobTaskOptions): void;
|
|
147
114
|
/**
|
|
148
|
-
*
|
|
115
|
+
* Run a sequence of commands as a job within the build workflow which is
|
|
116
|
+
* executed after the build job succeeded.
|
|
149
117
|
*
|
|
150
118
|
* Jobs are executed _only_ if the build did NOT self mutate. If the build
|
|
151
119
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
152
120
|
* forks), so there is no point in executing the post-build job.
|
|
153
121
|
*
|
|
154
|
-
* @param options Specify tools and other options
|
|
155
|
-
* @experimental
|
|
122
|
+
* @param options Specify tools and other options
|
|
156
123
|
*/
|
|
157
124
|
addPostBuildJobCommands(id: string, commands: string[], options?: AddPostBuildJobCommandsOptions): void;
|
|
158
125
|
private addSelfMutationJob;
|
|
@@ -162,58 +129,46 @@ export declare class BuildWorkflow extends Component {
|
|
|
162
129
|
private renderBuildSteps;
|
|
163
130
|
}
|
|
164
131
|
/**
|
|
165
|
-
*
|
|
166
|
-
*
|
|
167
|
-
* @experimental
|
|
132
|
+
* Options for `BuildWorkflow.addPostBuildJobTask`
|
|
168
133
|
*/
|
|
169
134
|
export interface AddPostBuildJobTaskOptions {
|
|
170
135
|
/**
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
* @experimental
|
|
136
|
+
* Tools that should be installed before the task is run.
|
|
174
137
|
*/
|
|
175
138
|
readonly tools?: Tools;
|
|
176
139
|
/**
|
|
177
|
-
*
|
|
178
|
-
*
|
|
140
|
+
* Github Runner selection labels
|
|
179
141
|
* @default ["ubuntu-latest"]
|
|
180
|
-
* @experimental
|
|
181
142
|
*/
|
|
182
143
|
readonly runsOn?: string[];
|
|
183
144
|
}
|
|
184
145
|
/**
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
* @experimental
|
|
146
|
+
* Options for `BuildWorkflow.addPostBuildJobCommands`
|
|
188
147
|
*/
|
|
189
148
|
export interface AddPostBuildJobCommandsOptions {
|
|
190
149
|
/**
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
* @experimental
|
|
150
|
+
* Tools that should be installed before the commands are run.
|
|
194
151
|
*/
|
|
195
152
|
readonly tools?: Tools;
|
|
196
153
|
/**
|
|
197
|
-
*
|
|
154
|
+
* Check out the repository at the pull request branch before commands are
|
|
155
|
+
* run.
|
|
198
156
|
*
|
|
199
157
|
* @default false
|
|
200
|
-
* @experimental
|
|
201
158
|
*/
|
|
202
159
|
readonly checkoutRepo?: boolean;
|
|
203
160
|
/**
|
|
204
|
-
*
|
|
161
|
+
* Install project dependencies before running commands. `checkoutRepo` must
|
|
162
|
+
* also be set to true.
|
|
205
163
|
*
|
|
206
164
|
* Currently only supported for `NodeProject`.
|
|
207
165
|
*
|
|
208
166
|
* @default false
|
|
209
|
-
* @experimental
|
|
210
167
|
*/
|
|
211
168
|
readonly installDeps?: boolean;
|
|
212
169
|
/**
|
|
213
|
-
*
|
|
214
|
-
*
|
|
170
|
+
* Github Runner selection labels
|
|
215
171
|
* @default ["ubuntu-latest"]
|
|
216
|
-
* @experimental
|
|
217
172
|
*/
|
|
218
173
|
readonly runsOn?: string[];
|
|
219
174
|
}
|
|
@@ -17,13 +17,7 @@ const SELF_MUTATION_HAPPENED_OUTPUT = "self_mutation_happened";
|
|
|
17
17
|
const IS_FORK = "github.event.pull_request.head.repo.full_name != github.repository";
|
|
18
18
|
const NOT_FORK = `!(${IS_FORK})`;
|
|
19
19
|
const SELF_MUTATION_CONDITION = `needs.${BUILD_JOBID}.outputs.${SELF_MUTATION_HAPPENED_OUTPUT}`;
|
|
20
|
-
/**
|
|
21
|
-
* @experimental
|
|
22
|
-
*/
|
|
23
20
|
class BuildWorkflow extends component_1.Component {
|
|
24
|
-
/**
|
|
25
|
-
* @experimental
|
|
26
|
-
*/
|
|
27
21
|
constructor(project, options) {
|
|
28
22
|
var _b, _c, _d, _e, _f;
|
|
29
23
|
super(project);
|
|
@@ -74,32 +68,28 @@ class BuildWorkflow extends component_1.Component {
|
|
|
74
68
|
});
|
|
75
69
|
}
|
|
76
70
|
/**
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* @experimental
|
|
71
|
+
* Returns a list of job IDs that are part of the build.
|
|
80
72
|
*/
|
|
81
73
|
get buildJobIds() {
|
|
82
74
|
return [BUILD_JOBID, ...this._postBuildJobs];
|
|
83
75
|
}
|
|
84
76
|
/**
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
* @param steps The job steps.
|
|
88
|
-
* @experimental
|
|
77
|
+
* Adds steps that are executed after the build.
|
|
78
|
+
* @param steps The job steps
|
|
89
79
|
*/
|
|
90
80
|
addPostBuildSteps(...steps) {
|
|
91
81
|
this.postBuildSteps.push(...steps);
|
|
92
82
|
}
|
|
93
83
|
/**
|
|
94
|
-
*
|
|
84
|
+
* Adds another job to the build workflow which is executed after the build
|
|
85
|
+
* job succeeded.
|
|
95
86
|
*
|
|
96
87
|
* Jobs are executed _only_ if the build did NOT self mutate. If the build
|
|
97
88
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
98
89
|
* forks), so there is no point in executing the post-build job.
|
|
99
90
|
*
|
|
100
|
-
* @param id The id of the new job
|
|
101
|
-
* @param job The job specification
|
|
102
|
-
* @experimental
|
|
91
|
+
* @param id The id of the new job
|
|
92
|
+
* @param job The job specification
|
|
103
93
|
*/
|
|
104
94
|
addPostBuildJob(id, job) {
|
|
105
95
|
const steps = [];
|
|
@@ -125,7 +115,8 @@ class BuildWorkflow extends component_1.Component {
|
|
|
125
115
|
this._postBuildJobs.push(id);
|
|
126
116
|
}
|
|
127
117
|
/**
|
|
128
|
-
*
|
|
118
|
+
* Run a task as a job within the build workflow which is executed after the
|
|
119
|
+
* build job succeeded.
|
|
129
120
|
*
|
|
130
121
|
* The job will have access to build artifacts and will install project
|
|
131
122
|
* dependencies in order to be able to run any commands used in the tasks.
|
|
@@ -134,8 +125,7 @@ class BuildWorkflow extends component_1.Component {
|
|
|
134
125
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
135
126
|
* forks), so there is no point in executing the post-build job.
|
|
136
127
|
*
|
|
137
|
-
* @param options Specify tools and other options
|
|
138
|
-
* @experimental
|
|
128
|
+
* @param options Specify tools and other options
|
|
139
129
|
*/
|
|
140
130
|
addPostBuildJobTask(task, options) {
|
|
141
131
|
this.addPostBuildJobCommands(`post-build-${task.name}`, [`${this.project.projenCommand} ${task.name}`], {
|
|
@@ -146,14 +136,14 @@ class BuildWorkflow extends component_1.Component {
|
|
|
146
136
|
});
|
|
147
137
|
}
|
|
148
138
|
/**
|
|
149
|
-
*
|
|
139
|
+
* Run a sequence of commands as a job within the build workflow which is
|
|
140
|
+
* executed after the build job succeeded.
|
|
150
141
|
*
|
|
151
142
|
* Jobs are executed _only_ if the build did NOT self mutate. If the build
|
|
152
143
|
* self-mutate, the branch will either be updated or the build will fail (in
|
|
153
144
|
* forks), so there is no point in executing the post-build job.
|
|
154
145
|
*
|
|
155
|
-
* @param options Specify tools and other options
|
|
156
|
-
* @experimental
|
|
146
|
+
* @param options Specify tools and other options
|
|
157
147
|
*/
|
|
158
148
|
addPostBuildJobCommands(id, commands, options) {
|
|
159
149
|
var _b;
|
|
@@ -256,5 +246,5 @@ class BuildWorkflow extends component_1.Component {
|
|
|
256
246
|
}
|
|
257
247
|
exports.BuildWorkflow = BuildWorkflow;
|
|
258
248
|
_a = JSII_RTTI_SYMBOL_1;
|
|
259
|
-
BuildWorkflow[_a] = { fqn: "projen.build.BuildWorkflow", version: "0.52.
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtd29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGQvYnVpbGQtd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSw0Q0FBeUM7QUFDekMsc0NBQWdFO0FBQ2hFLG1EQUc2QjtBQUM3QixpRUFBNkQ7QUFDN0QsK0RBTW1DO0FBQ25DLDhDQUE0QztBQUc1QyxNQUFNLGdCQUFnQixHQUFHLDJDQUEyQyxDQUFDO0FBQ3JFLE1BQU0sdUJBQXVCLEdBQzNCLHNEQUFzRCxDQUFDO0FBQ3pELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQztBQUM1QixNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztBQUMzQyxNQUFNLDZCQUE2QixHQUFHLHdCQUF3QixDQUFDO0FBQy9ELE1BQU0sT0FBTyxHQUNYLG9FQUFvRSxDQUFDO0FBQ3ZFLE1BQU0sUUFBUSxHQUFHLEtBQUssT0FBTyxHQUFHLENBQUM7QUFDakMsTUFBTSx1QkFBdUIsR0FBRyxTQUFTLFdBQVcsWUFBWSw2QkFBNkIsRUFBRSxDQUFDOzs7O0FBa0NoRyxNQUFhLGFBQWMsU0FBUSxxQkFBUzs7OztJQVkxQyxZQUFZLE9BQWdCLEVBQUUsT0FBNkI7O1FBQ3pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUxBLG1CQUFjLEdBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU3QyxtQkFBYyxHQUFhLEVBQUUsQ0FBQztRQUs3QyxNQUFNLE1BQU0sR0FBRyxlQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLElBQUksS0FBSyxDQUNiLCtEQUErRCxDQUNoRSxDQUFDO1NBQ0g7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxTQUFHLE9BQU8sQ0FBQyxhQUFhLG1DQUFJLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENB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IFRhc2sgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEdpdEh1YiwgR2l0aHViV29ya2Zsb3csIEdpdElkZW50aXR5IH0gZnJvbSBcIi4uL2dpdGh1YlwiO1xuaW1wb3J0IHtcbiAgQlVJTERfQVJUSUZBQ1RfTkFNRSxcbiAgREVGQVVMVF9HSVRIVUJfQUNUSU9OU19VU0VSLFxufSBmcm9tIFwiLi4vZ2l0aHViL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb25zIH0gZnJvbSBcIi4uL2dpdGh1Yi93b3JrZmxvdy1hY3Rpb25zXCI7XG5pbXBvcnQge1xuICBKb2IsXG4gIEpvYlBlcm1pc3Npb24sXG4gIEpvYlN0ZXAsXG4gIFRvb2xzLFxuICBUcmlnZ2Vycyxcbn0gZnJvbSBcIi4uL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWxcIjtcbmltcG9ydCB7IE5vZGVQcm9qZWN0IH0gZnJvbSBcIi4uL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG5jb25zdCBQVUxMX1JFUVVFU1RfUkVGID0gXCIke3sgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnJlZiB9fVwiO1xuY29uc3QgUFVMTF9SRVFVRVNUX1JFUE9TSVRPUlkgPVxuICBcIiR7eyBnaXRodWIuZXZlbnQucHVsbF9yZXF1ZXN0LmhlYWQucmVwby5mdWxsX25hbWUgfX1cIjtcbmNvbnN0IEJVSUxEX0pPQklEID0gXCJidWlsZFwiO1xuY29uc3QgU0VMRl9NVVRBVElPTl9TVEVQID0gXCJzZWxmX211dGF0aW9uXCI7XG5jb25zdCBTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVCA9IFwic2VsZl9tdXRhdGlvbl9oYXBwZW5lZFwiO1xuY29uc3QgSVNfRk9SSyA9XG4gIFwiZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnJlcG8uZnVsbF9uYW1lICE9IGdpdGh1Yi5yZXBvc2l0b3J5XCI7XG5jb25zdCBOT1RfRk9SSyA9IGAhKCR7SVNfRk9SS30pYDtcbmNvbnN0IFNFTEZfTVVUQVRJT05fQ09ORElUSU9OID0gYG5lZWRzLiR7QlVJTERfSk9CSUR9Lm91dHB1dHMuJHtTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVH1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkV29ya2Zsb3dPcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYnVpbGRUYXNrOiBUYXNrO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXJ0aWZhY3RzRGlyZWN0b3J5OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBjb250YWluZXJJbWFnZT86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG11dGFibGVCdWlsZD86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHByZUJ1aWxkU3RlcHM/OiBKb2JTdGVwW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBwb3N0QnVpbGRTdGVwcz86IEpvYlN0ZXBbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGdpdElkZW50aXR5PzogR2l0SWRlbnRpdHk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGVudj86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcnVuc09uPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHdvcmtmbG93VHJpZ2dlcnM/OiBUcmlnZ2Vycztcbn1cblxuZXhwb3J0IGNsYXNzIEJ1aWxkV29ya2Zsb3cgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwcml2YXRlIHJlYWRvbmx5IHBvc3RCdWlsZFN0ZXBzOiBKb2JTdGVwW107XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJlQnVpbGRTdGVwczogSm9iU3RlcFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IGdpdElkZW50aXR5OiBHaXRJZGVudGl0eTtcbiAgcHJpdmF0ZSByZWFkb25seSBidWlsZFRhc2s6IFRhc2s7XG4gIHByaXZhdGUgcmVhZG9ubHkgZ2l0aHViOiBHaXRIdWI7XG4gIHByaXZhdGUgcmVhZG9ubHkgd29ya2Zsb3c6IEdpdGh1YldvcmtmbG93O1xuICBwcml2YXRlIHJlYWRvbmx5IGFydGlmYWN0c0RpcmVjdG9yeTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRSdW5uZXJzOiBzdHJpbmdbXSA9IFtcInVidW50dS1sYXRlc3RcIl07XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcG9zdEJ1aWxkSm9iczogc3RyaW5nW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBCdWlsZFdvcmtmbG93T3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgZ2l0aHViID0gR2l0SHViLm9mKHByb2plY3QpO1xuICAgIGlmICghZ2l0aHViKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQnVpbGRXb3JrZmxvdyBpcyBjdXJyZW50bHkgb25seSBzdXBwb3J0ZWQgZm9yIEdpdEh1YiBwcm9qZWN0c1wiXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuZ2l0aHViID0gZ2l0aHViO1xuICAgIHRoaXMucHJlQnVpbGRTdGVwcyA9IG9wdGlvbnMucHJlQnVpbGRTdGVwcyA/PyBbXTtcbiAgICB0aGlzLnBvc3RCdWlsZFN0ZXBzID0gb3B0aW9ucy5wb3N0QnVpbGRTdGVwcyA/PyBbXTtcbiAgICB0aGlzLmdpdElkZW50aXR5ID0gb3B0aW9ucy5naXRJZGVudGl0eSA/PyBERUZBVUxUX0dJVEhVQl9BQ1RJT05TX1VTRVI7XG4gICAgdGhpcy5idWlsZFRhc2sgPSBvcHRpb25zLmJ1aWxkVGFzaztcbiAgICB0aGlzLmFydGlmYWN0c0RpcmVjdG9yeSA9IG9wdGlvbnMuYXJ0aWZhY3RzRGlyZWN0b3J5O1xuICAgIGNvbnN0IG11dGFibGVCdWlsZHMgPSBvcHRpb25zLm11dGFibGVCdWlsZCA/PyB0cnVlO1xuXG4gICAgdGhpcy53b3JrZmxvdyA9IG5ldyBHaXRodWJXb3JrZmxvdyhnaXRodWIsIFwiYnVpbGRcIik7XG4gICAgdGhpcy53b3JrZmxvdy5vbihcbiAgICAgIG9wdGlvbnMud29ya2Zsb3dUcmlnZ2VycyA/PyB7XG4gICAgICAgIHB1bGxSZXF1ZXN0OiB7fSxcbiAgICAgICAgd29ya2Zsb3dEaXNwYXRjaDoge30sIC8vIGFsbG93IG1hbnVhbCB0cmlnZ2VyaW5nXG4gICAgICB9XG4gICAgKTtcblxuICAgIHRoaXMuYWRkQnVpbGRKb2Iob3B0aW9ucyk7XG5cbiAgICBpZiAobXV0YWJsZUJ1aWxkcykge1xuICAgICAgdGhpcy5hZGRTZWxmTXV0YXRpb25Kb2Iob3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRCdWlsZEpvYihvcHRpb25zOiBCdWlsZFdvcmtmbG93T3B0aW9ucykge1xuICAgIHRoaXMud29ya2Zsb3cuYWRkSm9iKEJVSUxEX0pPQklELCB7XG4gICAgICBydW5zT246IG9wdGlvbnMucnVuc09uID8/IHRoaXMuZGVmYXVsdFJ1bm5lcnMsXG4gICAgICBjb250YWluZXI6IG9wdGlvbnMuY29udGFpbmVySW1hZ2VcbiAgICAgICAgPyB7IGltYWdlOiBvcHRpb25zLmNvbnRhaW5lckltYWdlIH1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBlbnY6IHtcbiAgICAgICAgQ0k6IFwidHJ1ZVwiLFxuICAgICAgICAuLi5vcHRpb25zLmVudixcbiAgICAgIH0sXG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgIH0sXG4gICAgICBzdGVwczogKCgpID0+IHRoaXMucmVuZGVyQnVpbGRTdGVwcygpKSBhcyBhbnksXG4gICAgICBvdXRwdXRzOiB7XG4gICAgICAgIFtTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVF06IHtcbiAgICAgICAgICBzdGVwSWQ6IFNFTEZfTVVUQVRJT05fU1RFUCxcbiAgICAgICAgICBvdXRwdXROYW1lOiBTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgZ2V0IGJ1aWxkSm9iSWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW0JVSUxEX0pPQklELCAuLi50aGlzLl9wb3N0QnVpbGRKb2JzXTtcbiAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyBhZGRQb3N0QnVpbGRTdGVwcyguLi5zdGVwczogSm9iU3RlcFtdKTogdm9pZCB7XG4gICAgdGhpcy5wb3N0QnVpbGRTdGVwcy5wdXNoKC4uLnN0ZXBzKTtcbiAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIGFkZFBvc3RCdWlsZEpvYihpZDogc3RyaW5nLCBqb2I6IEpvYikge1xuICAgIGNvbnN0IHN0ZXBzID0gW107XG5cbiAgICBpZiAodGhpcy5hcnRpZmFjdHNEaXJlY3RvcnkpIHtcbiAgICAgIHN0ZXBzLnB1c2goe1xuICAgICAgICBuYW1lOiBcIkRvd25sb2FkIGJ1aWxkIGFydGlmYWN0c1wiLFxuICAgICAgICB1c2VzOiBcImFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RAdjJcIixcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIG5hbWU6IEJVSUxEX0FSVElGQUNUX05BTUUsXG4gICAgICAgICAgcGF0aDogdGhpcy5hcnRpZmFjdHNEaXJlY3RvcnksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBzdGVwcy5wdXNoKC4uLmpvYi5zdGVwcyk7XG5cbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYihpZCwge1xuICAgICAgbmVlZHM6IFtCVUlMRF9KT0JJRF0sXG4gICAgICAvLyBvbmx5IHJ1biBpZiBidWlsZCBkaWQgbm90IHNlbGYtbXV0YXRlXG4gICAgICBpZjogYCEgJHtTRUxGX01VVEFUSU9OX0NPTkRJVElPTn1gLFxuICAgICAgLi4uam9iLFxuICAgICAgc3RlcHM6IHN0ZXBzLFxuICAgIH0pO1xuXG4gICAgLy8gYWRkIHRvIHRoZSBsaXN0IG9mIGJ1aWxkIGpvYiBJRHNcbiAgICB0aGlzLl9wb3N0QnVpbGRKb2JzLnB1c2goaWQpO1xuICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyBhZGRQb3N0QnVpbGRKb2JUYXNrKHRhc2s6IFRhc2ssIG9wdGlvbnM6IEFkZFBvc3RCdWlsZEpvYlRhc2tPcHRpb25zKSB7XG4gICAgdGhpcy5hZGRQb3N0QnVpbGRKb2JDb21tYW5kcyhcbiAgICAgIGBwb3N0LWJ1aWxkLSR7dGFzay5uYW1lfWAsXG4gICAgICBbYCR7dGhpcy5wcm9qZWN0LnByb2plbkNvbW1hbmR9ICR7dGFzay5uYW1lfWBdLFxuICAgICAge1xuICAgICAgICBjaGVja291dFJlcG86IHRydWUsXG4gICAgICAgIGluc3RhbGxEZXBzOiB0cnVlLFxuICAgICAgICB0b29sczogb3B0aW9ucy50b29scyxcbiAgICAgICAgcnVuc09uOiBvcHRpb25zLnJ1bnNPbixcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgYWRkUG9zdEJ1aWxkSm9iQ29tbWFuZHMoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBjb21tYW5kczogc3RyaW5nW10sXG4gICAgb3B0aW9ucz86IEFkZFBvc3RCdWlsZEpvYkNvbW1hbmRzT3B0aW9uc1xuICApIHtcbiAgICBjb25zdCBzdGVwcyA9IFtdO1xuXG4gICAgaWYgKG9wdGlvbnM/LmNoZWNrb3V0UmVwbykge1xuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6IFwiQ2hlY2tvdXRcIixcbiAgICAgICAgdXNlczogXCJhY3Rpb25zL2NoZWNrb3V0QHYyXCIsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICByZWY6IFBVTExfUkVRVUVTVF9SRUYsXG4gICAgICAgICAgcmVwb3NpdG9yeTogUFVMTF9SRVFVRVNUX1JFUE9TSVRPUlksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBvcHRpb25zPy5jaGVja291dFJlcG8gJiZcbiAgICAgIG9wdGlvbnM/Lmluc3RhbGxEZXBzICYmXG4gICAgICB0aGlzLnByb2plY3QgaW5zdGFuY2VvZiBOb2RlUHJvamVjdFxuICAgICkge1xuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6IFwiSW5zdGFsbCBkZXBlbmRlbmNpZXNcIixcbiAgICAgICAgcnVuOiBgJHt0aGlzLnByb2plY3QucGFja2FnZS5pbnN0YWxsQ29tbWFuZH1gLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgc3RlcHMucHVzaCh7IHJ1bjogY29tbWFuZHMuam9pbihcIlxcblwiKSB9KTtcblxuICAgIHRoaXMuYWRkUG9zdEJ1aWxkSm9iKGlkLCB7XG4gICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgfSxcbiAgICAgIHRvb2xzOiBvcHRpb25zPy50b29scyxcbiAgICAgIHJ1bnNPbjogb3B0aW9ucz8ucnVuc09uID8/IHRoaXMuZGVmYXVsdFJ1bm5lcnMsXG4gICAgICBzdGVwcyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkU2VsZk11dGF0aW9uSm9iKG9wdGlvbnM6IEJ1aWxkV29ya2Zsb3dPcHRpb25zKSB7XG4gICAgdGhpcy53b3JrZmxvdy5hZGRKb2IoXCJzZWxmLW11dGF0aW9uXCIsIHtcbiAgICAgIHJ1bnNPbjogb3B0aW9ucy5ydW5zT24gPz8gdGhpcy5kZWZhdWx0UnVubmVycyxcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgfSxcbiAgICAgIG5lZWRzOiBbQlVJTERfSk9CSURdLFxuICAgICAgaWY6IGBhbHdheXMoKSAmJiAke1NFTEZfTVVUQVRJT05fQ09ORElUSU9OfSAmJiAke05PVF9GT1JLfWAsXG4gICAgICBzdGVwczogW1xuICAgICAgICAuLi5Xb3JrZmxvd0FjdGlvbnMuY2hlY2tvdXRXaXRoUGF0Y2goe1xuICAgICAgICAgIC8vIHdlIG5lZWQgdG8gdXNlIGEgUEFUIHNvIHRoYXQgb3VyIHB1c2ggd2lsbCB0cmlnZ2VyIHRoZSBidWlsZCB3b3JrZmxvd1xuICAgICAgICAgIHRva2VuOiBgXFwke3sgc2VjcmV0cy4ke3RoaXMud29ya2Zsb3cucHJvamVuVG9rZW5TZWNyZXR9IH19YCxcbiAgICAgICAgICByZWY6IFBVTExfUkVRVUVTVF9SRUYsXG4gICAgICAgICAgcmVwb3NpdG9yeTogUFVMTF9SRVFVRVNUX1JFUE9TSVRPUlksXG4gICAgICAgIH0pLFxuICAgICAgICAuLi5Xb3JrZmxvd0FjdGlvbnMuc2V0R2l0SWRlbnRpdHkodGhpcy5naXRJZGVudGl0eSksXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBcIlB1c2ggY2hhbmdlc1wiLFxuICAgICAgICAgIHJ1bjogW1xuICAgICAgICAgICAgXCIgIGdpdCBhZGQgLlwiLFxuICAgICAgICAgICAgJyAgZ2l0IGNvbW1pdCAtcyAtbSBcImNob3JlOiBzZWxmIG11dGF0aW9uXCInLFxuICAgICAgICAgICAgYCAgZ2l0IHB1c2ggb3JpZ2luIEhFQUQ6JHtQVUxMX1JFUVVFU1RfUkVGfWAsXG4gICAgICAgICAgXS5qb2luKFwiXFxuXCIpLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgKGxhemlseSkgZHVyaW5nIHN5bnRoIHRvIHJlbmRlciB0aGUgYnVpbGQgam9iIHN0ZXBzLlxuICAgKi9cbiAgcHJpdmF0ZSByZW5kZXJCdWlsZFN0ZXBzKCk6IEpvYlN0ZXBbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogXCJDaGVja291dFwiLFxuICAgICAgICB1c2VzOiBcImFjdGlvbnMvY2hlY2tvdXRAdjJcIixcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIHJlZjogUFVMTF9SRVFVRVNUX1JFRixcbiAgICAgICAgICByZXBvc2l0b3J5OiBQVUxMX1JFUVVFU1RfUkVQT1NJVE9SWSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG5cbiAgICAgIC4uLnRoaXMucHJlQnVpbGRTdGVwcyxcblxuICAgICAge1xuICAgICAgICBuYW1lOiB0aGlzLmJ1aWxkVGFzay5uYW1lLFxuICAgICAgICBydW46IHRoaXMuZ2l0aHViLnByb2plY3QucnVuVGFza0NvbW1hbmQodGhpcy5idWlsZFRhc2spLFxuICAgICAgfSxcblxuICAgICAgLi4udGhpcy5wb3N0QnVpbGRTdGVwcyxcblxuICAgICAgLy8gY2hlY2sgZm9yIG11dGF0aW9ucyBhbmQgdXBsb2FkIGEgZ2l0IHBhdGNoIGZpbGUgYXMgYW4gYXJ0aWZhY3RcbiAgICAgIC4uLldvcmtmbG93QWN0aW9ucy5jcmVhdGVVcGxvYWRHaXRQYXRjaCh7XG4gICAgICAgIHN0ZXBJZDogU0VMRl9NVVRBVElPTl9TVEVQLFxuICAgICAgICBvdXRwdXROYW1lOiBTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVCxcbiAgICAgICAgbXV0YXRpb25FcnJvcjpcbiAgICAgICAgICBcIkZpbGVzIHdlcmUgY2hhbmdlZCBkdXJpbmcgYnVpbGQgKHNlZSBidWlsZCBsb2cpLiBJZiB0aGlzIHdhcyB0cmlnZ2VyZWQgZnJvbSBhIGZvcmssIHlvdSB3aWxsIG5lZWQgdG8gdXBkYXRlIHlvdXIgYnJhbmNoLlwiLFxuICAgICAgfSksXG5cbiAgICAgIC8vIHVwbG9hZCB0aGUgYnVpbGQgYXJ0aWZhY3Qgb25seSBpZiB3ZSBoYXZlIHBvc3QtYnVpbGQgam9icyAob3RoZXJ3aXNlLCB0aGVyZSdzIG5vIHBvaW50KVxuICAgICAgLi4uKHRoaXMuX3Bvc3RCdWlsZEpvYnMubGVuZ3RoID09IDBcbiAgICAgICAgPyBbXVxuICAgICAgICA6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogXCJVcGxvYWQgYXJ0aWZhY3RcIixcbiAgICAgICAgICAgICAgdXNlczogXCJhY3Rpb25zL3VwbG9hZC1hcnRpZmFjdEB2Mi4xLjFcIixcbiAgICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAgIG5hbWU6IEJVSUxEX0FSVElGQUNUX05BTUUsXG4gICAgICAgICAgICAgICAgcGF0aDogdGhpcy5hcnRpZmFjdHNEaXJlY3RvcnksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0pLFxuICAgIF07XG4gIH1cbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBBZGRQb3N0QnVpbGRKb2JUYXNrT3B0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB0b29scz86IFRvb2xzO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJ1bnNPbj86IHN0cmluZ1tdO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBBZGRQb3N0QnVpbGRKb2JDb21tYW5kc09wdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB0b29scz86IFRvb2xzO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY2hlY2tvdXRSZXBvPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGluc3RhbGxEZXBzPzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBydW5zT24/OiBzdHJpbmdbXTtcbn1cbiJdfQ==
|
|
249
|
+
BuildWorkflow[_a] = { fqn: "projen.build.BuildWorkflow", version: "0.52.25" };
|
|
250
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtd29ya2Zsb3cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVpbGQvYnVpbGQtd29ya2Zsb3cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSw0Q0FBeUM7QUFDekMsc0NBQWdFO0FBQ2hFLG1EQUc2QjtBQUM3QixpRUFBNkQ7QUFDN0QsK0RBTW1DO0FBQ25DLDhDQUE0QztBQUc1QyxNQUFNLGdCQUFnQixHQUFHLDJDQUEyQyxDQUFDO0FBQ3JFLE1BQU0sdUJBQXVCLEdBQzNCLHNEQUFzRCxDQUFDO0FBQ3pELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQztBQUM1QixNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztBQUMzQyxNQUFNLDZCQUE2QixHQUFHLHdCQUF3QixDQUFDO0FBQy9ELE1BQU0sT0FBTyxHQUNYLG9FQUFvRSxDQUFDO0FBQ3ZFLE1BQU0sUUFBUSxHQUFHLEtBQUssT0FBTyxHQUFHLENBQUM7QUFDakMsTUFBTSx1QkFBdUIsR0FBRyxTQUFTLFdBQVcsWUFBWSw2QkFBNkIsRUFBRSxDQUFDO0FBdUVoRyxNQUFhLGFBQWMsU0FBUSxxQkFBUztJQVkxQyxZQUFZLE9BQWdCLEVBQUUsT0FBNkI7O1FBQ3pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUxBLG1CQUFjLEdBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUU3QyxtQkFBYyxHQUFhLEVBQUUsQ0FBQztRQUs3QyxNQUFNLE1BQU0sR0FBRyxlQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLElBQUksS0FBSyxDQUNiLCtEQUErRCxDQUNoRSxDQUFDO1NBQ0g7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxTQUFHLE9BQU8sQ0FBQyxhQUFhLG1DQUFJLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsY0FB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QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhc2sgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IEdpdEh1YiwgR2l0aHViV29ya2Zsb3csIEdpdElkZW50aXR5IH0gZnJvbSBcIi4uL2dpdGh1YlwiO1xuaW1wb3J0IHtcbiAgQlVJTERfQVJUSUZBQ1RfTkFNRSxcbiAgREVGQVVMVF9HSVRIVUJfQUNUSU9OU19VU0VSLFxufSBmcm9tIFwiLi4vZ2l0aHViL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb25zIH0gZnJvbSBcIi4uL2dpdGh1Yi93b3JrZmxvdy1hY3Rpb25zXCI7XG5pbXBvcnQge1xuICBKb2IsXG4gIEpvYlBlcm1pc3Npb24sXG4gIEpvYlN0ZXAsXG4gIFRvb2xzLFxuICBUcmlnZ2Vycyxcbn0gZnJvbSBcIi4uL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWxcIjtcbmltcG9ydCB7IE5vZGVQcm9qZWN0IH0gZnJvbSBcIi4uL2phdmFzY3JpcHRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG5jb25zdCBQVUxMX1JFUVVFU1RfUkVGID0gXCIke3sgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnJlZiB9fVwiO1xuY29uc3QgUFVMTF9SRVFVRVNUX1JFUE9TSVRPUlkgPVxuICBcIiR7eyBnaXRodWIuZXZlbnQucHVsbF9yZXF1ZXN0LmhlYWQucmVwby5mdWxsX25hbWUgfX1cIjtcbmNvbnN0IEJVSUxEX0pPQklEID0gXCJidWlsZFwiO1xuY29uc3QgU0VMRl9NVVRBVElPTl9TVEVQID0gXCJzZWxmX211dGF0aW9uXCI7XG5jb25zdCBTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVCA9IFwic2VsZl9tdXRhdGlvbl9oYXBwZW5lZFwiO1xuY29uc3QgSVNfRk9SSyA9XG4gIFwiZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnJlcG8uZnVsbF9uYW1lICE9IGdpdGh1Yi5yZXBvc2l0b3J5XCI7XG5jb25zdCBOT1RfRk9SSyA9IGAhKCR7SVNfRk9SS30pYDtcbmNvbnN0IFNFTEZfTVVUQVRJT05fQ09ORElUSU9OID0gYG5lZWRzLiR7QlVJTERfSk9CSUR9Lm91dHB1dHMuJHtTRUxGX01VVEFUSU9OX0hBUFBFTkVEX09VVFBVVH1gO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkV29ya2Zsb3dPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSB0YXNrIHRvIGV4ZWN1dGUgaW4gb3JkZXIgdG8gYnVpbGQgdGhlIHByb2plY3QuXG4gICAqL1xuICByZWFkb25seSBidWlsZFRhc2s6IFRhc2s7XG5cbiAgLyoqXG4gICAqIEEgbmFtZSBvZiBhIGRpcmVjdG9yeSB0aGF0IGluY2x1ZGVzIGJ1aWxkIGFydGlmYWN0cy5cbiAgICovXG4gIHJlYWRvbmx5IGFydGlmYWN0c0RpcmVjdG9yeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGFpbmVyIGltYWdlIHRvIHVzZSBmb3IgYnVpbGRzLlxuICAgKiBAZGVmYXVsdCAtIHRoZSBkZWZhdWx0IHdvcmtmbG93IGNvbnRhaW5lclxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFpbmVySW1hZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgdXBkYXRlIGZpbGVzIG1vZGlmaWVkIGR1cmluZyBidWlsZHMgdG8gcHVsbC1yZXF1ZXN0IGJyYW5jaGVzLlxuICAgKiBUaGlzIG1lYW5zIHRoYXQgYW55IGZpbGVzIHN5bnRoZXNpemVkIGJ5IHByb2plbiBvciBlLmcuIHRlc3Qgc25hcHNob3RzIHdpbGxcbiAgICogYWx3YXlzIGJlIHVwLXRvLWRhdGUgYmVmb3JlIGEgUFIgaXMgbWVyZ2VkLlxuICAgKlxuICAgKiBJbXBsaWVzIHRoYXQgUFIgYnVpbGRzIGRvIG5vdCBoYXZlIGFudGktdGFtcGVyIGNoZWNrcy5cbiAgICpcbiAgICogVGhpcyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQgb25seSBpZiBgZ2l0aHViVG9rZW5TZWNyZXRgIGlzIHNldC4gT3RoZXJ3aXNlIGl0XG4gICAqIGlzIGRpc2FibGVkLCB3aGljaCBpbXBsaWVzIHRoYXQgZmlsZSBjaGFuZ2VzIHRoYXQgaGFwcGVuIGR1cmluZyBidWlsZCB3aWxsXG4gICAqIG5vdCBiZSBwdXNoZWQgYmFjayB0byB0aGUgYnJhbmNoLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBtdXRhYmxlQnVpbGQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTdGVwcyB0byBleGVjdXRlIGJlZm9yZSB0aGUgYnVpbGQuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBwcmVCdWlsZFN0ZXBzPzogSm9iU3RlcFtdO1xuXG4gIC8qKlxuICAgKiBTdGVwcyB0byBleGVjdXRlIGFmdGVyIGJ1aWxkLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgcG9zdEJ1aWxkU3RlcHM/OiBKb2JTdGVwW107XG5cbiAgLyoqXG4gICAqIEdpdCBpZGVudGl0eSB0byB1c2UgZm9yIHRoZSB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IGlkZW50aXR5XG4gICAqL1xuICByZWFkb25seSBnaXRJZGVudGl0eT86IEdpdElkZW50aXR5O1xuXG4gIC8qKlxuICAgKiBCdWlsZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICByZWFkb25seSBlbnY/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIHNlbGVjdGlvbiBsYWJlbHNcbiAgICogQGRlZmF1bHQgW1widWJ1bnR1LWxhdGVzdFwiXVxuICAgKi9cbiAgcmVhZG9ubHkgcnVuc09uPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHdvcmtmbG93IHRyaWdnZXJzXG4gICAqIEBkZWZhdWx0IFwieyBwdWxsUmVxdWVzdDoge30sIHdvcmtmbG93RGlzcGF0Y2g6IHt9IH1cIlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dUcmlnZ2Vycz86IFRyaWdnZXJzO1xufVxuXG5leHBvcnQgY2xhc3MgQnVpbGRXb3JrZmxvdyBleHRlbmRzIENvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcG9zdEJ1aWxkU3RlcHM6IEpvYlN0ZXBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBwcmVCdWlsZFN0ZXBzOiBKb2JTdGVwW107XG4gIHByaXZhdGUgcmVhZG9ubHkgZ2l0SWRlbnRpdHk6IEdpdElkZW50aXR5O1xuICBwcml2YXRlIHJlYWRvbmx5IGJ1aWxkVGFzazogVGFzaztcbiAgcHJpdmF0ZSByZWFkb25seSBnaXRodWI6IEdpdEh1YjtcbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvdzogR2l0aHViV29ya2Zsb3c7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXJ0aWZhY3RzRGlyZWN0b3J5OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdFJ1bm5lcnM6IHN0cmluZ1tdID0gW1widWJ1bnR1LWxhdGVzdFwiXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9wb3N0QnVpbGRKb2JzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEJ1aWxkV29ya2Zsb3dPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBnaXRodWIgPSBHaXRIdWIub2YocHJvamVjdCk7XG4gICAgaWYgKCFnaXRodWIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJCdWlsZFdvcmtmbG93IGlzIGN1cnJlbnRseSBvbmx5IHN1cHBvcnRlZCBmb3IgR2l0SHViIHByb2plY3RzXCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5naXRodWIgPSBnaXRodWI7XG4gICAgdGhpcy5wcmVCdWlsZFN0ZXBzID0gb3B0aW9ucy5wcmVCdWlsZFN0ZXBzID8/IFtdO1xuICAgIHRoaXMucG9zdEJ1aWxkU3RlcHMgPSBvcHRpb25zLnBvc3RCdWlsZFN0ZXBzID8/IFtdO1xuICAgIHRoaXMuZ2l0SWRlbnRpdHkgPSBvcHRpb25zLmdpdElkZW50aXR5ID8/IERFRkFVTFRfR0lUSFVCX0FDVElPTlNfVVNFUjtcbiAgICB0aGlzLmJ1aWxkVGFzayA9IG9wdGlvbnMuYnVpbGRUYXNrO1xuICAgIHRoaXMuYXJ0aWZhY3RzRGlyZWN0b3J5ID0gb3B0aW9ucy5hcnRpZmFjdHNEaXJlY3Rvcnk7XG4gICAgY29uc3QgbXV0YWJsZUJ1aWxkcyA9IG9wdGlvbnMubXV0YWJsZUJ1aWxkID8/IHRydWU7XG5cbiAgICB0aGlzLndvcmtmbG93ID0gbmV3IEdpdGh1YldvcmtmbG93KGdpdGh1YiwgXCJidWlsZFwiKTtcbiAgICB0aGlzLndvcmtmbG93Lm9uKFxuICAgICAgb3B0aW9ucy53b3JrZmxvd1RyaWdnZXJzID8/IHtcbiAgICAgICAgcHVsbFJlcXVlc3Q6IHt9LFxuICAgICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSwgLy8gYWxsb3cgbWFudWFsIHRyaWdnZXJpbmdcbiAgICAgIH1cbiAgICApO1xuXG4gICAgdGhpcy5hZGRCdWlsZEpvYihvcHRpb25zKTtcblxuICAgIGlmIChtdXRhYmxlQnVpbGRzKSB7XG4gICAgICB0aGlzLmFkZFNlbGZNdXRhdGlvbkpvYihvcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZEJ1aWxkSm9iKG9wdGlvbnM6IEJ1aWxkV29ya2Zsb3dPcHRpb25zKSB7XG4gICAgdGhpcy53b3JrZmxvdy5hZGRKb2IoQlVJTERfSk9CSUQsIHtcbiAgICAgIHJ1bnNPbjogb3B0aW9ucy5ydW5zT24gPz8gdGhpcy5kZWZhdWx0UnVubmVycyxcbiAgICAgIGNvbnRhaW5lcjogb3B0aW9ucy5jb250YWluZXJJbWFnZVxuICAgICAgICA/IHsgaW1hZ2U6IG9wdGlvbnMuY29udGFpbmVySW1hZ2UgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIGVudjoge1xuICAgICAgICBDSTogXCJ0cnVlXCIsXG4gICAgICAgIC4uLm9wdGlvbnMuZW52LFxuICAgICAgfSxcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgfSxcbiAgICAgIHN0ZXBzOiAoKCkgPT4gdGhpcy5yZW5kZXJCdWlsZFN0ZXBzKCkpIGFzIGFueSxcbiAgICAgIG91dHB1dHM6IHtcbiAgICAgICAgW1NFTEZfTVVUQVRJT05fSEFQUEVORURfT1VUUFVUXToge1xuICAgICAgICAgIHN0ZXBJZDogU0VMRl9NVVRBVElPTl9TVEVQLFxuICAgICAgICAgIG91dHB1dE5hbWU6IFNFTEZfTVVUQVRJT05fSEFQUEVORURfT1VUUFVULFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgbGlzdCBvZiBqb2IgSURzIHRoYXQgYXJlIHBhcnQgb2YgdGhlIGJ1aWxkLlxuICAgKi9cbiAgcHVibGljIGdldCBidWlsZEpvYklkcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFtCVUlMRF9KT0JJRCwgLi4udGhpcy5fcG9zdEJ1aWxkSm9ic107XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBzdGVwcyB0aGF0IGFyZSBleGVjdXRlZCBhZnRlciB0aGUgYnVpbGQuXG4gICAqIEBwYXJhbSBzdGVwcyBUaGUgam9iIHN0ZXBzXG4gICAqL1xuICBwdWJsaWMgYWRkUG9zdEJ1aWxkU3RlcHMoLi4uc3RlcHM6IEpvYlN0ZXBbXSk6IHZvaWQge1xuICAgIHRoaXMucG9zdEJ1aWxkU3RlcHMucHVzaCguLi5zdGVwcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbm90aGVyIGpvYiB0byB0aGUgYnVpbGQgd29ya2Zsb3cgd2hpY2ggaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIGJ1aWxkXG4gICAqIGpvYiBzdWNjZWVkZWQuXG4gICAqXG4gICAqIEpvYnMgYXJlIGV4ZWN1dGVkIF9vbmx5XyBpZiB0aGUgYnVpbGQgZGlkIE5PVCBzZWxmIG11dGF0ZS4gSWYgdGhlIGJ1aWxkXG4gICAqIHNlbGYtbXV0YXRlLCB0aGUgYnJhbmNoIHdpbGwgZWl0aGVyIGJlIHVwZGF0ZWQgb3IgdGhlIGJ1aWxkIHdpbGwgZmFpbCAoaW5cbiAgICogZm9ya3MpLCBzbyB0aGVyZSBpcyBubyBwb2ludCBpbiBleGVjdXRpbmcgdGhlIHBvc3QtYnVpbGQgam9iLlxuICAgKlxuICAgKiBAcGFyYW0gaWQgVGhlIGlkIG9mIHRoZSBuZXcgam9iXG4gICAqIEBwYXJhbSBqb2IgVGhlIGpvYiBzcGVjaWZpY2F0aW9uXG4gICAqL1xuICBwdWJsaWMgYWRkUG9zdEJ1aWxkSm9iKGlkOiBzdHJpbmcsIGpvYjogSm9iKSB7XG4gICAgY29uc3Qgc3RlcHMgPSBbXTtcblxuICAgIGlmICh0aGlzLmFydGlmYWN0c0RpcmVjdG9yeSkge1xuICAgICAgc3RlcHMucHVzaCh7XG4gICAgICAgIG5hbWU6IFwiRG93bmxvYWQgYnVpbGQgYXJ0aWZhY3RzXCIsXG4gICAgICAgIHVzZXM6IFwiYWN0aW9ucy9kb3dubG9hZC1hcnRpZmFjdEB2MlwiLFxuICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgbmFtZTogQlVJTERfQVJUSUZBQ1RfTkFNRSxcbiAgICAgICAgICBwYXRoOiB0aGlzLmFydGlmYWN0c0RpcmVjdG9yeSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHN0ZXBzLnB1c2goLi4uam9iLnN0ZXBzKTtcblxuICAgIHRoaXMud29ya2Zsb3cuYWRkSm9iKGlkLCB7XG4gICAgICBuZWVkczogW0JVSUxEX0pPQklEXSxcbiAgICAgIC8vIG9ubHkgcnVuIGlmIGJ1aWxkIGRpZCBub3Qgc2VsZi1tdXRhdGVcbiAgICAgIGlmOiBgISAke1NFTEZfTVVUQVRJT05fQ09ORElUSU9OfWAsXG4gICAgICAuLi5qb2IsXG4gICAgICBzdGVwczogc3RlcHMsXG4gICAgfSk7XG5cbiAgICAvLyBhZGQgdG8gdGhlIGxpc3Qgb2YgYnVpbGQgam9iIElEc1xuICAgIHRoaXMuX3Bvc3RCdWlsZEpvYnMucHVzaChpZCk7XG4gIH1cblxuICAvKipcbiAgICogUnVuIGEgdGFzayBhcyBhIGpvYiB3aXRoaW4gdGhlIGJ1aWxkIHdvcmtmbG93IHdoaWNoIGlzIGV4ZWN1dGVkIGFmdGVyIHRoZVxuICAgKiBidWlsZCBqb2Igc3VjY2VlZGVkLlxuICAgKlxuICAgKiBUaGUgam9iIHdpbGwgaGF2ZSBhY2Nlc3MgdG8gYnVpbGQgYXJ0aWZhY3RzIGFuZCB3aWxsIGluc3RhbGwgcHJvamVjdFxuICAgKiBkZXBlbmRlbmNpZXMgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBydW4gYW55IGNvbW1hbmRzIHVzZWQgaW4gdGhlIHRhc2tzLlxuICAgKlxuICAgKiBKb2JzIGFyZSBleGVjdXRlZCBfb25seV8gaWYgdGhlIGJ1aWxkIGRpZCBOT1Qgc2VsZiBtdXRhdGUuIElmIHRoZSBidWlsZFxuICAgKiBzZWxmLW11dGF0ZSwgdGhlIGJyYW5jaCB3aWxsIGVpdGhlciBiZSB1cGRhdGVkIG9yIHRoZSBidWlsZCB3aWxsIGZhaWwgKGluXG4gICAqIGZvcmtzKSwgc28gdGhlcmUgaXMgbm8gcG9pbnQgaW4gZXhlY3V0aW5nIHRoZSBwb3N0LWJ1aWxkIGpvYi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgU3BlY2lmeSB0b29scyBhbmQgb3RoZXIgb3B0aW9uc1xuICAgKi9cbiAgcHVibGljIGFkZFBvc3RCdWlsZEpvYlRhc2sodGFzazogVGFzaywgb3B0aW9uczogQWRkUG9zdEJ1aWxkSm9iVGFza09wdGlvbnMpIHtcbiAgICB0aGlzLmFkZFBvc3RCdWlsZEpvYkNvbW1hbmRzKFxuICAgICAgYHBvc3QtYnVpbGQtJHt0YXNrLm5hbWV9YCxcbiAgICAgIFtgJHt0aGlzLnByb2plY3QucHJvamVuQ29tbWFuZH0gJHt0YXNrLm5hbWV9YF0sXG4gICAgICB7XG4gICAgICAgIGNoZWNrb3V0UmVwbzogdHJ1ZSxcbiAgICAgICAgaW5zdGFsbERlcHM6IHRydWUsXG4gICAgICAgIHRvb2xzOiBvcHRpb25zLnRvb2xzLFxuICAgICAgICBydW5zT246IG9wdGlvbnMucnVuc09uLFxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUnVuIGEgc2VxdWVuY2Ugb2YgY29tbWFuZHMgYXMgYSBqb2Igd2l0aGluIHRoZSBidWlsZCB3b3JrZmxvdyB3aGljaCBpc1xuICAgKiBleGVjdXRlZCBhZnRlciB0aGUgYnVpbGQgam9iIHN1Y2NlZWRlZC5cbiAgICpcbiAgICogSm9icyBhcmUgZXhlY3V0ZWQgX29ubHlfIGlmIHRoZSBidWlsZCBkaWQgTk9UIHNlbGYgbXV0YXRlLiBJZiB0aGUgYnVpbGRcbiAgICogc2VsZi1tdXRhdGUsIHRoZSBicmFuY2ggd2lsbCBlaXRoZXIgYmUgdXBkYXRlZCBvciB0aGUgYnVpbGQgd2lsbCBmYWlsIChpblxuICAgKiBmb3JrcyksIHNvIHRoZXJlIGlzIG5vIHBvaW50IGluIGV4ZWN1dGluZyB0aGUgcG9zdC1idWlsZCBqb2IuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIFNwZWNpZnkgdG9vbHMgYW5kIG90aGVyIG9wdGlvbnNcbiAgICovXG4gIHB1YmxpYyBhZGRQb3N0QnVpbGRKb2JDb21tYW5kcyhcbiAgICBpZDogc3RyaW5nLFxuICAgIGNvbW1hbmRzOiBzdHJpbmdbXSxcbiAgICBvcHRpb25zPzogQWRkUG9zdEJ1aWxkSm9iQ29tbWFuZHNPcHRpb25zXG4gICkge1xuICAgIGNvbnN0IHN0ZXBzID0gW107XG5cbiAgICBpZiAob3B0aW9ucz8uY2hlY2tvdXRSZXBvKSB7XG4gICAgICBzdGVwcy5wdXNoKHtcbiAgICAgICAgbmFtZTogXCJDaGVja291dFwiLFxuICAgICAgICB1c2VzOiBcImFjdGlvbnMvY2hlY2tvdXRAdjJcIixcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIHJlZjogUFVMTF9SRVFVRVNUX1JFRixcbiAgICAgICAgICByZXBvc2l0b3J5OiBQVUxMX1JFUVVFU1RfUkVQT1NJVE9SWSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG9wdGlvbnM/LmNoZWNrb3V0UmVwbyAmJlxuICAgICAgb3B0aW9ucz8uaW5zdGFsbERlcHMgJiZcbiAgICAgIHRoaXMucHJvamVjdCBpbnN0YW5jZW9mIE5vZGVQcm9qZWN0XG4gICAgKSB7XG4gICAgICBzdGVwcy5wdXNoKHtcbiAgICAgICAgbmFtZTogXCJJbnN0YWxsIGRlcGVuZGVuY2llc1wiLFxuICAgICAgICBydW46IGAke3RoaXMucHJvamVjdC5wYWNrYWdlLmluc3RhbGxDb21tYW5kfWAsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBzdGVwcy5wdXNoKHsgcnVuOiBjb21tYW5kcy5qb2luKFwiXFxuXCIpIH0pO1xuXG4gICAgdGhpcy5hZGRQb3N0QnVpbGRKb2IoaWQsIHtcbiAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICB9LFxuICAgICAgdG9vbHM6IG9wdGlvbnM/LnRvb2xzLFxuICAgICAgcnVuc09uOiBvcHRpb25zPy5ydW5zT24gPz8gdGhpcy5kZWZhdWx0UnVubmVycyxcbiAgICAgIHN0ZXBzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRTZWxmTXV0YXRpb25Kb2Iob3B0aW9uczogQnVpbGRXb3JrZmxvd09wdGlvbnMpIHtcbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYihcInNlbGYtbXV0YXRpb25cIiwge1xuICAgICAgcnVuc09uOiBvcHRpb25zLnJ1bnNPbiA/PyB0aGlzLmRlZmF1bHRSdW5uZXJzLFxuICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgY29udGVudHM6IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICB9LFxuICAgICAgbmVlZHM6IFtCVUlMRF9KT0JJRF0sXG4gICAgICBpZjogYGFsd2F5cygpICYmICR7U0VMRl9NVVRBVElPTl9DT05ESVRJT059ICYmICR7Tk9UX0ZPUkt9YCxcbiAgICAgIHN0ZXBzOiBbXG4gICAgICAgIC4uLldvcmtmbG93QWN0aW9ucy5jaGVja291dFdpdGhQYXRjaCh7XG4gICAgICAgICAgLy8gd2UgbmVlZCB0byB1c2UgYSBQQVQgc28gdGhhdCBvdXIgcHVzaCB3aWxsIHRyaWdnZXIgdGhlIGJ1aWxkIHdvcmtmbG93XG4gICAgICAgICAgdG9rZW46IGBcXCR7eyBzZWNyZXRzLiR7dGhpcy53b3JrZmxvdy5wcm9qZW5Ub2tlblNlY3JldH0gfX1gLFxuICAgICAgICAgIHJlZjogUFVMTF9SRVFVRVNUX1JFRixcbiAgICAgICAgICByZXBvc2l0b3J5OiBQVUxMX1JFUVVFU1RfUkVQT1NJVE9SWSxcbiAgICAgICAgfSksXG4gICAgICAgIC4uLldvcmtmbG93QWN0aW9ucy5zZXRHaXRJZGVudGl0eSh0aGlzLmdpdElkZW50aXR5KSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiUHVzaCBjaGFuZ2VzXCIsXG4gICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICBcIiAgZ2l0IGFkZCAuXCIsXG4gICAgICAgICAgICAnICBnaXQgY29tbWl0IC1zIC1tIFwiY2hvcmU6IHNlbGYgbXV0YXRpb25cIicsXG4gICAgICAgICAgICBgICBnaXQgcHVzaCBvcmlnaW4gSEVBRDoke1BVTExfUkVRVUVTVF9SRUZ9YCxcbiAgICAgICAgICBdLmpvaW4oXCJcXG5cIiksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCAobGF6aWx5KSBkdXJpbmcgc3ludGggdG8gcmVuZGVyIHRoZSBidWlsZCBqb2Igc3RlcHMuXG4gICAqL1xuICBwcml2YXRlIHJlbmRlckJ1aWxkU3RlcHMoKTogSm9iU3RlcFtdIHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBcIkNoZWNrb3V0XCIsXG4gICAgICAgIHVzZXM6IFwiYWN0aW9ucy9jaGVja291dEB2MlwiLFxuICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgcmVmOiBQVUxMX1JFUVVFU1RfUkVGLFxuICAgICAgICAgIHJlcG9zaXRvcnk6IFBVTExfUkVRVUVTVF9SRVBPU0lUT1JZLFxuICAgICAgICB9LFxuICAgICAgfSxcblxuICAgICAgLi4udGhpcy5wcmVCdWlsZFN0ZXBzLFxuXG4gICAgICB7XG4gICAgICAgIG5hbWU6IHRoaXMuYnVpbGRUYXNrLm5hbWUsXG4gICAgICAgIHJ1bjogdGhpcy5naXRodWIucHJvamVjdC5ydW5UYXNrQ29tbWFuZCh0aGlzLmJ1aWxkVGFzayksXG4gICAgICB9LFxuXG4gICAgICAuLi50aGlzLnBvc3RCdWlsZFN0ZXBzLFxuXG4gICAgICAvLyBjaGVjayBmb3IgbXV0YXRpb25zIGFuZCB1cGxvYWQgYSBnaXQgcGF0Y2ggZmlsZSBhcyBhbiBhcnRpZmFjdFxuICAgICAgLi4uV29ya2Zsb3dBY3Rpb25zLmNyZWF0ZVVwbG9hZEdpdFBhdGNoKHtcbiAgICAgICAgc3RlcElkOiBTRUxGX01VVEFUSU9OX1NURVAsXG4gICAgICAgIG91dHB1dE5hbWU6IFNFTEZfTVVUQVRJT05fSEFQUEVORURfT1VUUFVULFxuICAgICAgICBtdXRhdGlvbkVycm9yOlxuICAgICAgICAgIFwiRmlsZXMgd2VyZSBjaGFuZ2VkIGR1cmluZyBidWlsZCAoc2VlIGJ1aWxkIGxvZykuIElmIHRoaXMgd2FzIHRyaWdnZXJlZCBmcm9tIGEgZm9yaywgeW91IHdpbGwgbmVlZCB0byB1cGRhdGUgeW91ciBicmFuY2guXCIsXG4gICAgICB9KSxcblxuICAgICAgLy8gdXBsb2FkIHRoZSBidWlsZCBhcnRpZmFjdCBvbmx5IGlmIHdlIGhhdmUgcG9zdC1idWlsZCBqb2JzIChvdGhlcndpc2UsIHRoZXJlJ3Mgbm8gcG9pbnQpXG4gICAgICAuLi4odGhpcy5fcG9zdEJ1aWxkSm9icy5sZW5ndGggPT0gMFxuICAgICAgICA/IFtdXG4gICAgICAgIDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiBcIlVwbG9hZCBhcnRpZmFjdFwiLFxuICAgICAgICAgICAgICB1c2VzOiBcImFjdGlvbnMvdXBsb2FkLWFydGlmYWN0QHYyLjEuMVwiLFxuICAgICAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogQlVJTERfQVJUSUZBQ1RfTkFNRSxcbiAgICAgICAgICAgICAgICBwYXRoOiB0aGlzLmFydGlmYWN0c0RpcmVjdG9yeSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSksXG4gICAgXTtcbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBCdWlsZFdvcmtmbG93LmFkZFBvc3RCdWlsZEpvYlRhc2tgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkUG9zdEJ1aWxkSm9iVGFza09wdGlvbnMge1xuICAvKipcbiAgICogVG9vbHMgdGhhdCBzaG91bGQgYmUgaW5zdGFsbGVkIGJlZm9yZSB0aGUgdGFzayBpcyBydW4uXG4gICAqL1xuICByZWFkb25seSB0b29scz86IFRvb2xzO1xuXG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIHNlbGVjdGlvbiBsYWJlbHNcbiAgICogQGRlZmF1bHQgW1widWJ1bnR1LWxhdGVzdFwiXVxuICAgKi9cbiAgcmVhZG9ubHkgcnVuc09uPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEJ1aWxkV29ya2Zsb3cuYWRkUG9zdEJ1aWxkSm9iQ29tbWFuZHNgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkUG9zdEJ1aWxkSm9iQ29tbWFuZHNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRvb2xzIHRoYXQgc2hvdWxkIGJlIGluc3RhbGxlZCBiZWZvcmUgdGhlIGNvbW1hbmRzIGFyZSBydW4uXG4gICAqL1xuICByZWFkb25seSB0b29scz86IFRvb2xzO1xuXG4gIC8qKlxuICAgKiBDaGVjayBvdXQgdGhlIHJlcG9zaXRvcnkgYXQgdGhlIHB1bGwgcmVxdWVzdCBicmFuY2ggYmVmb3JlIGNvbW1hbmRzIGFyZVxuICAgKiBydW4uXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjaGVja291dFJlcG8/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJbnN0YWxsIHByb2plY3QgZGVwZW5kZW5jaWVzIGJlZm9yZSBydW5uaW5nIGNvbW1hbmRzLiBgY2hlY2tvdXRSZXBvYCBtdXN0XG4gICAqIGFsc28gYmUgc2V0IHRvIHRydWUuXG4gICAqXG4gICAqIEN1cnJlbnRseSBvbmx5IHN1cHBvcnRlZCBmb3IgYE5vZGVQcm9qZWN0YC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbGxEZXBzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBzZWxlY3Rpb24gbGFiZWxzXG4gICAqIEBkZWZhdWx0IFtcInVidW50dS1sYXRlc3RcIl1cbiAgICovXG4gIHJlYWRvbmx5IHJ1bnNPbj86IHN0cmluZ1tdO1xufVxuIl19
|
|
@@ -1,68 +1,45 @@
|
|
|
1
1
|
import { Component } from "../component";
|
|
2
2
|
import { Project } from "../project";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* @experimental
|
|
4
|
+
* Options for `AutoDiscoverBase`
|
|
7
5
|
*/
|
|
8
6
|
export interface AutoDiscoverBaseOptions {
|
|
9
7
|
/**
|
|
10
|
-
*
|
|
8
|
+
* Locate files with the given extension.
|
|
11
9
|
*
|
|
12
|
-
* @
|
|
13
|
-
* @example
|
|
14
|
-
*
|
|
15
|
-
* ".integ.ts"
|
|
10
|
+
* @example ".integ.ts"
|
|
16
11
|
*/
|
|
17
12
|
readonly extension: string;
|
|
18
13
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* @experimental
|
|
22
|
-
* @example
|
|
14
|
+
* Locate entrypoints in the given project directory.
|
|
23
15
|
*
|
|
24
|
-
* "test"
|
|
16
|
+
* @example "test"
|
|
25
17
|
*/
|
|
26
18
|
readonly projectdir: string;
|
|
27
19
|
}
|
|
28
20
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* @experimental
|
|
21
|
+
* Base class for auto-discovering and creating project subcomponents.
|
|
32
22
|
*/
|
|
33
23
|
export declare abstract class AutoDiscoverBase extends Component {
|
|
34
24
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* @experimental
|
|
25
|
+
* Auto-discovered entry points with paths relative to the project
|
|
26
|
+
* directory.
|
|
38
27
|
*/
|
|
39
28
|
readonly entrypoints: string[];
|
|
40
|
-
/**
|
|
41
|
-
* @experimental
|
|
42
|
-
*/
|
|
43
29
|
constructor(project: Project, options: AutoDiscoverBaseOptions);
|
|
44
30
|
}
|
|
45
31
|
/**
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
* @experimental
|
|
32
|
+
* Options for `IntegrationTestAutoDiscoverBase`
|
|
49
33
|
*/
|
|
50
34
|
export interface IntegrationTestAutoDiscoverBaseOptions {
|
|
51
35
|
/**
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
* @experimental
|
|
36
|
+
* Test source tree.
|
|
55
37
|
*/
|
|
56
38
|
readonly testdir: string;
|
|
57
39
|
}
|
|
58
40
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
* @experimental
|
|
41
|
+
* Base class for locating integration tests in the project's test tree.
|
|
62
42
|
*/
|
|
63
43
|
export declare class IntegrationTestAutoDiscoverBase extends AutoDiscoverBase {
|
|
64
|
-
/**
|
|
65
|
-
* @experimental
|
|
66
|
-
*/
|
|
67
44
|
constructor(project: Project, options: IntegrationTestAutoDiscoverBaseOptions);
|
|
68
45
|
}
|
|
@@ -8,14 +8,9 @@ const glob = require("glob");
|
|
|
8
8
|
const component_1 = require("../component");
|
|
9
9
|
const internal_1 = require("./internal");
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @experimental
|
|
11
|
+
* Base class for auto-discovering and creating project subcomponents.
|
|
14
12
|
*/
|
|
15
13
|
class AutoDiscoverBase extends component_1.Component {
|
|
16
|
-
/**
|
|
17
|
-
* @experimental
|
|
18
|
-
*/
|
|
19
14
|
constructor(project, options) {
|
|
20
15
|
super(project);
|
|
21
16
|
const cwd = path_1.join(this.project.outdir, options.projectdir);
|
|
@@ -26,16 +21,11 @@ class AutoDiscoverBase extends component_1.Component {
|
|
|
26
21
|
}
|
|
27
22
|
exports.AutoDiscoverBase = AutoDiscoverBase;
|
|
28
23
|
_a = JSII_RTTI_SYMBOL_1;
|
|
29
|
-
AutoDiscoverBase[_a] = { fqn: "projen.cdk.AutoDiscoverBase", version: "0.52.
|
|
24
|
+
AutoDiscoverBase[_a] = { fqn: "projen.cdk.AutoDiscoverBase", version: "0.52.25" };
|
|
30
25
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* @experimental
|
|
26
|
+
* Base class for locating integration tests in the project's test tree.
|
|
34
27
|
*/
|
|
35
28
|
class IntegrationTestAutoDiscoverBase extends AutoDiscoverBase {
|
|
36
|
-
/**
|
|
37
|
-
* @experimental
|
|
38
|
-
*/
|
|
39
29
|
constructor(project, options) {
|
|
40
30
|
super(project, {
|
|
41
31
|
extension: internal_1.TYPESCRIPT_INTEG_EXT,
|
|
@@ -45,5 +35,5 @@ class IntegrationTestAutoDiscoverBase extends AutoDiscoverBase {
|
|
|
45
35
|
}
|
|
46
36
|
exports.IntegrationTestAutoDiscoverBase = IntegrationTestAutoDiscoverBase;
|
|
47
37
|
_b = JSII_RTTI_SYMBOL_1;
|
|
48
|
-
IntegrationTestAutoDiscoverBase[_b] = { fqn: "projen.cdk.IntegrationTestAutoDiscoverBase", version: "0.52.
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
IntegrationTestAutoDiscoverBase[_b] = { fqn: "projen.cdk.IntegrationTestAutoDiscoverBase", version: "0.52.25" };
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1kaXNjb3Zlci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nkay9hdXRvLWRpc2NvdmVyLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBNEI7QUFDNUIsNkJBQTZCO0FBQzdCLDRDQUF5QztBQUV6Qyx5Q0FBa0Q7QUFxQmxEOztHQUVHO0FBQ0gsTUFBc0IsZ0JBQWlCLFNBQVEscUJBQVM7SUFPdEQsWUFBWSxPQUFnQixFQUFFLE9BQWdDO1FBQzVELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sR0FBRyxHQUFHLFdBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFMUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJO2FBQ3BCLElBQUksQ0FBQyxPQUFPLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDO2FBQ3pDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsV0FBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QyxDQUFDOztBQWZILDRDQWdCQzs7O0FBWUQ7O0dBRUc7QUFDSCxNQUFhLCtCQUFnQyxTQUFRLGdCQUFnQjtJQUNuRSxZQUNFLE9BQWdCLEVBQ2hCLE9BQStDO1FBRS9DLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixTQUFTLEVBQUUsK0JBQW9CO1lBQy9CLFVBQVUsRUFBRSxPQUFPLENBQUMsT0FBTztTQUM1QixDQUFDLENBQUM7SUFDTCxDQUFDOztBQVRILDBFQVVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgam9pbiB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgKiBhcyBnbG9iIGZyb20gXCJnbG9iXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFRZUEVTQ1JJUFRfSU5URUdfRVhUIH0gZnJvbSBcIi4vaW50ZXJuYWxcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgQXV0b0Rpc2NvdmVyQmFzZWBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRvRGlzY292ZXJCYXNlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBMb2NhdGUgZmlsZXMgd2l0aCB0aGUgZ2l2ZW4gZXh0ZW5zaW9uLlxuICAgKlxuICAgKiBAZXhhbXBsZSBcIi5pbnRlZy50c1wiXG4gICAqL1xuICByZWFkb25seSBleHRlbnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogTG9jYXRlIGVudHJ5cG9pbnRzIGluIHRoZSBnaXZlbiBwcm9qZWN0IGRpcmVjdG9yeS5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJ0ZXN0XCJcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RkaXI6IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBhdXRvLWRpc2NvdmVyaW5nIGFuZCBjcmVhdGluZyBwcm9qZWN0IHN1YmNvbXBvbmVudHMuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBdXRvRGlzY292ZXJCYXNlIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIEF1dG8tZGlzY292ZXJlZCBlbnRyeSBwb2ludHMgd2l0aCBwYXRocyByZWxhdGl2ZSB0byB0aGUgcHJvamVjdFxuICAgKiBkaXJlY3RvcnkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZW50cnlwb2ludHM6IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEF1dG9EaXNjb3ZlckJhc2VPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBjd2QgPSBqb2luKHRoaXMucHJvamVjdC5vdXRkaXIsIG9wdGlvbnMucHJvamVjdGRpcik7XG5cbiAgICB0aGlzLmVudHJ5cG9pbnRzID0gZ2xvYlxuICAgICAgLnN5bmMoYCoqLyoke29wdGlvbnMuZXh0ZW5zaW9ufWAsIHsgY3dkIH0pXG4gICAgICAubWFwKChwKSA9PiBqb2luKG9wdGlvbnMucHJvamVjdGRpciwgcCkpO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2VgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogVGVzdCBzb3VyY2UgdHJlZS5cbiAgICovXG4gIHJlYWRvbmx5IHRlc3RkaXI6IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBsb2NhdGluZyBpbnRlZ3JhdGlvbiB0ZXN0cyBpbiB0aGUgcHJvamVjdCdzIHRlc3QgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2UgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvamVjdDogUHJvamVjdCxcbiAgICBvcHRpb25zOiBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJCYXNlT3B0aW9uc1xuICApIHtcbiAgICBzdXBlcihwcm9qZWN0LCB7XG4gICAgICBleHRlbnNpb246IFRZUEVTQ1JJUFRfSU5URUdfRVhULFxuICAgICAgcHJvamVjdGRpcjogb3B0aW9ucy50ZXN0ZGlyLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { JsiiProject, JsiiProjectOptions } from "./jsii-project";
|
|
2
|
-
/**
|
|
3
|
-
* @experimental
|
|
4
|
-
*/
|
|
5
2
|
export interface ConstructLibraryOptions extends JsiiProjectOptions {
|
|
6
3
|
/**
|
|
7
|
-
*
|
|
4
|
+
* Libraries will be picked up by the construct catalog when they are
|
|
5
|
+
* published to npm as jsii modules and will be published under:
|
|
8
6
|
*
|
|
9
|
-
*
|
|
7
|
+
* https://awscdk.io/packages/[@SCOPE/]PACKAGE@VERSION
|
|
10
8
|
*
|
|
11
9
|
* The catalog will also post a tweet to https://twitter.com/awscdkio with the
|
|
12
10
|
* package name, description and the above link. You can disable these tweets
|
|
@@ -15,38 +13,26 @@ export interface ConstructLibraryOptions extends JsiiProjectOptions {
|
|
|
15
13
|
* You can also add a Twitter handle through `{ twitter: 'xx' }` which will be
|
|
16
14
|
* mentioned in the tweet.
|
|
17
15
|
*
|
|
18
|
-
* @default - new version will be announced
|
|
19
16
|
* @see https://github.com/construct-catalog/catalog
|
|
20
|
-
*
|
|
17
|
+
*
|
|
18
|
+
* @default - new version will be announced
|
|
21
19
|
*/
|
|
22
20
|
readonly catalog?: Catalog;
|
|
23
21
|
}
|
|
24
|
-
/**
|
|
25
|
-
* @experimental
|
|
26
|
-
*/
|
|
27
22
|
export interface Catalog {
|
|
28
23
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* @experimental
|
|
24
|
+
* Twitter account to @mention in announcement tweet.
|
|
32
25
|
*/
|
|
33
26
|
readonly twitter?: string;
|
|
34
27
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
28
|
+
* Should we announce new versions?
|
|
37
29
|
* @default true
|
|
38
|
-
* @experimental
|
|
39
30
|
*/
|
|
40
31
|
readonly announce?: boolean;
|
|
41
32
|
}
|
|
42
33
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
* @experimental
|
|
34
|
+
* A multi-language library for CDK constructs.
|
|
46
35
|
*/
|
|
47
36
|
export declare abstract class ConstructLibrary extends JsiiProject {
|
|
48
|
-
/**
|
|
49
|
-
* @experimental
|
|
50
|
-
*/
|
|
51
37
|
constructor(options: ConstructLibraryOptions);
|
|
52
38
|
}
|