aws-cdk 2.1000.2 → 2.1000.3
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/README.md +1 -1
- package/THIRD_PARTY_LICENSES +104 -3196
- package/build-info.json +2 -2
- package/db.json.gz +0 -0
- package/lib/api/aws-auth/account-cache.d.ts +0 -3
- package/lib/api/aws-auth/account-cache.js +1 -4
- package/lib/api/aws-auth/awscli-compatible.js +1 -1
- package/lib/api/aws-auth/credential-plugins.js +4 -4
- package/lib/api/aws-auth/sdk-logger.js +2 -2
- package/lib/api/aws-auth/sdk-provider.js +3 -3
- package/lib/api/aws-auth/sdk.js +3 -3
- package/lib/api/aws-auth/tracing.js +1 -1
- package/lib/api/bootstrap/bootstrap-environment.js +3 -3
- package/lib/api/bootstrap/deploy-bootstrap.js +1 -1
- package/lib/api/cxapp/cloud-assembly.js +3 -2
- package/lib/api/cxapp/cloud-executable.js +1 -1
- package/lib/api/cxapp/environments.js +1 -1
- package/lib/api/cxapp/exec.js +1 -1
- package/lib/api/deployments/asset-publishing.js +1 -1
- package/lib/api/deployments/assets.js +1 -1
- package/lib/api/deployments/cloudformation.d.ts +2 -2
- package/lib/api/deployments/cloudformation.js +7 -7
- package/lib/api/deployments/deploy-stack.d.ts +1 -1
- package/lib/api/deployments/deploy-stack.js +8 -8
- package/lib/api/deployments/deployments.d.ts +3 -3
- package/lib/api/deployments/deployments.js +12 -14
- package/lib/api/deployments/hotswap-deployments.js +3 -3
- package/lib/api/deployments/nested-stack-helpers.js +3 -3
- package/lib/api/environment/environment-access.js +3 -3
- package/lib/api/environment/environment-resources.js +3 -3
- package/lib/api/evaluate-cloudformation-template.js +2 -2
- package/lib/api/garbage-collection/garbage-collector.js +1 -1
- package/lib/api/hotswap/appsync-mapping-templates.js +2 -2
- package/lib/api/hotswap/common.d.ts +1 -1
- package/lib/api/hotswap/common.js +2 -2
- package/lib/api/hotswap/lambda-functions.js +5 -3
- package/lib/api/logs/find-cloudwatch-logs.js +3 -3
- package/lib/api/logs/index.d.ts +2 -0
- package/lib/api/logs/index.js +19 -0
- package/lib/api/resource-import/importer.d.ts +2 -2
- package/lib/api/resource-import/importer.js +1 -1
- package/lib/api/resource-import/migrator.js +2 -2
- package/lib/api/settings.js +1 -1
- package/lib/api/{util → stack-events}/display.js +1 -1
- package/lib/api/stack-events/index.d.ts +3 -0
- package/lib/api/stack-events/index.js +20 -0
- package/lib/api/{util/cloudformation → stack-events}/stack-activity-monitor.d.ts +2 -2
- package/lib/api/{util/cloudformation → stack-events}/stack-activity-monitor.js +4 -4
- package/lib/api/{util/cloudformation → stack-events}/stack-event-poller.d.ts +1 -1
- package/lib/api/{util/cloudformation → stack-events}/stack-event-poller.js +3 -3
- package/lib/api/{util/cloudformation → stack-events}/stack-status.js +1 -1
- package/lib/api/toolkit-info.js +3 -2
- package/lib/api/util/rwlock.js +1 -1
- package/lib/api/util/template-body-parameter.js +2 -2
- package/lib/api/work-graph/index.d.ts +3 -0
- package/lib/api/work-graph/index.js +20 -0
- package/lib/{util → api/work-graph}/work-graph-builder.d.ts +4 -1
- package/lib/api/work-graph/work-graph-builder.js +169 -0
- package/lib/api/work-graph/work-graph-types.js +13 -0
- package/lib/{util → api/work-graph}/work-graph.d.ts +9 -2
- package/lib/api/work-graph/work-graph.js +349 -0
- package/lib/cli/cdk-toolkit.d.ts +3 -3
- package/lib/cli/cdk-toolkit.js +19 -17
- package/lib/cli/cli-config.js +5 -5
- package/lib/cli/cli.js +2 -2
- package/lib/cli/parse-command-line-arguments.js +2 -2
- package/lib/cli/platform-warnings.js +1 -1
- package/lib/cli/user-input.d.ts +3 -10
- package/lib/cli/user-input.js +1 -1
- package/lib/commands/context.js +3 -3
- package/lib/commands/docs.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/context-providers/ami.js +1 -1
- package/lib/context-providers/availability-zones.js +1 -1
- package/lib/context-providers/endpoint-service-availability-zones.js +1 -1
- package/lib/context-providers/hosted-zones.js +1 -1
- package/lib/context-providers/index.js +3 -3
- package/lib/context-providers/keys.js +1 -1
- package/lib/context-providers/load-balancers.js +1 -1
- package/lib/context-providers/security-groups.js +1 -1
- package/lib/context-providers/ssm-parameters.js +1 -1
- package/lib/context-providers/vpcs.js +1 -1
- package/lib/diff.js +1 -1
- package/lib/index.js +80105 -89787
- package/lib/init-hooks.js +3 -4
- package/lib/init-templates/.init-version.json +1 -1
- package/lib/init-templates/.recommended-feature-flags.json +2 -1
- package/lib/init.js +3 -3
- package/lib/legacy-exports-source.d.ts +1 -1
- package/lib/legacy-exports-source.js +2 -2
- package/lib/notices.js +5 -5
- package/lib/util/archive.js +3 -3
- package/lib/util/cloudformation.js +10 -0
- package/lib/util/directories.js +3 -2
- package/lib/util/format-error.js +22 -0
- package/lib/util/index.d.ts +11 -1
- package/lib/util/index.js +12 -2
- package/lib/util/objects.js +1 -1
- package/lib/util/parallel.js +7 -3
- package/lib/{serialize.js → util/serialize.js} +3 -3
- package/lib/util/version-range.js +1 -1
- package/lib/util/yaml-cfn.js +4 -2
- package/package.json +17 -16
- package/lib/util/error.js +0 -22
- package/lib/util/validate-notification-arn.js +0 -10
- package/lib/util/work-graph-builder.js +0 -167
- package/lib/util/work-graph-types.js +0 -14
- package/lib/util/work-graph.js +0 -344
- /package/lib/api/{util → stack-events}/display.d.ts +0 -0
- /package/lib/api/{util/cloudformation → stack-events}/stack-status.d.ts +0 -0
- /package/lib/{util → api/work-graph}/work-graph-types.d.ts +0 -0
- /package/lib/{util → cli}/tables.d.ts +0 -0
- /package/lib/{util → cli}/tables.js +0 -0
- /package/lib/util/{validate-notification-arn.d.ts → cloudformation.d.ts} +0 -0
- /package/lib/util/{error.d.ts → format-error.d.ts} +0 -0
- /package/lib/{serialize.d.ts → util/serialize.d.ts} +0 -0
- /package/lib/{api/util → util}/string-manipulation.d.ts +0 -0
- /package/lib/{api/util → util}/string-manipulation.js +0 -0
package/lib/api/util/rwlock.js
CHANGED
|
@@ -176,4 +176,4 @@ function processExists(pid) {
|
|
|
176
176
|
return false;
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicndsb2NrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicndsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJCQUFvQztBQUNwQyw2QkFBNkI7QUFDN0IsK0NBQW1EO0FBRW5EOzs7Ozs7Ozs7R0FTRztBQUNILHdEQUF3RDtBQUN4RCxNQUFhLE1BQU07SUFLakIsWUFBNEIsU0FBaUI7UUFBakIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUZyQyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUd0QixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRWxDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFlBQVk7UUFDdkIsTUFBTSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUVsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1QyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLG9CQUFZLENBQUMsbUJBQW1CLE9BQU8sZ0NBQWdDLElBQUksQ0FBQyxTQUFTLHNGQUFzRixDQUFDLENBQUM7UUFDekwsQ0FBQztRQUVELE1BQU0sZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXZELE9BQU87WUFDTCxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2xCLE1BQU0sVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQ0QsbUJBQW1CLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQzlCLHVFQUF1RTtnQkFDdkUsb0JBQW9CO2dCQUNwQixNQUFNLEdBQUcs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QUFRLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxNQUFNLGFBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ3JDLENBQUM7QUFFRCx3REFBd0Q7QUFDeEQsS0FBSyxVQUFVLFVBQVUsQ0FBQyxRQUFnQjtJQUN4QyxJQUFJLENBQUM7UUFDSCxNQUFNLGFBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3hCLE9BQU87UUFDVCxDQUFDO1FBQ0QsTUFBTSxDQUFDLENBQUM7SUFDVixDQUFDO0FBQ0gsQ0FBQztBQUVELHdEQUF3RDtBQUN4RCxTQUFTLGFBQWEsQ0FBQyxHQUFXO0lBQ2hDLElBQUksQ0FBQztRQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDWCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHJvbWlzZXMgYXMgZnMgfSBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgVG9vbGtpdEVycm9yIH0gZnJvbSAnLi4vLi4vdG9vbGtpdC9lcnJvcic7XG5cbi8qKlxuICogQSBzaW5nbGUtd3JpdGVyL211bHRpLXJlYWRlciBsb2NrIG9uIGEgZGlyZWN0b3J5XG4gKlxuICogSXQgdXNlcyBtYXJrZXIgZmlsZXMgd2l0aCBQSURzIGluIHRoZW0gYXMgYSBsb2NraW5nIG1hcmtlcjsgdGhlIFBJRHMgd2lsbCBiZVxuICogY2hlY2tlZCBmb3IgbGl2ZW5lc3MsIHNvIHRoYXQgaWYgdGhlIHByb2Nlc3MgZXhpdHMgd2l0aG91dCBjbGVhbmluZyB1cCB0aGVcbiAqIGZpbGVzIHRoZSBsb2NrIGlzIGltcGxpY2l0bHkgcmVsZWFzZWQuXG4gKlxuICogVGhpcyBjbGFzcyBpcyBub3QgMTAwJSByYWNlIHNhZmUsIGJ1dCBpbiBwcmFjdGljZSBpdCBzaG91bGQgYmUgYSBsb3RcbiAqIGJldHRlciB0aGFuIHRoZSAwIHByb3RlY3Rpb24gd2UgaGF2ZSB0b2RheS5cbiAqL1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGNvZGUgcGF0aHMgYXJlIHVucHJlZGljdGFibGUgKi9cbmV4cG9ydCBjbGFzcyBSV0xvY2sge1xuICBwcml2YXRlIHJlYWRvbmx5IHBpZFN0cmluZzogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHdyaXRlckZpbGU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkQ291bnRlciA9IDA7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGRpcmVjdG9yeTogc3RyaW5nKSB7XG4gICAgdGhpcy5waWRTdHJpbmcgPSBgJHtwcm9jZXNzLnBpZH1gO1xuXG4gICAgdGhpcy53cml0ZXJGaWxlID0gcGF0aC5qb2luKHRoaXMuZGlyZWN0b3J5LCAnc3ludGgubG9jaycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjcXVpcmUgYSB3cml0ZXIgbG9jay5cbiAgICpcbiAgICogTm8gb3RoZXIgcmVhZGVycyBvciB3cml0ZXJzIG11c3QgZXhpc3QgZm9yIHRoZSBnaXZlbiBkaXJlY3RvcnkuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgYWNxdWlyZVdyaXRlKCk6IFByb21pc2U8SVdyaXRlckxvY2s+IHtcbiAgICBhd2FpdCB0aGlzLmFzc2VydE5vT3RoZXJXcml0ZXJzKCk7XG5cbiAgICBjb25zdCByZWFkZXJzID0gYXdhaXQgdGhpcy5jdXJyZW50UmVhZGVycygpO1xuICAgIGlmIChyZWFkZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoYE90aGVyIENMSXMgKFBJRD0ke3JlYWRlcnN9KSBhcmUgY3VycmVudGx5IHJlYWRpbmcgZnJvbSAke3RoaXMuZGlyZWN0b3J5fS4gSW52b2tlIHRoZSBDTEkgaW4gc2VxdWVuY2UsIG9yIHVzZSAnLS1vdXRwdXQnIHRvIHN5bnRoIGludG8gZGlmZmVyZW50IGRpcmVjdG9yaWVzLmApO1xuICAgIH1cblxuICAgIGF3YWl0IHdyaXRlRmlsZUF0b21pYyh0aGlzLndyaXRlckZpbGUsIHRoaXMucGlkU3RyaW5nKTtcblxuICAgIHJldHVybiB7XG4gICAgICByZWxlYXNlOiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IGRlbGV0ZUZpbGUodGhpcy53cml0ZXJGaWxlKTtcbiAgICAgIH0sXG4gICAgICBjb252ZXJ0VG9SZWFkZXJMb2NrOiBhc3luYyAoKSA9PiB7XG4gICAgICAgIC8vIEFjcXVpcmUgdGhlIHJlYWQgbG9jayBiZWZvcmUgcmVsZWFzaW5nIHRoZSB3cml0ZSBsb2NrLiBTbGlnaHRseSBsZXNzXG4gICAgICAgIC8vIGNoYW5jZSBvZiByYWNpbmchXG4gICAgICAgIGNvbnN0IHJldCA9IGF3YWl0IHRoaXMuZG9BY3F1aXJlUmVhZCgpO1xuICAgICAgICBhd2FpdCBkZWxldGVGaWxlKHRoaXMud3JpdGVyRmlsZSk7XG4gICAgICAgIHJldHVybiByZXQ7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQWNxdWlyZSBhIHJlYWQgbG9ja1xuICAgKlxuICAgKiBXaWxsIGZhaWwgaWYgdGhlcmUgYXJlIGFueSB3cml0ZXJzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGFjcXVpcmVSZWFkKCk6IFByb21pc2U8SUxvY2s+IHtcbiAgICBhd2FpdCB0aGlzLmFzc2VydE5vT3RoZXJXcml0ZXJzKCk7XG4gICAgcmV0dXJuIHRoaXMuZG9BY3F1aXJlUmVhZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idGFpbnMgdGhlIG5hbWUgZm8gYSAobmV3KSBgcmVhZGVyRmlsZWAgdG8gdXNlLiBUaGlzIGluY2x1ZGVzIGEgY291bnRlciBzb1xuICAgKiB0aGF0IGlmIG11bHRpcGxlIHRocmVhZHMgb2YgdGhlIHNhbWUgUElEIGF0dGVtcHQgdG8gY29uY3VycmVudGx5IGFjcXVpcmVcbiAgICogdGhlIHNhbWUgbG9jaywgdGhleSdyZSBndWFyYW50ZWVkIHRvIHVzZSBhIGRpZmZlcmVudCByZWFkZXIgZmlsZSBuYW1lIChvbmx5XG4gICAqIG9uZSB0aHJlYWQgd2lsbCBldmVyIGV4ZWN1dGUgSlMgY29kZSBhdCBvbmNlLCBndWFyYW50ZWVpbmcgdGhlIHJlYWRDb3VudGVyXG4gICAqIGlzIGluY3JlbWVudGVkIFwiYXRvbWljYWxseVwiIGZyb20gdGhlIHBvaW50IG9mIHZpZXcgb2YgdGhpcyBQSUQuKS5cbiAgICovXG4gIHByaXZhdGUgcmVhZGVyRmlsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBwYXRoLmpvaW4odGhpcy5kaXJlY3RvcnksIGByZWFkLiR7dGhpcy5waWRTdHJpbmd9LiR7Kyt0aGlzLnJlYWRDb3VudGVyfS5sb2NrYCk7XG4gIH1cblxuICAvKipcbiAgICogRG8gdGhlIGFjdHVhbCBhY3F1aXJpbmcgb2YgYSByZWFkIGxvY2suXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGRvQWNxdWlyZVJlYWQoKTogUHJvbWlzZTxJTG9jaz4ge1xuICAgIGNvbnN0IHJlYWRlckZpbGUgPSB0aGlzLnJlYWRlckZpbGUoKTtcbiAgICBhd2FpdCB3cml0ZUZpbGVBdG9taWMocmVhZGVyRmlsZSwgdGhpcy5waWRTdHJpbmcpO1xuICAgIHJldHVybiB7XG4gICAgICByZWxlYXNlOiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IGRlbGV0ZUZpbGUocmVhZGVyRmlsZSk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGFzc2VydE5vT3RoZXJXcml0ZXJzKCkge1xuICAgIGNvbnN0IHdyaXRlciA9IGF3YWl0IHRoaXMuY3VycmVudFdyaXRlcigpO1xuICAgIGlmICh3cml0ZXIpIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoYEFub3RoZXIgQ0xJIChQSUQ9JHt3cml0ZXJ9KSBpcyBjdXJyZW50bHkgc3ludGhpbmcgdG8gJHt0aGlzLmRpcmVjdG9yeX0uIEludm9rZSB0aGUgQ0xJIGluIHNlcXVlbmNlLCBvciB1c2UgJy0tb3V0cHV0JyB0byBzeW50aCBpbnRvIGRpZmZlcmVudCBkaXJlY3Rvcmllcy5gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGN1cnJlbnQgd3JpdGVyIChpZiBhbnkpXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGN1cnJlbnRXcml0ZXIoKTogUHJvbWlzZTxudW1iZXIgfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBjb250ZW50cyA9IGF3YWl0IHJlYWRGaWxlSWZFeGlzdHModGhpcy53cml0ZXJGaWxlKTtcbiAgICBpZiAoIWNvbnRlbnRzKSB7IHJldHVybiB1bmRlZmluZWQ7IH1cblxuICAgIGNvbnN0IHBpZCA9IHBhcnNlSW50KGNvbnRlbnRzLCAxMCk7XG4gICAgaWYgKCFwcm9jZXNzRXhpc3RzKHBpZCkpIHtcbiAgICAgIC8vIERvIGNsZWFudXAgb2YgYSBzdHJheSBmaWxlIG5vd1xuICAgICAgYXdhaXQgZGVsZXRlRmlsZSh0aGlzLndyaXRlckZpbGUpO1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gcGlkO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBjdXJyZW50IHJlYWRlcnMgKGlmIGFueSlcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgY3VycmVudFJlYWRlcnMoKTogUHJvbWlzZTxudW1iZXJbXT4ge1xuICAgIGNvbnN0IHJlID0gL15yZWFkXFwuKFteLl0rKVxcLlteLl0rXFwubG9jayQvO1xuICAgIGNvbnN0IHJldCA9IG5ldyBBcnJheTxudW1iZXI+KCk7XG5cbiAgICBsZXQgY2hpbGRyZW47XG4gICAgdHJ5IHtcbiAgICAgIGNoaWxkcmVuID0gYXdhaXQgZnMucmVhZGRpcih0aGlzLmRpcmVjdG9yeSwgeyBlbmNvZGluZzogJ3V0Zi04JyB9KTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIC8vIENhbid0IGJlIGxvY2tlZCBpZiB0aGUgZGlyZWN0b3J5IGRvZXNuJ3QgZXhpc3RcbiAgICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSB7IHJldHVybiBbXTsgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGZuYW1lIG9mIGNoaWxkcmVuKSB7XG4gICAgICBjb25zdCBtID0gZm5hbWUubWF0Y2gocmUpO1xuICAgICAgaWYgKG0pIHtcbiAgICAgICAgY29uc3QgcGlkID0gcGFyc2VJbnQobVsxXSwgMTApO1xuICAgICAgICBpZiAocHJvY2Vzc0V4aXN0cyhwaWQpKSB7XG4gICAgICAgICAgcmV0LnB1c2gocGlkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBEbyBjbGVhbnVwIG9mIGEgc3RyYXkgZmlsZSBub3dcbiAgICAgICAgICBhd2FpdCBkZWxldGVGaWxlKHBhdGguam9pbih0aGlzLmRpcmVjdG9yeSwgZm5hbWUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmV0O1xuICB9XG59XG5cbi8qKlxuICogQW4gYWNxdWlyZWQgbG9ja1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElMb2NrIHtcbiAgcmVsZWFzZSgpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIEFuIGFjcXVpcmVkIHdyaXRlciBsb2NrXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVdyaXRlckxvY2sgZXh0ZW5kcyBJTG9jayB7XG4gIC8qKlxuICAgKiBDb252ZXJ0IHRoZSB3cml0ZXIgbG9jayB0byBhIHJlYWRlciBsb2NrXG4gICAqL1xuICBjb252ZXJ0VG9SZWFkZXJMb2NrKCk6IFByb21pc2U8SUxvY2s+O1xufVxuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dDogY29kZSBwYXRocyBhcmUgdW5wcmVkaWN0YWJsZSAqL1xuYXN5bmMgZnVuY3Rpb24gcmVhZEZpbGVJZkV4aXN0cyhmaWxlbmFtZTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgZnMucmVhZEZpbGUoZmlsZW5hbWUsIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG4gIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSB7IHJldHVybiB1bmRlZmluZWQ7IH1cbiAgICB0aHJvdyBlO1xuICB9XG59XG5cbmxldCB0bXBDb3VudGVyID0gMDtcbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBjb2RlIHBhdGhzIGFyZSB1bnByZWRpY3RhYmxlICovXG5hc3luYyBmdW5jdGlvbiB3cml0ZUZpbGVBdG9taWMoZmlsZW5hbWU6IHN0cmluZywgY29udGVudHM6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBmcy5ta2RpcihwYXRoLmRpcm5hbWUoZmlsZW5hbWUpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgY29uc3QgdG1wRmlsZSA9IGAke2ZpbGVuYW1lfS4ke3Byb2Nlc3MucGlkfV8keysrdG1wQ291bnRlcn1gO1xuICBhd2FpdCBmcy53cml0ZUZpbGUodG1wRmlsZSwgY29udGVudHMsIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG4gIGF3YWl0IGZzLnJlbmFtZSh0bXBGaWxlLCBmaWxlbmFtZSk7XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBjb2RlIHBhdGhzIGFyZSB1bnByZWRpY3RhYmxlICovXG5hc3luYyBmdW5jdGlvbiBkZWxldGVGaWxlKGZpbGVuYW1lOiBzdHJpbmcpIHtcbiAgdHJ5IHtcbiAgICBhd2FpdCBmcy51bmxpbmsoZmlsZW5hbWUpO1xuICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aHJvdyBlO1xuICB9XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBjb2RlIHBhdGhzIGFyZSB1bnByZWRpY3RhYmxlICovXG5mdW5jdGlvbiBwcm9jZXNzRXhpc3RzKHBpZDogbnVtYmVyKSB7XG4gIHRyeSB7XG4gICAgcHJvY2Vzcy5raWxsKHBpZCwgMCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicndsb2NrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicndsb2NrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJCQUFvQztBQUNwQyw2QkFBNkI7QUFDN0IsK0NBQW1EO0FBRW5EOzs7Ozs7Ozs7R0FTRztBQUNILHdEQUF3RDtBQUN4RCxNQUFhLE1BQU07SUFLakIsWUFBNEIsU0FBaUI7UUFBakIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUZyQyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUd0QixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRWxDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFlBQVk7UUFDdkIsTUFBTSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUVsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1QyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLG9CQUFZLENBQUMsbUJBQW1CLE9BQU8sZ0NBQWdDLElBQUksQ0FBQyxTQUFTLHNGQUFzRixDQUFDLENBQUM7UUFDekwsQ0FBQztRQUVELE1BQU0sZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXZELE9BQU87WUFDTCxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2xCLE1BQU0sVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBQ0QsbUJBQW1CLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQzlCLHVFQUF1RTtnQkFDdkUsb0JBQW9CO2dCQUNwQixNQUFNLEdBQUcs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UUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDN0QsTUFBTSxhQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBRUQsd0RBQXdEO0FBQ3hELEtBQUssVUFBVSxVQUFVLENBQUMsUUFBZ0I7SUFDeEMsSUFBSSxDQUFDO1FBQ0gsTUFBTSxhQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN4QixPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sQ0FBQyxDQUFDO0lBQ1YsQ0FBQztBQUNILENBQUM7QUFFRCx3REFBd0Q7QUFDeEQsU0FBUyxhQUFhLENBQUMsR0FBVztJQUNoQyxJQUFJLENBQUM7UUFDSCxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByb21pc2VzIGFzIGZzIH0gZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IFRvb2xraXRFcnJvciB9IGZyb20gJy4uLy4uL3Rvb2xraXQvZXJyb3InO1xuXG4vKipcbiAqIEEgc2luZ2xlLXdyaXRlci9tdWx0aS1yZWFkZXIgbG9jayBvbiBhIGRpcmVjdG9yeVxuICpcbiAqIEl0IHVzZXMgbWFya2VyIGZpbGVzIHdpdGggUElEcyBpbiB0aGVtIGFzIGEgbG9ja2luZyBtYXJrZXI7IHRoZSBQSURzIHdpbGwgYmVcbiAqIGNoZWNrZWQgZm9yIGxpdmVuZXNzLCBzbyB0aGF0IGlmIHRoZSBwcm9jZXNzIGV4aXRzIHdpdGhvdXQgY2xlYW5pbmcgdXAgdGhlXG4gKiBmaWxlcyB0aGUgbG9jayBpcyBpbXBsaWNpdGx5IHJlbGVhc2VkLlxuICpcbiAqIFRoaXMgY2xhc3MgaXMgbm90IDEwMCUgcmFjZSBzYWZlLCBidXQgaW4gcHJhY3RpY2UgaXQgc2hvdWxkIGJlIGEgbG90XG4gKiBiZXR0ZXIgdGhhbiB0aGUgMCBwcm90ZWN0aW9uIHdlIGhhdmUgdG9kYXkuXG4gKi9cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBjb2RlIHBhdGhzIGFyZSB1bnByZWRpY3RhYmxlICovXG5leHBvcnQgY2xhc3MgUldMb2NrIHtcbiAgcHJpdmF0ZSByZWFkb25seSBwaWRTdHJpbmc6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSB3cml0ZXJGaWxlOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZENvdW50ZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBkaXJlY3Rvcnk6IHN0cmluZykge1xuICAgIHRoaXMucGlkU3RyaW5nID0gYCR7cHJvY2Vzcy5waWR9YDtcblxuICAgIHRoaXMud3JpdGVyRmlsZSA9IHBhdGguam9pbih0aGlzLmRpcmVjdG9yeSwgJ3N5bnRoLmxvY2snKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY3F1aXJlIGEgd3JpdGVyIGxvY2suXG4gICAqXG4gICAqIE5vIG90aGVyIHJlYWRlcnMgb3Igd3JpdGVycyBtdXN0IGV4aXN0IGZvciB0aGUgZ2l2ZW4gZGlyZWN0b3J5LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGFjcXVpcmVXcml0ZSgpOiBQcm9taXNlPElXcml0ZXJMb2NrPiB7XG4gICAgYXdhaXQgdGhpcy5hc3NlcnROb090aGVyV3JpdGVycygpO1xuXG4gICAgY29uc3QgcmVhZGVycyA9IGF3YWl0IHRoaXMuY3VycmVudFJlYWRlcnMoKTtcbiAgICBpZiAocmVhZGVycy5sZW5ndGggPiAwKSB7XG4gICAgICB0aHJvdyBuZXcgVG9vbGtpdEVycm9yKGBPdGhlciBDTElzIChQSUQ9JHtyZWFkZXJzfSkgYXJlIGN1cnJlbnRseSByZWFkaW5nIGZyb20gJHt0aGlzLmRpcmVjdG9yeX0uIEludm9rZSB0aGUgQ0xJIGluIHNlcXVlbmNlLCBvciB1c2UgJy0tb3V0cHV0JyB0byBzeW50aCBpbnRvIGRpZmZlcmVudCBkaXJlY3Rvcmllcy5gKTtcbiAgICB9XG5cbiAgICBhd2FpdCB3cml0ZUZpbGVBdG9taWModGhpcy53cml0ZXJGaWxlLCB0aGlzLnBpZFN0cmluZyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcmVsZWFzZTogYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCBkZWxldGVGaWxlKHRoaXMud3JpdGVyRmlsZSk7XG4gICAgICB9LFxuICAgICAgY29udmVydFRvUmVhZGVyTG9jazogYXN5bmMgKCkgPT4ge1xuICAgICAgICAvLyBBY3F1aXJlIHRoZSByZWFkIGxvY2sgYmVmb3JlIHJlbGVhc2luZyB0aGUgd3JpdGUgbG9jay4gU2xpZ2h0bHkgbGVzc1xuICAgICAgICAvLyBjaGFuY2Ugb2YgcmFjaW5nIVxuICAgICAgICBjb25zdCByZXQgPSBhd2FpdCB0aGlzLmRvQWNxdWlyZVJlYWQoKTtcbiAgICAgICAgYXdhaXQgZGVsZXRlRmlsZSh0aGlzLndyaXRlckZpbGUpO1xuICAgICAgICByZXR1cm4gcmV0O1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEFjcXVpcmUgYSByZWFkIGxvY2tcbiAgICpcbiAgICogV2lsbCBmYWlsIGlmIHRoZXJlIGFyZSBhbnkgd3JpdGVycy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBhY3F1aXJlUmVhZCgpOiBQcm9taXNlPElMb2NrPiB7XG4gICAgYXdhaXQgdGhpcy5hc3NlcnROb090aGVyV3JpdGVycygpO1xuICAgIHJldHVybiB0aGlzLmRvQWNxdWlyZVJlYWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRhaW5zIHRoZSBuYW1lIGZvIGEgKG5ldykgYHJlYWRlckZpbGVgIHRvIHVzZS4gVGhpcyBpbmNsdWRlcyBhIGNvdW50ZXIgc29cbiAgICogdGhhdCBpZiBtdWx0aXBsZSB0aHJlYWRzIG9mIHRoZSBzYW1lIFBJRCBhdHRlbXB0IHRvIGNvbmN1cnJlbnRseSBhY3F1aXJlXG4gICAqIHRoZSBzYW1lIGxvY2ssIHRoZXkncmUgZ3VhcmFudGVlZCB0byB1c2UgYSBkaWZmZXJlbnQgcmVhZGVyIGZpbGUgbmFtZSAob25seVxuICAgKiBvbmUgdGhyZWFkIHdpbGwgZXZlciBleGVjdXRlIEpTIGNvZGUgYXQgb25jZSwgZ3VhcmFudGVlaW5nIHRoZSByZWFkQ291bnRlclxuICAgKiBpcyBpbmNyZW1lbnRlZCBcImF0b21pY2FsbHlcIiBmcm9tIHRoZSBwb2ludCBvZiB2aWV3IG9mIHRoaXMgUElELikuXG4gICAqL1xuICBwcml2YXRlIHJlYWRlckZpbGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gcGF0aC5qb2luKHRoaXMuZGlyZWN0b3J5LCBgcmVhZC4ke3RoaXMucGlkU3RyaW5nfS4keysrdGhpcy5yZWFkQ291bnRlcn0ubG9ja2ApO1xuICB9XG5cbiAgLyoqXG4gICAqIERvIHRoZSBhY3R1YWwgYWNxdWlyaW5nIG9mIGEgcmVhZCBsb2NrLlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBkb0FjcXVpcmVSZWFkKCk6IFByb21pc2U8SUxvY2s+IHtcbiAgICBjb25zdCByZWFkZXJGaWxlID0gdGhpcy5yZWFkZXJGaWxlKCk7XG4gICAgYXdhaXQgd3JpdGVGaWxlQXRvbWljKHJlYWRlckZpbGUsIHRoaXMucGlkU3RyaW5nKTtcbiAgICByZXR1cm4ge1xuICAgICAgcmVsZWFzZTogYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCBkZWxldGVGaWxlKHJlYWRlckZpbGUpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBhc3NlcnROb090aGVyV3JpdGVycygpIHtcbiAgICBjb25zdCB3cml0ZXIgPSBhd2FpdCB0aGlzLmN1cnJlbnRXcml0ZXIoKTtcbiAgICBpZiAod3JpdGVyKSB7XG4gICAgICB0aHJvdyBuZXcgVG9vbGtpdEVycm9yKGBBbm90aGVyIENMSSAoUElEPSR7d3JpdGVyfSkgaXMgY3VycmVudGx5IHN5bnRoaW5nIHRvICR7dGhpcy5kaXJlY3Rvcnl9LiBJbnZva2UgdGhlIENMSSBpbiBzZXF1ZW5jZSwgb3IgdXNlICctLW91dHB1dCcgdG8gc3ludGggaW50byBkaWZmZXJlbnQgZGlyZWN0b3JpZXMuYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBjdXJyZW50IHdyaXRlciAoaWYgYW55KVxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBjdXJyZW50V3JpdGVyKCk6IFByb21pc2U8bnVtYmVyIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgY29udGVudHMgPSBhd2FpdCByZWFkRmlsZUlmRXhpc3RzKHRoaXMud3JpdGVyRmlsZSk7XG4gICAgaWYgKCFjb250ZW50cykge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBjb25zdCBwaWQgPSBwYXJzZUludChjb250ZW50cywgMTApO1xuICAgIGlmICghcHJvY2Vzc0V4aXN0cyhwaWQpKSB7XG4gICAgICAvLyBEbyBjbGVhbnVwIG9mIGEgc3RyYXkgZmlsZSBub3dcbiAgICAgIGF3YWl0IGRlbGV0ZUZpbGUodGhpcy53cml0ZXJGaWxlKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBpZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGUgY3VycmVudCByZWFkZXJzIChpZiBhbnkpXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGN1cnJlbnRSZWFkZXJzKCk6IFByb21pc2U8bnVtYmVyW10+IHtcbiAgICBjb25zdCByZSA9IC9ecmVhZFxcLihbXi5dKylcXC5bXi5dK1xcLmxvY2skLztcbiAgICBjb25zdCByZXQgPSBuZXcgQXJyYXk8bnVtYmVyPigpO1xuXG4gICAgbGV0IGNoaWxkcmVuO1xuICAgIHRyeSB7XG4gICAgICBjaGlsZHJlbiA9IGF3YWl0IGZzLnJlYWRkaXIodGhpcy5kaXJlY3RvcnksIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAvLyBDYW4ndCBiZSBsb2NrZWQgaWYgdGhlIGRpcmVjdG9yeSBkb2Vzbid0IGV4aXN0XG4gICAgICBpZiAoZS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZm5hbWUgb2YgY2hpbGRyZW4pIHtcbiAgICAgIGNvbnN0IG0gPSBmbmFtZS5tYXRjaChyZSk7XG4gICAgICBpZiAobSkge1xuICAgICAgICBjb25zdCBwaWQgPSBwYXJzZUludChtWzFdLCAxMCk7XG4gICAgICAgIGlmIChwcm9jZXNzRXhpc3RzKHBpZCkpIHtcbiAgICAgICAgICByZXQucHVzaChwaWQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIERvIGNsZWFudXAgb2YgYSBzdHJheSBmaWxlIG5vd1xuICAgICAgICAgIGF3YWl0IGRlbGV0ZUZpbGUocGF0aC5qb2luKHRoaXMuZGlyZWN0b3J5LCBmbmFtZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBhY3F1aXJlZCBsb2NrXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2sge1xuICByZWxlYXNlKCk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogQW4gYWNxdWlyZWQgd3JpdGVyIGxvY2tcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJV3JpdGVyTG9jayBleHRlbmRzIElMb2NrIHtcbiAgLyoqXG4gICAqIENvbnZlcnQgdGhlIHdyaXRlciBsb2NrIHRvIGEgcmVhZGVyIGxvY2tcbiAgICovXG4gIGNvbnZlcnRUb1JlYWRlckxvY2soKTogUHJvbWlzZTxJTG9jaz47XG59XG5cbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0OiBjb2RlIHBhdGhzIGFyZSB1bnByZWRpY3RhYmxlICovXG5hc3luYyBmdW5jdGlvbiByZWFkRmlsZUlmRXhpc3RzKGZpbGVuYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBmcy5yZWFkRmlsZShmaWxlbmFtZSwgeyBlbmNvZGluZzogJ3V0Zi04JyB9KTtcbiAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgaWYgKGUuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHRocm93IGU7XG4gIH1cbn1cblxubGV0IHRtcENvdW50ZXIgPSAwO1xuLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGNvZGUgcGF0aHMgYXJlIHVucHJlZGljdGFibGUgKi9cbmFzeW5jIGZ1bmN0aW9uIHdyaXRlRmlsZUF0b21pYyhmaWxlbmFtZTogc3RyaW5nLCBjb250ZW50czogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGZzLm1rZGlyKHBhdGguZGlybmFtZShmaWxlbmFtZSksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICBjb25zdCB0bXBGaWxlID0gYCR7ZmlsZW5hbWV9LiR7cHJvY2Vzcy5waWR9XyR7Kyt0bXBDb3VudGVyfWA7XG4gIGF3YWl0IGZzLndyaXRlRmlsZSh0bXBGaWxlLCBjb250ZW50cywgeyBlbmNvZGluZzogJ3V0Zi04JyB9KTtcbiAgYXdhaXQgZnMucmVuYW1lKHRtcEZpbGUsIGZpbGVuYW1lKTtcbn1cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGNvZGUgcGF0aHMgYXJlIHVucHJlZGljdGFibGUgKi9cbmFzeW5jIGZ1bmN0aW9uIGRlbGV0ZUZpbGUoZmlsZW5hbWU6IHN0cmluZykge1xuICB0cnkge1xuICAgIGF3YWl0IGZzLnVubGluayhmaWxlbmFtZSk7XG4gIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgIGlmIChlLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRocm93IGU7XG4gIH1cbn1cblxuLyogaXN0YW5idWwgaWdub3JlIG5leHQ6IGNvZGUgcGF0aHMgYXJlIHVucHJlZGljdGFibGUgKi9cbmZ1bmN0aW9uIHByb2Nlc3NFeGlzdHMocGlkOiBudW1iZXIpIHtcbiAgdHJ5IHtcbiAgICBwcm9jZXNzLmtpbGwocGlkLCAwKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
|
|
@@ -8,9 +8,9 @@ const middleware_endpoint_1 = require("@smithy/middleware-endpoint");
|
|
|
8
8
|
const chalk = require("chalk");
|
|
9
9
|
const fs = require("fs-extra");
|
|
10
10
|
const logging_1 = require("../../logging");
|
|
11
|
-
const serialize_1 = require("../../serialize");
|
|
12
11
|
const error_1 = require("../../toolkit/error");
|
|
13
12
|
const content_hash_1 = require("../../util/content-hash");
|
|
13
|
+
const serialize_1 = require("../../util/serialize");
|
|
14
14
|
const LARGE_TEMPLATE_SIZE_KB = 50;
|
|
15
15
|
/**
|
|
16
16
|
* Prepares the body parameter for +CreateChangeSet+.
|
|
@@ -101,4 +101,4 @@ async function restUrlFromManifest(url, environment) {
|
|
|
101
101
|
endpoint.url.hostname;
|
|
102
102
|
return `${endpoint.url.origin}/${bucketName}/${objectKey}`;
|
|
103
103
|
}
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtYm9keS1wYXJhbWV0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZW1wbGF0ZS1ib2R5LXBhcmFtZXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWlDQSw4Q0EwREM7QUEzRkQsNkJBQTZCO0FBQzdCLDRDQUE4RztBQUM5RyxrREFBaUU7QUFDakUscUVBQTBFO0FBQzFFLCtCQUErQjtBQUMvQiwrQkFBK0I7QUFDL0IsMkNBQTZDO0FBQzdDLCtDQUF5QztBQUN6QywrQ0FBbUQ7QUFDbkQsMERBQXNEO0FBU3RELE1BQU0sc0JBQXNCLEdBQUcsRUFBRSxDQUFDO0FBRWxDOzs7Ozs7Ozs7Ozs7R0FZRztBQUNJLEtBQUssVUFBVSxpQkFBaUIsQ0FDckMsS0FBa0MsRUFDbEMsbUJBQWdDLEVBQ2hDLGFBQW1DLEVBQ25DLFNBQStCLEVBQy9CLGdCQUFzQjtJQUV0QiwyRUFBMkU7SUFDM0UsSUFBSSxLQUFLLENBQUMsMkJBQTJCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNELE9BQU87WUFDTCxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsbUJBQW1CLENBQUM7U0FDL0YsQ0FBQztJQUNKLENBQUM7SUFFRCxvRUFBb0U7SUFDcEUsTUFBTSxZQUFZLEdBQUcsSUFBQSxrQkFBTSxFQUFDLGdCQUFnQixhQUFoQixnQkFBZ0IsY0FBaEIsZ0JBQWdCLEdBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWhFLElBQUksWUFBWSxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLElB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QUFHLEVBQUUsQ0FBQyxNQUFNO0tBQ2IsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFFdEIsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFJLFVBQVUsSUFBSSxTQUFTLEVBQUUsQ0FBQztBQUM3RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IHR5cGUgQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LCB0eXBlIEVudmlyb25tZW50LCBFbnZpcm9ubWVudFBsYWNlaG9sZGVycyB9IGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBIZWFkT2JqZWN0Q29tbWFuZCwgUzNDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtczMnO1xuaW1wb3J0IHsgZ2V0RW5kcG9pbnRGcm9tSW5zdHJ1Y3Rpb25zIH0gZnJvbSAnQHNtaXRoeS9taWRkbGV3YXJlLWVuZHBvaW50JztcbmltcG9ydCAqIGFzIGNoYWxrIGZyb20gJ2NoYWxrJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCB7IGRlYnVnLCBlcnJvciB9IGZyb20gJy4uLy4uL2xvZ2dpbmcnO1xuaW1wb3J0IHsgdG9ZQU1MIH0gZnJvbSAnLi4vLi4vc2VyaWFsaXplJztcbmltcG9ydCB7IFRvb2xraXRFcnJvciB9IGZyb20gJy4uLy4uL3Rvb2xraXQvZXJyb3InO1xuaW1wb3J0IHsgY29udGVudEhhc2ggfSBmcm9tICcuLi8uLi91dGlsL2NvbnRlbnQtaGFzaCc7XG5pbXBvcnQgeyB0eXBlIEFzc2V0TWFuaWZlc3RCdWlsZGVyIH0gZnJvbSAnLi4vZGVwbG95bWVudHMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRSZXNvdXJjZXMgfSBmcm9tICcuLi9lbnZpcm9ubWVudCc7XG5cbmV4cG9ydCB0eXBlIFRlbXBsYXRlQm9keVBhcmFtZXRlciA9IHtcbiAgVGVtcGxhdGVCb2R5Pzogc3RyaW5nO1xuICBUZW1wbGF0ZVVSTD86IHN0cmluZztcbn07XG5cbmNvbnN0IExBUkdFX1RFTVBMQVRFX1NJWkVfS0IgPSA1MDtcblxuLyoqXG4gKiBQcmVwYXJlcyB0aGUgYm9keSBwYXJhbWV0ZXIgZm9yICtDcmVhdGVDaGFuZ2VTZXQrLlxuICpcbiAqIElmIHRoZSB0ZW1wbGF0ZSBpcyBzbWFsbCBlbm91Z2ggdG8gYmUgaW5saW5lZCBpbnRvIHRoZSBBUEkgY2FsbCwganVzdCByZXR1cm5cbiAqIGl0IGltbWVkaWF0ZWx5LlxuICpcbiAqIE90aGVyd2lzZSwgYWRkIGl0IHRvIHRoZSBhc3NldCBtYW5pZmVzdCB0byBnZXQgdXBsb2FkZWQgdG8gdGhlIHN0YWdpbmdcbiAqIGJ1Y2tldCBhbmQgcmV0dXJuIGl0cyBjb29yZGluYXRlcy4gSWYgdGhlcmUgaXMgbm8gc3RhZ2luZyBidWNrZXQsIGFuIGVycm9yXG4gKiBpcyB0aHJvd24uXG4gKlxuICogQHBhcmFtIHN0YWNrICAgICB0aGUgc3ludGhlc2l6ZWQgc3RhY2sgdGhhdCBwcm92aWRlcyB0aGUgQ2xvdWRGb3JtYXRpb24gdGVtcGxhdGVcbiAqIEBwYXJhbSB0b29sa2l0SW5mbyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdG9vbGtpdCBzdGFja1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWFrZUJvZHlQYXJhbWV0ZXIoXG4gIHN0YWNrOiBDbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3QsXG4gIHJlc29sdmVkRW52aXJvbm1lbnQ6IEVudmlyb25tZW50LFxuICBhc3NldE1hbmlmZXN0OiBBc3NldE1hbmlmZXN0QnVpbGRlcixcbiAgcmVzb3VyY2VzOiBFbnZpcm9ubWVudFJlc291cmNlcyxcbiAgb3ZlcnJpZGVUZW1wbGF0ZT86IGFueSxcbik6IFByb21pc2U8VGVtcGxhdGVCb2R5UGFyYW1ldGVyPiB7XG4gIC8vIElmIHRoZSB0ZW1wbGF0ZSBoYXMgYWxyZWFkeSBiZWVuIHVwbG9hZGVkIHRvIFMzLCBqdXN0IHVzZSBpdCBmcm9tIHRoZXJlLlxuICBpZiAoc3RhY2suc3RhY2tUZW1wbGF0ZUFzc2V0T2JqZWN0VXJsICYmICFvdmVycmlkZVRlbXBsYXRlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFRlbXBsYXRlVVJMOiBhd2FpdCByZXN0VXJsRnJvbU1hbmlmZXN0KHN0YWNrLnN0YWNrVGVtcGxhdGVBc3NldE9iamVjdFVybCwgcmVzb2x2ZWRFbnZpcm9ubWVudCksXG4gICAgfTtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgcGFzcyB2aWEgQVBJIGNhbGwgKGlmIHNtYWxsKSBvciB1cGxvYWQgaGVyZSAoaWYgbGFyZ2UpXG4gIGNvbnN0IHRlbXBsYXRlSnNvbiA9IHRvWUFNTChvdmVycmlkZVRlbXBsYXRlID8/IHN0YWNrLnRlbXBsYXRlKTtcblxuICBpZiAodGVtcGxhdGVKc29uLmxlbmd0aCA8PSBMQVJHRV9URU1QTEFURV9TSVpFX0tCICogMTAyNCkge1xuICAgIHJldHVybiB7IFRlbXBsYXRlQm9keTogdGVtcGxhdGVKc29uIH07XG4gIH1cblxuICBjb25zdCB0b29sa2l0SW5mbyA9IGF3YWl0IHJlc291cmNlcy5sb29rdXBUb29sa2l0KCk7XG4gIGlmICghdG9vbGtpdEluZm8uZm91bmQpIHtcbiAgICBlcnJvcihcbiAgICAgIGBUaGUgdGVtcGxhdGUgZm9yIHN0YWNrIFwiJHtzdGFjay5kaXNwbGF5TmFtZX1cIiBpcyAke01hdGgucm91bmQodGVtcGxhdGVKc29uLmxlbmd0aCAvIDEwMjQpfUtpQi4gYCArXG4gICAgICAgIGBUZW1wbGF0ZXMgbGFyZ2VyIHRoYW4gJHtMQVJHRV9URU1QTEFURV9TSVpFX0tCfUtpQiBtdXN0IGJlIHVwbG9hZGVkIHRvIFMzLlxcbmAgK1xuICAgICAgICAnUnVuIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBpbiBvcmRlciB0byBzZXR1cCBhbiBTMyBidWNrZXQgaW4gdGhpcyBlbnZpcm9ubWVudCwgYW5kIHRoZW4gcmUtZGVwbG95OlxcblxcbicsXG4gICAgICBjaGFsay5ibHVlKGBcXHQkIGNkayBib290c3RyYXAgJHtyZXNvbHZlZEVudmlyb25tZW50Lm5hbWV9XFxuYCksXG4gICAgKTtcblxuICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoJ1RlbXBsYXRlIHRvbyBsYXJnZSB0byBkZXBsb3kgKFwiY2RrIGJvb3RzdHJhcFwiIGlzIHJlcXVpcmVkKScpO1xuICB9XG5cbiAgY29uc3QgdGVtcGxhdGVIYXNoID0gY29udGVudEhhc2godGVtcGxhdGVKc29uKTtcbiAgY29uc3Qga2V5ID0gYGNkay8ke3N0YWNrLmlkfS8ke3RlbXBsYXRlSGFzaH0ueW1sYDtcblxuICBsZXQgdGVtcGxhdGVGaWxlID0gc3RhY2sudGVtcGxhdGVGaWxlO1xuICBpZiAob3ZlcnJpZGVUZW1wbGF0ZSkge1xuICAgIC8vIEFkZCBhIHZhcmlhbnQgb2YgdGhpcyB0ZW1wbGF0ZVxuICAgIHRlbXBsYXRlRmlsZSA9IGAke3N0YWNrLnRlbXBsYXRlRmlsZX0tJHt0ZW1wbGF0ZUhhc2h9LnlhbWxgO1xuICAgIGNvbnN0IHRlbXBsYXRlRmlsZVBhdGggPSBwYXRoLmpvaW4oc3RhY2suYXNzZW1ibHkuZGlyZWN0b3J5LCB0ZW1wbGF0ZUZpbGUpO1xuICAgIGF3YWl0IGZzLndyaXRlRmlsZSh0ZW1wbGF0ZUZpbGVQYXRoLCB0ZW1wbGF0ZUpzb24sIHsgZW5jb2Rpbmc6ICd1dGYtOCcgfSk7XG4gIH1cblxuICBhc3NldE1hbmlmZXN0LmFkZEZpbGVBc3NldChcbiAgICB0ZW1wbGF0ZUhhc2gsXG4gICAge1xuICAgICAgcGF0aDogdGVtcGxhdGVGaWxlLFxuICAgIH0sXG4gICAge1xuICAgICAgYnVja2V0TmFtZTogdG9vbGtpdEluZm8uYnVja2V0TmFtZSxcbiAgICAgIG9iamVjdEtleToga2V5LFxuICAgIH0sXG4gICk7XG5cbiAgY29uc3QgdGVtcGxhdGVVUkwgPSBgJHt0b29sa2l0SW5mby5idWNrZXRVcmx9LyR7a2V5fWA7XG4gIGRlYnVnKCdTdG9yaW5nIHRlbXBsYXRlIGluIFMzIGF0OicsIHRlbXBsYXRlVVJMKTtcbiAgcmV0dXJuIHsgVGVtcGxhdGVVUkw6IHRlbXBsYXRlVVJMIH07XG59XG5cbi8qKlxuICogRm9ybWF0IGFuIFMzIFVSTCBpbiB0aGUgbWFuaWZlc3QgZm9yIHVzZSB3aXRoIENsb3VkRm9ybWF0aW9uXG4gKlxuICogUmVwbGFjZXMgZW52aXJvbm1lbnQgcGxhY2Vob2xkZXJzICh3aGljaCB0aGlzIGZpZWxkIG1heSBjb250YWluKSxcbiAqIGFuZCByZWZvcm1hdHMgczM6Ly8uLi4vLi4uIHVybHMgaW50byBTMyBSRVNUIFVSTHMgKHdoaWNoIENsb3VkRm9ybWF0aW9uXG4gKiBleHBlY3RzKVxuICovXG5hc3luYyBmdW5jdGlvbiByZXN0VXJsRnJvbU1hbmlmZXN0KHVybDogc3RyaW5nLCBlbnZpcm9ubWVudDogRW52aXJvbm1lbnQpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCBkb05vdFVzZU1hcmtlciA9ICcqKkRPTk9UVVNFKionO1xuICBjb25zdCByZWdpb24gPSBlbnZpcm9ubWVudC5yZWdpb247XG4gIC8vIFRoaXMgVVJMIG1heSBjb250YWluIHBsYWNlaG9sZGVycywgc28gc3RpbGwgc3Vic3RpdHV0ZSB0aG9zZS5cbiAgdXJsID0gRW52aXJvbm1lbnRQbGFjZWhvbGRlcnMucmVwbGFjZSh1cmwsIHtcbiAgICBhY2NvdW50SWQ6IGVudmlyb25tZW50LmFjY291bnQsXG4gICAgcmVnaW9uLFxuICAgIHBhcnRpdGlvbjogZG9Ob3RVc2VNYXJrZXIsXG4gIH0pO1xuXG4gIC8vIFllcywgdGhpcyBpcyBleHRyZW1lbHkgY3J1ZGUsIGJ1dCB3ZSBkb24ndCBhY3R1YWxseSBuZWVkIHRoaXMgc28gSSdtIG5vdCBpbmNsaW5lZCB0byBzcGVuZFxuICAvLyBhIGxvdCBvZiBlZmZvcnQgdHJ5aW5nIHRvIHRocmVhZCB0aGUgcmlnaHQgdmFsdWUgdG8gdGhpcyBsb2NhdGlvbi5cbiAgaWYgKHVybC5pbmRleE9mKGRvTm90VXNlTWFya2VyKSA+IC0xKSB7XG4gICAgdGhyb3cgbmV3IFRvb2xraXRFcnJvcihcIkNhbm5vdCB1c2UgJyR7QVdTOjpQYXJ0aXRpb259JyBpbiB0aGUgJ3N0YWNrVGVtcGxhdGVBc3NldE9iamVjdFVybCcgZmllbGRcIik7XG4gIH1cblxuICBjb25zdCBzM1VybCA9IHVybC5tYXRjaCgvczM6XFwvXFwvKFteL10rKVxcLyguKikkLyk7XG4gIGlmICghczNVcmwpIHtcbiAgICByZXR1cm4gdXJsO1xuICB9XG5cbiAgLy8gV2UgbmVlZCB0byBwYXNzIGFuICdodHRwczovL3MzLlJFR0lPTi5hbWF6b25hd3MuY29tWy5jbl0vYnVja2V0L29iamVjdCcgVVJMIHRvIENsb3VkRm9ybWF0aW9uLCBidXQgd2VcbiAgLy8gZ290IGFuICdzMzovL2J1Y2tldC9vYmplY3QnIFVSTCBpbnN0ZWFkLiBDb25zdHJ1Y3QgdGhlIHJlc3QgQVBJIFVSTCBoZXJlLlxuICBjb25zdCBidWNrZXROYW1lID0gczNVcmxbMV07XG4gIGNvbnN0IG9iamVjdEtleSA9IHMzVXJsWzJdO1xuXG4gIC8vIFNESyB2MyBubyBsb25nZXIgYWxsb3dzIGZvciBnZXR0aW5nIGVuZHBvaW50cyBmcm9tIG9ubHkgcmVnaW9uLlxuICAvLyBBIGNvbW1hbmQgYW5kIGNsaWVudCBjb25maWcgbXVzdCBub3cgYmUgcHJvdmlkZWQuXG4gIGNvbnN0IHMzID0gbmV3IFMzQ2xpZW50KHsgcmVnaW9uIH0pO1xuICBjb25zdCBlbmRwb2ludCA9IGF3YWl0IGdldEVuZHBvaW50RnJvbUluc3RydWN0aW9ucyh7fSwgSGVhZE9iamVjdENvbW1hbmQsIHtcbiAgICAuLi5zMy5jb25maWcsXG4gIH0pO1xuICBlbmRwb2ludC51cmwuaG9zdG5hbWU7XG5cbiAgcmV0dXJuIGAke2VuZHBvaW50LnVybC5vcmlnaW59LyR7YnVja2V0TmFtZX0vJHtvYmplY3RLZXl9YDtcbn1cbiJdfQ==
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtYm9keS1wYXJhbWV0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0ZW1wbGF0ZS1ib2R5LXBhcmFtZXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQWlDQSw4Q0EwREM7QUEzRkQsNkJBQTZCO0FBQzdCLDRDQUE4RztBQUM5RyxrREFBaUU7QUFDakUscUVBQTBFO0FBQzFFLCtCQUErQjtBQUMvQiwrQkFBK0I7QUFDL0IsMkNBQTZDO0FBQzdDLCtDQUFtRDtBQUNuRCwwREFBc0Q7QUFDdEQsb0RBQThDO0FBUzlDLE1BQU0sc0JBQXNCLEdBQUcsRUFBRSxDQUFDO0FBRWxDOzs7Ozs7Ozs7Ozs7R0FZRztBQUNJLEtBQUssVUFBVSxpQkFBaUIsQ0FDckMsS0FBa0MsRUFDbEMsbUJBQWdDLEVBQ2hDLGFBQW1DLEVBQ25DLFNBQStCLEVBQy9CLGdCQUFzQjtJQUV0QiwyRUFBMkU7SUFDM0UsSUFBSSxLQUFLLENBQUMsMkJBQTJCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNELE9BQU87WUFDTCxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsbUJBQW1CLENBQUM7U0FDL0YsQ0FBQztJQUNKLENBQUM7SUFFRCxvRUFBb0U7SUFDcEUsTUFBTSxZQUFZLEdBQUcsSUFBQSxrQkFBTSxFQUFDLGdCQUFnQixhQUFoQixnQkFBZ0IsY0FBaEIsZ0JBQWdCLEdBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWhFLElBQUksWUFBWSxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLFdBQVcsR0FBRyxNQUFNLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLElB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QUFHLEVBQUUsQ0FBQyxNQUFNO0tBQ2IsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFFdEIsT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFJLFVBQVUsSUFBSSxTQUFTLEVBQUUsQ0FBQztBQUM3RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IHR5cGUgQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LCB0eXBlIEVudmlyb25tZW50LCBFbnZpcm9ubWVudFBsYWNlaG9sZGVycyB9IGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBIZWFkT2JqZWN0Q29tbWFuZCwgUzNDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtczMnO1xuaW1wb3J0IHsgZ2V0RW5kcG9pbnRGcm9tSW5zdHJ1Y3Rpb25zIH0gZnJvbSAnQHNtaXRoeS9taWRkbGV3YXJlLWVuZHBvaW50JztcbmltcG9ydCAqIGFzIGNoYWxrIGZyb20gJ2NoYWxrJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCB7IGRlYnVnLCBlcnJvciB9IGZyb20gJy4uLy4uL2xvZ2dpbmcnO1xuaW1wb3J0IHsgVG9vbGtpdEVycm9yIH0gZnJvbSAnLi4vLi4vdG9vbGtpdC9lcnJvcic7XG5pbXBvcnQgeyBjb250ZW50SGFzaCB9IGZyb20gJy4uLy4uL3V0aWwvY29udGVudC1oYXNoJztcbmltcG9ydCB7IHRvWUFNTCB9IGZyb20gJy4uLy4uL3V0aWwvc2VyaWFsaXplJztcbmltcG9ydCB7IHR5cGUgQXNzZXRNYW5pZmVzdEJ1aWxkZXIgfSBmcm9tICcuLi9kZXBsb3ltZW50cyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudFJlc291cmNlcyB9IGZyb20gJy4uL2Vudmlyb25tZW50JztcblxuZXhwb3J0IHR5cGUgVGVtcGxhdGVCb2R5UGFyYW1ldGVyID0ge1xuICBUZW1wbGF0ZUJvZHk/OiBzdHJpbmc7XG4gIFRlbXBsYXRlVVJMPzogc3RyaW5nO1xufTtcblxuY29uc3QgTEFSR0VfVEVNUExBVEVfU0laRV9LQiA9IDUwO1xuXG4vKipcbiAqIFByZXBhcmVzIHRoZSBib2R5IHBhcmFtZXRlciBmb3IgK0NyZWF0ZUNoYW5nZVNldCsuXG4gKlxuICogSWYgdGhlIHRlbXBsYXRlIGlzIHNtYWxsIGVub3VnaCB0byBiZSBpbmxpbmVkIGludG8gdGhlIEFQSSBjYWxsLCBqdXN0IHJldHVyblxuICogaXQgaW1tZWRpYXRlbHkuXG4gKlxuICogT3RoZXJ3aXNlLCBhZGQgaXQgdG8gdGhlIGFzc2V0IG1hbmlmZXN0IHRvIGdldCB1cGxvYWRlZCB0byB0aGUgc3RhZ2luZ1xuICogYnVja2V0IGFuZCByZXR1cm4gaXRzIGNvb3JkaW5hdGVzLiBJZiB0aGVyZSBpcyBubyBzdGFnaW5nIGJ1Y2tldCwgYW4gZXJyb3JcbiAqIGlzIHRocm93bi5cbiAqXG4gKiBAcGFyYW0gc3RhY2sgICAgIHRoZSBzeW50aGVzaXplZCBzdGFjayB0aGF0IHByb3ZpZGVzIHRoZSBDbG91ZEZvcm1hdGlvbiB0ZW1wbGF0ZVxuICogQHBhcmFtIHRvb2xraXRJbmZvIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0b29sa2l0IHN0YWNrXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYWtlQm9keVBhcmFtZXRlcihcbiAgc3RhY2s6IENsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdCxcbiAgcmVzb2x2ZWRFbnZpcm9ubWVudDogRW52aXJvbm1lbnQsXG4gIGFzc2V0TWFuaWZlc3Q6IEFzc2V0TWFuaWZlc3RCdWlsZGVyLFxuICByZXNvdXJjZXM6IEVudmlyb25tZW50UmVzb3VyY2VzLFxuICBvdmVycmlkZVRlbXBsYXRlPzogYW55LFxuKTogUHJvbWlzZTxUZW1wbGF0ZUJvZHlQYXJhbWV0ZXI+IHtcbiAgLy8gSWYgdGhlIHRlbXBsYXRlIGhhcyBhbHJlYWR5IGJlZW4gdXBsb2FkZWQgdG8gUzMsIGp1c3QgdXNlIGl0IGZyb20gdGhlcmUuXG4gIGlmIChzdGFjay5zdGFja1RlbXBsYXRlQXNzZXRPYmplY3RVcmwgJiYgIW92ZXJyaWRlVGVtcGxhdGUpIHtcbiAgICByZXR1cm4ge1xuICAgICAgVGVtcGxhdGVVUkw6IGF3YWl0IHJlc3RVcmxGcm9tTWFuaWZlc3Qoc3RhY2suc3RhY2tUZW1wbGF0ZUFzc2V0T2JqZWN0VXJsLCByZXNvbHZlZEVudmlyb25tZW50KSxcbiAgICB9O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCBwYXNzIHZpYSBBUEkgY2FsbCAoaWYgc21hbGwpIG9yIHVwbG9hZCBoZXJlIChpZiBsYXJnZSlcbiAgY29uc3QgdGVtcGxhdGVKc29uID0gdG9ZQU1MKG92ZXJyaWRlVGVtcGxhdGUgPz8gc3RhY2sudGVtcGxhdGUpO1xuXG4gIGlmICh0ZW1wbGF0ZUpzb24ubGVuZ3RoIDw9IExBUkdFX1RFTVBMQVRFX1NJWkVfS0IgKiAxMDI0KSB7XG4gICAgcmV0dXJuIHsgVGVtcGxhdGVCb2R5OiB0ZW1wbGF0ZUpzb24gfTtcbiAgfVxuXG4gIGNvbnN0IHRvb2xraXRJbmZvID0gYXdhaXQgcmVzb3VyY2VzLmxvb2t1cFRvb2xraXQoKTtcbiAgaWYgKCF0b29sa2l0SW5mby5mb3VuZCkge1xuICAgIGVycm9yKFxuICAgICAgYFRoZSB0ZW1wbGF0ZSBmb3Igc3RhY2sgXCIke3N0YWNrLmRpc3BsYXlOYW1lfVwiIGlzICR7TWF0aC5yb3VuZCh0ZW1wbGF0ZUpzb24ubGVuZ3RoIC8gMTAyNCl9S2lCLiBgICtcbiAgICAgICAgYFRlbXBsYXRlcyBsYXJnZXIgdGhhbiAke0xBUkdFX1RFTVBMQVRFX1NJWkVfS0J9S2lCIG11c3QgYmUgdXBsb2FkZWQgdG8gUzMuXFxuYCArXG4gICAgICAgICdSdW4gdGhlIGZvbGxvd2luZyBjb21tYW5kIGluIG9yZGVyIHRvIHNldHVwIGFuIFMzIGJ1Y2tldCBpbiB0aGlzIGVudmlyb25tZW50LCBhbmQgdGhlbiByZS1kZXBsb3k6XFxuXFxuJyxcbiAgICAgIGNoYWxrLmJsdWUoYFxcdCQgY2RrIGJvb3RzdHJhcCAke3Jlc29sdmVkRW52aXJvbm1lbnQubmFtZX1cXG5gKSxcbiAgICApO1xuXG4gICAgdGhyb3cgbmV3IFRvb2xraXRFcnJvcignVGVtcGxhdGUgdG9vIGxhcmdlIHRvIGRlcGxveSAoXCJjZGsgYm9vdHN0cmFwXCIgaXMgcmVxdWlyZWQpJyk7XG4gIH1cblxuICBjb25zdCB0ZW1wbGF0ZUhhc2ggPSBjb250ZW50SGFzaCh0ZW1wbGF0ZUpzb24pO1xuICBjb25zdCBrZXkgPSBgY2RrLyR7c3RhY2suaWR9LyR7dGVtcGxhdGVIYXNofS55bWxgO1xuXG4gIGxldCB0ZW1wbGF0ZUZpbGUgPSBzdGFjay50ZW1wbGF0ZUZpbGU7XG4gIGlmIChvdmVycmlkZVRlbXBsYXRlKSB7XG4gICAgLy8gQWRkIGEgdmFyaWFudCBvZiB0aGlzIHRlbXBsYXRlXG4gICAgdGVtcGxhdGVGaWxlID0gYCR7c3RhY2sudGVtcGxhdGVGaWxlfS0ke3RlbXBsYXRlSGFzaH0ueWFtbGA7XG4gICAgY29uc3QgdGVtcGxhdGVGaWxlUGF0aCA9IHBhdGguam9pbihzdGFjay5hc3NlbWJseS5kaXJlY3RvcnksIHRlbXBsYXRlRmlsZSk7XG4gICAgYXdhaXQgZnMud3JpdGVGaWxlKHRlbXBsYXRlRmlsZVBhdGgsIHRlbXBsYXRlSnNvbiwgeyBlbmNvZGluZzogJ3V0Zi04JyB9KTtcbiAgfVxuXG4gIGFzc2V0TWFuaWZlc3QuYWRkRmlsZUFzc2V0KFxuICAgIHRlbXBsYXRlSGFzaCxcbiAgICB7XG4gICAgICBwYXRoOiB0ZW1wbGF0ZUZpbGUsXG4gICAgfSxcbiAgICB7XG4gICAgICBidWNrZXROYW1lOiB0b29sa2l0SW5mby5idWNrZXROYW1lLFxuICAgICAgb2JqZWN0S2V5OiBrZXksXG4gICAgfSxcbiAgKTtcblxuICBjb25zdCB0ZW1wbGF0ZVVSTCA9IGAke3Rvb2xraXRJbmZvLmJ1Y2tldFVybH0vJHtrZXl9YDtcbiAgZGVidWcoJ1N0b3JpbmcgdGVtcGxhdGUgaW4gUzMgYXQ6JywgdGVtcGxhdGVVUkwpO1xuICByZXR1cm4geyBUZW1wbGF0ZVVSTDogdGVtcGxhdGVVUkwgfTtcbn1cblxuLyoqXG4gKiBGb3JtYXQgYW4gUzMgVVJMIGluIHRoZSBtYW5pZmVzdCBmb3IgdXNlIHdpdGggQ2xvdWRGb3JtYXRpb25cbiAqXG4gKiBSZXBsYWNlcyBlbnZpcm9ubWVudCBwbGFjZWhvbGRlcnMgKHdoaWNoIHRoaXMgZmllbGQgbWF5IGNvbnRhaW4pLFxuICogYW5kIHJlZm9ybWF0cyBzMzovLy4uLi8uLi4gdXJscyBpbnRvIFMzIFJFU1QgVVJMcyAod2hpY2ggQ2xvdWRGb3JtYXRpb25cbiAqIGV4cGVjdHMpXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHJlc3RVcmxGcm9tTWFuaWZlc3QodXJsOiBzdHJpbmcsIGVudmlyb25tZW50OiBFbnZpcm9ubWVudCk6IFByb21pc2U8c3RyaW5nPiB7XG4gIGNvbnN0IGRvTm90VXNlTWFya2VyID0gJyoqRE9OT1RVU0UqKic7XG4gIGNvbnN0IHJlZ2lvbiA9IGVudmlyb25tZW50LnJlZ2lvbjtcbiAgLy8gVGhpcyBVUkwgbWF5IGNvbnRhaW4gcGxhY2Vob2xkZXJzLCBzbyBzdGlsbCBzdWJzdGl0dXRlIHRob3NlLlxuICB1cmwgPSBFbnZpcm9ubWVudFBsYWNlaG9sZGVycy5yZXBsYWNlKHVybCwge1xuICAgIGFjY291bnRJZDogZW52aXJvbm1lbnQuYWNjb3VudCxcbiAgICByZWdpb24sXG4gICAgcGFydGl0aW9uOiBkb05vdFVzZU1hcmtlcixcbiAgfSk7XG5cbiAgLy8gWWVzLCB0aGlzIGlzIGV4dHJlbWVseSBjcnVkZSwgYnV0IHdlIGRvbid0IGFjdHVhbGx5IG5lZWQgdGhpcyBzbyBJJ20gbm90IGluY2xpbmVkIHRvIHNwZW5kXG4gIC8vIGEgbG90IG9mIGVmZm9ydCB0cnlpbmcgdG8gdGhyZWFkIHRoZSByaWdodCB2YWx1ZSB0byB0aGlzIGxvY2F0aW9uLlxuICBpZiAodXJsLmluZGV4T2YoZG9Ob3RVc2VNYXJrZXIpID4gLTEpIHtcbiAgICB0aHJvdyBuZXcgVG9vbGtpdEVycm9yKFwiQ2Fubm90IHVzZSAnJHtBV1M6OlBhcnRpdGlvbn0nIGluIHRoZSAnc3RhY2tUZW1wbGF0ZUFzc2V0T2JqZWN0VXJsJyBmaWVsZFwiKTtcbiAgfVxuXG4gIGNvbnN0IHMzVXJsID0gdXJsLm1hdGNoKC9zMzpcXC9cXC8oW14vXSspXFwvKC4qKSQvKTtcbiAgaWYgKCFzM1VybCkge1xuICAgIHJldHVybiB1cmw7XG4gIH1cblxuICAvLyBXZSBuZWVkIHRvIHBhc3MgYW4gJ2h0dHBzOi8vczMuUkVHSU9OLmFtYXpvbmF3cy5jb21bLmNuXS9idWNrZXQvb2JqZWN0JyBVUkwgdG8gQ2xvdWRGb3JtYXRpb24sIGJ1dCB3ZVxuICAvLyBnb3QgYW4gJ3MzOi8vYnVja2V0L29iamVjdCcgVVJMIGluc3RlYWQuIENvbnN0cnVjdCB0aGUgcmVzdCBBUEkgVVJMIGhlcmUuXG4gIGNvbnN0IGJ1Y2tldE5hbWUgPSBzM1VybFsxXTtcbiAgY29uc3Qgb2JqZWN0S2V5ID0gczNVcmxbMl07XG5cbiAgLy8gU0RLIHYzIG5vIGxvbmdlciBhbGxvd3MgZm9yIGdldHRpbmcgZW5kcG9pbnRzIGZyb20gb25seSByZWdpb24uXG4gIC8vIEEgY29tbWFuZCBhbmQgY2xpZW50IGNvbmZpZyBtdXN0IG5vdyBiZSBwcm92aWRlZC5cbiAgY29uc3QgczMgPSBuZXcgUzNDbGllbnQoeyByZWdpb24gfSk7XG4gIGNvbnN0IGVuZHBvaW50ID0gYXdhaXQgZ2V0RW5kcG9pbnRGcm9tSW5zdHJ1Y3Rpb25zKHt9LCBIZWFkT2JqZWN0Q29tbWFuZCwge1xuICAgIC4uLnMzLmNvbmZpZyxcbiAgfSk7XG4gIGVuZHBvaW50LnVybC5ob3N0bmFtZTtcblxuICByZXR1cm4gYCR7ZW5kcG9pbnQudXJsLm9yaWdpbn0vJHtidWNrZXROYW1lfS8ke29iamVjdEtleX1gO1xufVxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./work-graph"), exports);
|
|
18
|
+
__exportStar(require("./work-graph-builder"), exports);
|
|
19
|
+
__exportStar(require("./work-graph-types"), exports);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQTZCO0FBQzdCLHVEQUFxQztBQUNyQyxxREFBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3dvcmstZ3JhcGgnO1xuZXhwb3J0ICogZnJvbSAnLi93b3JrLWdyYXBoLWJ1aWxkZXInO1xuZXhwb3J0ICogZnJvbSAnLi93b3JrLWdyYXBoLXR5cGVzJztcbiJdfQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as cxapi from '@aws-cdk/cx-api';
|
|
2
2
|
import { WorkGraph } from './work-graph';
|
|
3
3
|
import { WorkNode } from './work-graph-types';
|
|
4
|
+
import { IoMessaging } from '../../toolkit/cli-io-host';
|
|
4
5
|
export declare class WorkGraphBuilder {
|
|
5
6
|
private readonly prebuildAssets;
|
|
6
7
|
private readonly idPrefix;
|
|
@@ -15,7 +16,9 @@ export declare class WorkGraphBuilder {
|
|
|
15
16
|
*/
|
|
16
17
|
static PRIORITIES: Record<WorkNode['type'], number>;
|
|
17
18
|
private readonly graph;
|
|
18
|
-
|
|
19
|
+
private readonly ioHost;
|
|
20
|
+
private readonly action;
|
|
21
|
+
constructor({ ioHost, action }: IoMessaging, prebuildAssets: boolean, idPrefix?: string);
|
|
19
22
|
private addStack;
|
|
20
23
|
/**
|
|
21
24
|
* Oof, see this parameter list
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkGraphBuilder = void 0;
|
|
4
|
+
const cxapi = require("@aws-cdk/cx-api");
|
|
5
|
+
const cdk_assets_1 = require("cdk-assets");
|
|
6
|
+
const work_graph_1 = require("./work-graph");
|
|
7
|
+
const work_graph_types_1 = require("./work-graph-types");
|
|
8
|
+
const error_1 = require("../../toolkit/error");
|
|
9
|
+
const content_hash_1 = require("../../util/content-hash");
|
|
10
|
+
class WorkGraphBuilder {
|
|
11
|
+
constructor({ ioHost, action }, prebuildAssets, idPrefix = '') {
|
|
12
|
+
this.prebuildAssets = prebuildAssets;
|
|
13
|
+
this.idPrefix = idPrefix;
|
|
14
|
+
this.graph = new work_graph_1.WorkGraph({}, { ioHost, action });
|
|
15
|
+
this.ioHost = ioHost;
|
|
16
|
+
this.action = action;
|
|
17
|
+
}
|
|
18
|
+
addStack(artifact) {
|
|
19
|
+
this.graph.addNodes({
|
|
20
|
+
type: 'stack',
|
|
21
|
+
id: `${this.idPrefix}${artifact.id}`,
|
|
22
|
+
dependencies: new Set(this.stackArtifactIds(onlyStacks(artifact.dependencies))),
|
|
23
|
+
stack: artifact,
|
|
24
|
+
deploymentState: work_graph_types_1.DeploymentState.PENDING,
|
|
25
|
+
priority: WorkGraphBuilder.PRIORITIES.stack,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Oof, see this parameter list
|
|
30
|
+
*/
|
|
31
|
+
// eslint-disable-next-line max-len
|
|
32
|
+
addAsset(parentStack, assetManifestArtifact, assetManifest, asset) {
|
|
33
|
+
// Just the artifact identifier
|
|
34
|
+
const assetId = asset.id.assetId;
|
|
35
|
+
const buildId = `build-${assetId}-${(0, content_hash_1.contentHashAny)([assetId, asset.genericSource]).substring(0, 10)}`;
|
|
36
|
+
const publishId = `publish-${assetId}-${(0, content_hash_1.contentHashAny)([assetId, asset.genericDestination]).substring(0, 10)}`;
|
|
37
|
+
// Build node only gets added once because they are all the same
|
|
38
|
+
if (!this.graph.tryGetNode(buildId)) {
|
|
39
|
+
const node = {
|
|
40
|
+
type: 'asset-build',
|
|
41
|
+
id: buildId,
|
|
42
|
+
note: assetId,
|
|
43
|
+
dependencies: new Set([
|
|
44
|
+
...this.stackArtifactIds(assetManifestArtifact.dependencies),
|
|
45
|
+
// If we disable prebuild, then assets inherit (stack) dependencies from their parent stack
|
|
46
|
+
...!this.prebuildAssets ? this.stackArtifactIds(onlyStacks(parentStack.dependencies)) : [],
|
|
47
|
+
]),
|
|
48
|
+
parentStack: parentStack,
|
|
49
|
+
assetManifestArtifact,
|
|
50
|
+
assetManifest,
|
|
51
|
+
asset,
|
|
52
|
+
deploymentState: work_graph_types_1.DeploymentState.PENDING,
|
|
53
|
+
priority: WorkGraphBuilder.PRIORITIES['asset-build'],
|
|
54
|
+
};
|
|
55
|
+
this.graph.addNodes(node);
|
|
56
|
+
}
|
|
57
|
+
const publishNode = this.graph.tryGetNode(publishId);
|
|
58
|
+
if (!publishNode) {
|
|
59
|
+
this.graph.addNodes({
|
|
60
|
+
type: 'asset-publish',
|
|
61
|
+
id: publishId,
|
|
62
|
+
note: `${asset.id}`,
|
|
63
|
+
dependencies: new Set([
|
|
64
|
+
buildId,
|
|
65
|
+
]),
|
|
66
|
+
parentStack,
|
|
67
|
+
assetManifestArtifact,
|
|
68
|
+
assetManifest,
|
|
69
|
+
asset,
|
|
70
|
+
deploymentState: work_graph_types_1.DeploymentState.PENDING,
|
|
71
|
+
priority: WorkGraphBuilder.PRIORITIES['asset-publish'],
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
for (const inheritedDep of this.stackArtifactIds(onlyStacks(parentStack.dependencies))) {
|
|
75
|
+
// The asset publish step also depends on the stacks that the parent depends on.
|
|
76
|
+
// This is purely cosmetic: if we don't do this, the progress printing of asset publishing
|
|
77
|
+
// is going to interfere with the progress bar of the stack deployment. We could remove this
|
|
78
|
+
// for overall faster deployments if we ever have a better method of progress displaying.
|
|
79
|
+
// Note: this may introduce a cycle if one of the parent's dependencies is another stack that
|
|
80
|
+
// depends on this asset. To workaround this we remove these cycles once all nodes have
|
|
81
|
+
// been added to the graph.
|
|
82
|
+
this.graph.addDependency(publishId, inheritedDep);
|
|
83
|
+
}
|
|
84
|
+
// This will work whether the stack node has been added yet or not
|
|
85
|
+
this.graph.addDependency(`${this.idPrefix}${parentStack.id}`, publishId);
|
|
86
|
+
}
|
|
87
|
+
build(artifacts) {
|
|
88
|
+
const parentStacks = stacksFromAssets(artifacts);
|
|
89
|
+
for (const artifact of artifacts) {
|
|
90
|
+
if (cxapi.CloudFormationStackArtifact.isCloudFormationStackArtifact(artifact)) {
|
|
91
|
+
this.addStack(artifact);
|
|
92
|
+
}
|
|
93
|
+
else if (cxapi.AssetManifestArtifact.isAssetManifestArtifact(artifact)) {
|
|
94
|
+
const manifest = cdk_assets_1.AssetManifest.fromFile(artifact.file);
|
|
95
|
+
for (const entry of manifest.entries) {
|
|
96
|
+
const parentStack = parentStacks.get(artifact);
|
|
97
|
+
if (parentStack === undefined) {
|
|
98
|
+
throw new error_1.ToolkitError('Found an asset manifest that is not associated with a stack');
|
|
99
|
+
}
|
|
100
|
+
this.addAsset(parentStack, artifact, manifest, entry);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else if (cxapi.NestedCloudAssemblyArtifact.isNestedCloudAssemblyArtifact(artifact)) {
|
|
104
|
+
const assembly = new cxapi.CloudAssembly(artifact.fullPath, { topoSort: false });
|
|
105
|
+
const nestedGraph = new WorkGraphBuilder({ ioHost: this.ioHost, action: this.action }, this.prebuildAssets, `${this.idPrefix}${artifact.id}.`).build(assembly.artifacts);
|
|
106
|
+
this.graph.absorb(nestedGraph);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
// Ignore whatever else
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
this.graph.removeUnavailableDependencies();
|
|
113
|
+
// Remove any potentially introduced cycles between asset publishing and the stacks that depend on them.
|
|
114
|
+
this.removeStackPublishCycles();
|
|
115
|
+
return this.graph;
|
|
116
|
+
}
|
|
117
|
+
stackArtifactIds(deps) {
|
|
118
|
+
return deps.flatMap((d) => cxapi.CloudFormationStackArtifact.isCloudFormationStackArtifact(d) ? [this.stackArtifactId(d)] : []);
|
|
119
|
+
}
|
|
120
|
+
stackArtifactId(artifact) {
|
|
121
|
+
if (!cxapi.CloudFormationStackArtifact.isCloudFormationStackArtifact(artifact)) {
|
|
122
|
+
throw new error_1.ToolkitError(`Can only call this on CloudFormationStackArtifact, got: ${artifact.constructor.name}`);
|
|
123
|
+
}
|
|
124
|
+
return `${this.idPrefix}${artifact.id}`;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* We may have accidentally introduced cycles in an attempt to make the messages printed to the
|
|
128
|
+
* console not interfere with each other too much. Remove them again.
|
|
129
|
+
*/
|
|
130
|
+
removeStackPublishCycles() {
|
|
131
|
+
const publishSteps = this.graph.nodesOfType('asset-publish');
|
|
132
|
+
for (const publishStep of publishSteps) {
|
|
133
|
+
for (const dep of publishStep.dependencies) {
|
|
134
|
+
if (this.graph.reachable(dep, publishStep.id)) {
|
|
135
|
+
publishStep.dependencies.delete(dep);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
exports.WorkGraphBuilder = WorkGraphBuilder;
|
|
142
|
+
/**
|
|
143
|
+
* Default priorities for nodes
|
|
144
|
+
*
|
|
145
|
+
* Assets builds have higher priority than the other two operations, to make good on our promise that
|
|
146
|
+
* '--prebuild-assets' will actually do assets before stacks (if it can). Unfortunately it is the
|
|
147
|
+
* default :(
|
|
148
|
+
*
|
|
149
|
+
* But between stack dependencies and publish dependencies, stack dependencies go first
|
|
150
|
+
*/
|
|
151
|
+
WorkGraphBuilder.PRIORITIES = {
|
|
152
|
+
'asset-build': 10,
|
|
153
|
+
'asset-publish': 0,
|
|
154
|
+
'stack': 5,
|
|
155
|
+
};
|
|
156
|
+
function stacksFromAssets(artifacts) {
|
|
157
|
+
const ret = new Map();
|
|
158
|
+
for (const stack of artifacts.filter(cxapi.CloudFormationStackArtifact.isCloudFormationStackArtifact)) {
|
|
159
|
+
const assetArtifacts = stack.dependencies.filter(cxapi.AssetManifestArtifact.isAssetManifestArtifact);
|
|
160
|
+
for (const art of assetArtifacts) {
|
|
161
|
+
ret.set(art, stack);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return ret;
|
|
165
|
+
}
|
|
166
|
+
function onlyStacks(artifacts) {
|
|
167
|
+
return artifacts.filter(cxapi.CloudFormationStackArtifact.isCloudFormationStackArtifact);
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1ncmFwaC1idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid29yay1ncmFwaC1idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUF5QztBQUN6QywyQ0FBZ0U7QUFDaEUsNkNBQXlDO0FBQ3pDLHlEQUErRTtBQUUvRSwrQ0FBbUQ7QUFDbkQsMERBQXlEO0FBRXpELE1BQWEsZ0JBQWdCO0lBbUIzQixZQUNFLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBZSxFQUNkLGNBQXVCLEVBQ3ZCLFdBQVcsRUFBRTtRQURiLG1CQUFjLEdBQWQsY0FBYyxDQUFTO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQUs7UUFFOUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLHNCQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVPLFFBQVEsQ0FBQyxRQUEyQztRQUMxRCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNsQixJQUFJLEVBQUUsT0FBTztZQUNiLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEVBQUUsRUFBRTtZQUNwQyxZQUFZLEVBQUUsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUMvRSxLQUFLLEVBQUUsUUFBUTtZQUNmLGVBQWUsRUFBRSxrQ0FBZSxDQUFDLE9BQU87WUFDeEMsUUFBUSxFQUFFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxLQUFLO1NBQzVDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILG1DQUFtQztJQUMzQixRQUFRLENBQUMsV0FBOEMs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QTZCLENBQUMsQ0FBQztBQUMzRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCB7IEFzc2V0TWFuaWZlc3QsIHR5cGUgSU1hbmlmZXN0RW50cnkgfSBmcm9tICdjZGstYXNzZXRzJztcbmltcG9ydCB7IFdvcmtHcmFwaCB9IGZyb20gJy4vd29yay1ncmFwaCc7XG5pbXBvcnQgeyBEZXBsb3ltZW50U3RhdGUsIEFzc2V0QnVpbGROb2RlLCBXb3JrTm9kZSB9IGZyb20gJy4vd29yay1ncmFwaC10eXBlcyc7XG5pbXBvcnQgeyBJb01lc3NhZ2luZyB9IGZyb20gJy4uLy4uL3Rvb2xraXQvY2xpLWlvLWhvc3QnO1xuaW1wb3J0IHsgVG9vbGtpdEVycm9yIH0gZnJvbSAnLi4vLi4vdG9vbGtpdC9lcnJvcic7XG5pbXBvcnQgeyBjb250ZW50SGFzaEFueSB9IGZyb20gJy4uLy4uL3V0aWwvY29udGVudC1oYXNoJztcblxuZXhwb3J0IGNsYXNzIFdvcmtHcmFwaEJ1aWxkZXIge1xuICAvKipcbiAgICogRGVmYXVsdCBwcmlvcml0aWVzIGZvciBub2Rlc1xuICAgKlxuICAgKiBBc3NldHMgYnVpbGRzIGhhdmUgaGlnaGVyIHByaW9yaXR5IHRoYW4gdGhlIG90aGVyIHR3byBvcGVyYXRpb25zLCB0byBtYWtlIGdvb2Qgb24gb3VyIHByb21pc2UgdGhhdFxuICAgKiAnLS1wcmVidWlsZC1hc3NldHMnIHdpbGwgYWN0dWFsbHkgZG8gYXNzZXRzIGJlZm9yZSBzdGFja3MgKGlmIGl0IGNhbikuIFVuZm9ydHVuYXRlbHkgaXQgaXMgdGhlXG4gICAqIGRlZmF1bHQgOihcbiAgICpcbiAgICogQnV0IGJldHdlZW4gc3RhY2sgZGVwZW5kZW5jaWVzIGFuZCBwdWJsaXNoIGRlcGVuZGVuY2llcywgc3RhY2sgZGVwZW5kZW5jaWVzIGdvIGZpcnN0XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIFBSSU9SSVRJRVM6IFJlY29yZDxXb3JrTm9kZVsndHlwZSddLCBudW1iZXI+ID0ge1xuICAgICdhc3NldC1idWlsZCc6IDEwLFxuICAgICdhc3NldC1wdWJsaXNoJzogMCxcbiAgICAnc3RhY2snOiA1LFxuICB9O1xuICBwcml2YXRlIHJlYWRvbmx5IGdyYXBoOiBXb3JrR3JhcGg7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW9Ib3N0OiBJb01lc3NhZ2luZ1snaW9Ib3N0J107XG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aW9uOiBJb01lc3NhZ2luZ1snYWN0aW9uJ107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgeyBpb0hvc3QsIGFjdGlvbiB9OiBJb01lc3NhZ2luZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByZWJ1aWxkQXNzZXRzOiBib29sZWFuLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWRQcmVmaXggPSAnJyxcbiAgKSB7XG4gICAgdGhpcy5ncmFwaCA9IG5ldyBXb3JrR3JhcGgoe30sIHsgaW9Ib3N0LCBhY3Rpb24gfSk7XG4gICAgdGhpcy5pb0hvc3QgPSBpb0hvc3Q7XG4gICAgdGhpcy5hY3Rpb24gPSBhY3Rpb247XG4gIH1cblxuICBwcml2YXRlIGFkZFN0YWNrKGFydGlmYWN0OiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3QpIHtcbiAgICB0aGlzLmdyYXBoLmFkZE5vZGVzKHtcbiAgICAgIHR5cGU6ICdzdGFjaycsXG4gICAgICBpZDogYCR7dGhpcy5pZFByZWZpeH0ke2FydGlmYWN0LmlkfWAsXG4gICAgICBkZXBlbmRlbmNpZXM6IG5ldyBTZXQodGhpcy5zdGFja0FydGlmYWN0SWRzKG9ubHlTdGFja3MoYXJ0aWZhY3QuZGVwZW5kZW5jaWVzKSkpLFxuICAgICAgc3RhY2s6IGFydGlmYWN0LFxuICAgICAgZGVwbG95bWVudFN0YXRlOiBEZXBsb3ltZW50U3RhdGUuUEVORElORyxcbiAgICAgIHByaW9yaXR5OiBXb3JrR3JhcGhCdWlsZGVyLlBSSU9SSVRJRVMuc3RhY2ssXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT29mLCBzZWUgdGhpcyBwYXJhbWV0ZXIgbGlzdFxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgcHJpdmF0ZSBhZGRBc3NldChwYXJlbnRTdGFjazogY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LCBhc3NldE1hbmlmZXN0QXJ0aWZhY3Q6IGN4YXBpLkFzc2V0TWFuaWZlc3RBcnRpZmFjdCwgYXNzZXRNYW5pZmVzdDogQXNzZXRNYW5pZmVzdCwgYXNzZXQ6IElNYW5pZmVzdEVudHJ5KSB7XG4gICAgLy8gSnVzdCB0aGUgYXJ0aWZhY3QgaWRlbnRpZmllclxuICAgIGNvbnN0IGFzc2V0SWQgPSBhc3NldC5pZC5hc3NldElkO1xuXG4gICAgY29uc3QgYnVpbGRJZCA9IGBidWlsZC0ke2Fzc2V0SWR9LSR7Y29udGVudEhhc2hBbnkoW2Fzc2V0SWQsIGFzc2V0LmdlbmVyaWNTb3VyY2VdKS5zdWJzdHJpbmcoMCwgMTApfWA7XG4gICAgY29uc3QgcHVibGlzaElkID0gYHB1Ymxpc2gtJHthc3NldElkfS0ke2NvbnRlbnRIYXNoQW55KFthc3NldElkLCBhc3NldC5nZW5lcmljRGVzdGluYXRpb25dKS5zdWJzdHJpbmcoMCwgMTApfWA7XG5cbiAgICAvLyBCdWlsZCBub2RlIG9ubHkgZ2V0cyBhZGRlZCBvbmNlIGJlY2F1c2UgdGhleSBhcmUgYWxsIHRoZSBzYW1lXG4gICAgaWYgKCF0aGlzLmdyYXBoLnRyeUdldE5vZGUoYnVpbGRJZCkpIHtcbiAgICAgIGNvbnN0IG5vZGU6IEFzc2V0QnVpbGROb2RlID0ge1xuICAgICAgICB0eXBlOiAnYXNzZXQtYnVpbGQnLFxuICAgICAgICBpZDogYnVpbGRJZCxcbiAgICAgICAgbm90ZTogYXNzZXRJZCxcbiAgICAgICAgZGVwZW5kZW5jaWVzOiBuZXcgU2V0KFtcbiAgICAgICAgICAuLi50aGlzLnN0YWNrQXJ0aWZhY3RJZHMoYXNzZXRNYW5pZmVzdEFydGlmYWN0LmRlcGVuZGVuY2llcyksXG4gICAgICAgICAgLy8gSWYgd2UgZGlzYWJsZSBwcmVidWlsZCwgdGhlbiBhc3NldHMgaW5oZXJpdCAoc3RhY2spIGRlcGVuZGVuY2llcyBmcm9tIHRoZWlyIHBhcmVudCBzdGFja1xuICAgICAgICAgIC4uLiF0aGlzLnByZWJ1aWxkQXNzZXRzID8gdGhpcy5zdGFja0FydGlmYWN0SWRzKG9ubHlTdGFja3MocGFyZW50U3RhY2suZGVwZW5kZW5jaWVzKSkgOiBbXSxcbiAgICAgICAgXSksXG4gICAgICAgIHBhcmVudFN0YWNrOiBwYXJlbnRTdGFjayxcbiAgICAgICAgYXNzZXRNYW5pZmVzdEFydGlmYWN0LFxuICAgICAgICBhc3NldE1hbmlmZXN0LFxuICAgICAgICBhc3NldCxcbiAgICAgICAgZGVwbG95bWVudFN0YXRlOiBEZXBsb3ltZW50U3RhdGUuUEVORElORyxcbiAgICAgICAgcHJpb3JpdHk6IFdvcmtHcmFwaEJ1aWxkZXIuUFJJT1JJVElFU1snYXNzZXQtYnVpbGQnXSxcbiAgICAgIH07XG4gICAgICB0aGlzLmdyYXBoLmFkZE5vZGVzKG5vZGUpO1xuICAgIH1cblxuICAgIGNvbnN0IHB1Ymxpc2hOb2RlID0gdGhpcy5ncmFwaC50cnlHZXROb2RlKHB1Ymxpc2hJZCk7XG4gICAgaWYgKCFwdWJsaXNoTm9kZSkge1xuICAgICAgdGhpcy5ncmFwaC5hZGROb2Rlcyh7XG4gICAgICAgIHR5cGU6ICdhc3NldC1wdWJsaXNoJyxcbiAgICAgICAgaWQ6IHB1Ymxpc2hJZCxcbiAgICAgICAgbm90ZTogYCR7YXNzZXQuaWR9YCxcbiAgICAgICAgZGVwZW5kZW5jaWVzOiBuZXcgU2V0KFtcbiAgICAgICAgICBidWlsZElkLFxuICAgICAgICBdKSxcbiAgICAgICAgcGFyZW50U3RhY2ssXG4gICAgICAgIGFzc2V0TWFuaWZlc3RBcnRpZmFjdCxcbiAgICAgICAgYXNzZXRNYW5pZmVzdCxcbiAgICAgICAgYXNzZXQsXG4gICAgICAgIGRlcGxveW1lbnRTdGF0ZTogRGVwbG95bWVudFN0YXRlLlBFTkRJTkcsXG4gICAgICAgIHByaW9yaXR5OiBXb3JrR3JhcGhCdWlsZGVyLlBSSU9SSVRJRVNbJ2Fzc2V0LXB1Ymxpc2gnXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgaW5oZXJpdGVkRGVwIG9mIHRoaXMuc3RhY2tBcnRpZmFjdElkcyhvbmx5U3RhY2tzKHBhcmVudFN0YWNrLmRlcGVuZGVuY2llcykpKSB7XG4gICAgICAvLyBUaGUgYXNzZXQgcHVibGlzaCBzdGVwIGFsc28gZGVwZW5kcyBvbiB0aGUgc3RhY2tzIHRoYXQgdGhlIHBhcmVudCBkZXBlbmRzIG9uLlxuICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgY29zbWV0aWM6IGlmIHdlIGRvbid0IGRvIHRoaXMsIHRoZSBwcm9ncmVzcyBwcmludGluZyBvZiBhc3NldCBwdWJsaXNoaW5nXG4gICAgICAvLyBpcyBnb2luZyB0byBpbnRlcmZlcmUgd2l0aCB0aGUgcHJvZ3Jlc3MgYmFyIG9mIHRoZSBzdGFjayBkZXBsb3ltZW50LiBXZSBjb3VsZCByZW1vdmUgdGhpc1xuICAgICAgLy8gZm9yIG92ZXJhbGwgZmFzdGVyIGRlcGxveW1lbnRzIGlmIHdlIGV2ZXIgaGF2ZSBhIGJldHRlciBtZXRob2Qgb2YgcHJvZ3Jlc3MgZGlzcGxheWluZy5cbiAgICAgIC8vIE5vdGU6IHRoaXMgbWF5IGludHJvZHVjZSBhIGN5Y2xlIGlmIG9uZSBvZiB0aGUgcGFyZW50J3MgZGVwZW5kZW5jaWVzIGlzIGFub3RoZXIgc3RhY2sgdGhhdFxuICAgICAgLy8gZGVwZW5kcyBvbiB0aGlzIGFzc2V0LiBUbyB3b3JrYXJvdW5kIHRoaXMgd2UgcmVtb3ZlIHRoZXNlIGN5Y2xlcyBvbmNlIGFsbCBub2RlcyBoYXZlXG4gICAgICAvLyBiZWVuIGFkZGVkIHRvIHRoZSBncmFwaC5cbiAgICAgIHRoaXMuZ3JhcGguYWRkRGVwZW5kZW5jeShwdWJsaXNoSWQsIGluaGVyaXRlZERlcCk7XG4gICAgfVxuXG4gICAgLy8gVGhpcyB3aWxsIHdvcmsgd2hldGhlciB0aGUgc3RhY2sgbm9kZSBoYXMgYmVlbiBhZGRlZCB5ZXQgb3Igbm90XG4gICAgdGhpcy5ncmFwaC5hZGREZXBlbmRlbmN5KGAke3RoaXMuaWRQcmVmaXh9JHtwYXJlbnRTdGFjay5pZH1gLCBwdWJsaXNoSWQpO1xuICB9XG5cbiAgcHVibGljIGJ1aWxkKGFydGlmYWN0czogY3hhcGkuQ2xvdWRBcnRpZmFjdFtdKTogV29ya0dyYXBoIHtcbiAgICBjb25zdCBwYXJlbnRTdGFja3MgPSBzdGFja3NGcm9tQXNzZXRzKGFydGlmYWN0cyk7XG5cbiAgICBmb3IgKGNvbnN0IGFydGlmYWN0IG9mIGFydGlmYWN0cykge1xuICAgICAgaWYgKGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdC5pc0Nsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdChhcnRpZmFjdCkpIHtcbiAgICAgICAgdGhpcy5hZGRTdGFjayhhcnRpZmFjdCk7XG4gICAgICB9IGVsc2UgaWYgKGN4YXBpLkFzc2V0TWFuaWZlc3RBcnRpZmFjdC5pc0Fzc2V0TWFuaWZlc3RBcnRpZmFjdChhcnRpZmFjdCkpIHtcbiAgICAgICAgY29uc3QgbWFuaWZlc3QgPSBBc3NldE1hbmlmZXN0LmZyb21GaWxlKGFydGlmYWN0LmZpbGUpO1xuXG4gICAgICAgIGZvciAoY29uc3QgZW50cnkgb2YgbWFuaWZlc3QuZW50cmllcykge1xuICAgICAgICAgIGNvbnN0IHBhcmVudFN0YWNrID0gcGFyZW50U3RhY2tzLmdldChhcnRpZmFjdCk7XG4gICAgICAgICAgaWYgKHBhcmVudFN0YWNrID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoJ0ZvdW5kIGFuIGFzc2V0IG1hbmlmZXN0IHRoYXQgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhIHN0YWNrJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuYWRkQXNzZXQocGFyZW50U3RhY2ssIGFydGlmYWN0LCBtYW5pZmVzdCwgZW50cnkpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGN4YXBpLk5lc3RlZENsb3VkQXNzZW1ibHlBcnRpZmFjdC5pc05lc3RlZENsb3VkQXNzZW1ibHlBcnRpZmFjdChhcnRpZmFjdCkpIHtcbiAgICAgICAgY29uc3QgYXNzZW1ibHkgPSBuZXcgY3hhcGkuQ2xvdWRBc3NlbWJseShhcnRpZmFjdC5mdWxsUGF0aCwgeyB0b3BvU29ydDogZmFsc2UgfSk7XG4gICAgICAgIGNvbnN0IG5lc3RlZEdyYXBoID0gbmV3IFdvcmtHcmFwaEJ1aWxkZXIoXG4gICAgICAgICAgeyBpb0hvc3Q6IHRoaXMuaW9Ib3N0LCBhY3Rpb246IHRoaXMuYWN0aW9uIH0sXG4gICAgICAgICAgdGhpcy5wcmVidWlsZEFzc2V0cyxcbiAgICAgICAgICBgJHt0aGlzLmlkUHJlZml4fSR7YXJ0aWZhY3QuaWR9LmAsXG4gICAgICAgICkuYnVpbGQoYXNzZW1ibHkuYXJ0aWZhY3RzKTtcbiAgICAgICAgdGhpcy5ncmFwaC5hYnNvcmIobmVzdGVkR3JhcGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gSWdub3JlIHdoYXRldmVyIGVsc2VcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmdyYXBoLnJlbW92ZVVuYXZhaWxhYmxlRGVwZW5kZW5jaWVzKCk7XG5cbiAgICAvLyBSZW1vdmUgYW55IHBvdGVudGlhbGx5IGludHJvZHVjZWQgY3ljbGVzIGJldHdlZW4gYXNzZXQgcHVibGlzaGluZyBhbmQgdGhlIHN0YWNrcyB0aGF0IGRlcGVuZCBvbiB0aGVtLlxuICAgIHRoaXMucmVtb3ZlU3RhY2tQdWJsaXNoQ3ljbGVzKCk7XG5cbiAgICByZXR1cm4gdGhpcy5ncmFwaDtcbiAgfVxuXG4gIHByaXZhdGUgc3RhY2tBcnRpZmFjdElkcyhkZXBzOiBjeGFwaS5DbG91ZEFydGlmYWN0W10pOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIGRlcHMuZmxhdE1hcCgoZCkgPT4gY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LmlzQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0KGQpID8gW3RoaXMuc3RhY2tBcnRpZmFjdElkKGQpXSA6IFtdKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhY2tBcnRpZmFjdElkKGFydGlmYWN0OiBjeGFwaS5DbG91ZEFydGlmYWN0KTogc3RyaW5nIHtcbiAgICBpZiAoIWN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdC5pc0Nsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdChhcnRpZmFjdCkpIHtcbiAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoYENhbiBvbmx5IGNhbGwgdGhpcyBvbiBDbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3QsIGdvdDogJHthcnRpZmFjdC5jb25zdHJ1Y3Rvci5uYW1lfWApO1xuICAgIH1cbiAgICByZXR1cm4gYCR7dGhpcy5pZFByZWZpeH0ke2FydGlmYWN0LmlkfWA7XG4gIH1cblxuICAvKipcbiAgICogV2UgbWF5IGhhdmUgYWNjaWRlbnRhbGx5IGludHJvZHVjZWQgY3ljbGVzIGluIGFuIGF0dGVtcHQgdG8gbWFrZSB0aGUgbWVzc2FnZXMgcHJpbnRlZCB0byB0aGVcbiAgICogY29uc29sZSBub3QgaW50ZXJmZXJlIHdpdGggZWFjaCBvdGhlciB0b28gbXVjaC4gUmVtb3ZlIHRoZW0gYWdhaW4uXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZVN0YWNrUHVibGlzaEN5Y2xlcygpIHtcbiAgICBjb25zdCBwdWJsaXNoU3RlcHMgPSB0aGlzLmdyYXBoLm5vZGVzT2ZUeXBlKCdhc3NldC1wdWJsaXNoJyk7XG4gICAgZm9yIChjb25zdCBwdWJsaXNoU3RlcCBvZiBwdWJsaXNoU3RlcHMpIHtcbiAgICAgIGZvciAoY29uc3QgZGVwIG9mIHB1Ymxpc2hTdGVwLmRlcGVuZGVuY2llcykge1xuICAgICAgICBpZiAodGhpcy5ncmFwaC5yZWFjaGFibGUoZGVwLCBwdWJsaXNoU3RlcC5pZCkpIHtcbiAgICAgICAgICBwdWJsaXNoU3RlcC5kZXBlbmRlbmNpZXMuZGVsZXRlKGRlcCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RhY2tzRnJvbUFzc2V0cyhhcnRpZmFjdHM6IGN4YXBpLkNsb3VkQXJ0aWZhY3RbXSkge1xuICBjb25zdCByZXQgPSBuZXcgTWFwPGN4YXBpLkFzc2V0TWFuaWZlc3RBcnRpZmFjdCwgY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0PigpO1xuICBmb3IgKGNvbnN0IHN0YWNrIG9mIGFydGlmYWN0cy5maWx0ZXIoY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LmlzQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0KSkge1xuICAgIGNvbnN0IGFzc2V0QXJ0aWZhY3RzID0gc3RhY2suZGVwZW5kZW5jaWVzLmZpbHRlcihjeGFwaS5Bc3NldE1hbmlmZXN0QXJ0aWZhY3QuaXNBc3NldE1hbmlmZXN0QXJ0aWZhY3QpO1xuICAgIGZvciAoY29uc3QgYXJ0IG9mIGFzc2V0QXJ0aWZhY3RzKSB7XG4gICAgICByZXQuc2V0KGFydCwgc3RhY2spO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIG9ubHlTdGFja3MoYXJ0aWZhY3RzOiBjeGFwaS5DbG91ZEFydGlmYWN0W10pIHtcbiAgcmV0dXJuIGFydGlmYWN0cy5maWx0ZXIoY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0LmlzQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0KTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeploymentState = void 0;
|
|
4
|
+
var DeploymentState;
|
|
5
|
+
(function (DeploymentState) {
|
|
6
|
+
DeploymentState["PENDING"] = "pending";
|
|
7
|
+
DeploymentState["QUEUED"] = "queued";
|
|
8
|
+
DeploymentState["DEPLOYING"] = "deploying";
|
|
9
|
+
DeploymentState["COMPLETED"] = "completed";
|
|
10
|
+
DeploymentState["FAILED"] = "failed";
|
|
11
|
+
DeploymentState["SKIPPED"] = "skipped";
|
|
12
|
+
})(DeploymentState || (exports.DeploymentState = DeploymentState = {}));
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1ncmFwaC10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndvcmstZ3JhcGgtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsSUFBWSxlQU9YO0FBUEQsV0FBWSxlQUFlO0lBQ3pCLHNDQUFtQixDQUFBO0lBQ25CLG9DQUFpQixDQUFBO0lBQ2pCLDBDQUF1QixDQUFBO0lBQ3ZCLDBDQUF1QixDQUFBO0lBQ3ZCLG9DQUFpQixDQUFBO0lBQ2pCLHNDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFQVyxlQUFlLCtCQUFmLGVBQWUsUUFPMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0IHsgQXNzZXRNYW5pZmVzdCwgdHlwZSBJTWFuaWZlc3RFbnRyeSB9IGZyb20gJ2Nkay1hc3NldHMnO1xuXG5leHBvcnQgZW51bSBEZXBsb3ltZW50U3RhdGUge1xuICBQRU5ESU5HID0gJ3BlbmRpbmcnLFxuICBRVUVVRUQgPSAncXVldWVkJyxcbiAgREVQTE9ZSU5HID0gJ2RlcGxveWluZycsXG4gIENPTVBMRVRFRCA9ICdjb21wbGV0ZWQnLFxuICBGQUlMRUQgPSAnZmFpbGVkJyxcbiAgU0tJUFBFRCA9ICdza2lwcGVkJyxcbn1cblxuZXhwb3J0IHR5cGUgV29ya05vZGUgPSBTdGFja05vZGUgfCBBc3NldEJ1aWxkTm9kZSB8IEFzc2V0UHVibGlzaE5vZGU7XG5cbmV4cG9ydCBpbnRlcmZhY2UgV29ya05vZGVDb21tb24ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBkZXBlbmRlbmNpZXM6IFNldDxzdHJpbmc+O1xuICBkZXBsb3ltZW50U3RhdGU6IERlcGxveW1lbnRTdGF0ZTtcbiAgLyoqIFNvbWUgcmVhZGFibGUgaW5mb3JtYXRpb24gdG8gYXR0YWNoIHRvIHRoZSBpZCwgd2hpY2ggbWF5IGJlIHVucmVhZGFibGUgKi9cbiAgcmVhZG9ubHkgbm90ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFja05vZGUgZXh0ZW5kcyBXb3JrTm9kZUNvbW1vbiB7XG4gIHJlYWRvbmx5IHR5cGU6ICdzdGFjayc7XG4gIHJlYWRvbmx5IHN0YWNrOiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3Q7XG4gIC8qKiBTb3J0IGJ5IHByaW9yaXR5IHdoZW4gcGlja2luZyB1cCB3b3JrLCBoaWdoZXIgaXMgZWFybGllciAqL1xuICByZWFkb25seSBwcmlvcml0eT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBc3NldEJ1aWxkTm9kZSBleHRlbmRzIFdvcmtOb2RlQ29tbW9uIHtcbiAgcmVhZG9ubHkgdHlwZTogJ2Fzc2V0LWJ1aWxkJztcbiAgLyoqIFRoZSBhc3NldCBtYW5pZmVzdCB0aGlzIGFzc2V0IHJlc2lkZXMgaW4gKGFydGlmYWN0KSAqL1xuICByZWFkb25seSBhc3NldE1hbmlmZXN0QXJ0aWZhY3Q6IGN4YXBpLkFzc2V0TWFuaWZlc3RBcnRpZmFjdDtcbiAgLyoqIFRoZSBhc3NldCBtYW5pZmVzdCB0aGlzIGFzc2V0IHJlc2lkZXMgaW4gKi9cbiAgcmVhZG9ubHkgYXNzZXRNYW5pZmVzdDogQXNzZXRNYW5pZmVzdDtcbiAgLyoqIFRoZSBzdGFjayB0aGlzIGFzc2V0IHdhcyBkZWZpbmVkIGluICh1c2VkIGZvciBlbnZpcm9ubWVudCBzZXR0aW5ncykgKi9cbiAgcmVhZG9ubHkgcGFyZW50U3RhY2s6IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdDtcbiAgLyoqIFRoZSBhc3NldCB0aGF0IG5lZWRzIHRvIGJlIGJ1aWx0ICovXG4gIHJlYWRvbmx5IGFzc2V0OiBJTWFuaWZlc3RFbnRyeTtcbiAgLyoqIFNvcnQgYnkgcHJpb3JpdHkgd2hlbiBwaWNraW5nIHVwIHdvcmssIGhpZ2hlciBpcyBlYXJsaWVyICovXG4gIHJlYWRvbmx5IHByaW9yaXR5PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFzc2V0UHVibGlzaE5vZGUgZXh0ZW5kcyBXb3JrTm9kZUNvbW1vbiB7XG4gIHJlYWRvbmx5IHR5cGU6ICdhc3NldC1wdWJsaXNoJztcbiAgLyoqIFRoZSBhc3NldCBtYW5pZmVzdCB0aGlzIGFzc2V0IHJlc2lkZXMgaW4gKGFydGlmYWN0KSAqL1xuICByZWFkb25seSBhc3NldE1hbmlmZXN0QXJ0aWZhY3Q6IGN4YXBpLkFzc2V0TWFuaWZlc3RBcnRpZmFjdDtcbiAgLyoqIFRoZSBhc3NldCBtYW5pZmVzdCB0aGlzIGFzc2V0IHJlc2lkZXMgaW4gKi9cbiAgcmVhZG9ubHkgYXNzZXRNYW5pZmVzdDogQXNzZXRNYW5pZmVzdDtcbiAgLyoqIFRoZSBzdGFjayB0aGlzIGFzc2V0IHdhcyBkZWZpbmVkIGluICh1c2VkIGZvciBlbnZpcm9ubWVudCBzZXR0aW5ncykgKi9cbiAgcmVhZG9ubHkgcGFyZW50U3RhY2s6IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdDtcbiAgLyoqIFRoZSBhc3NldCB0aGF0IG5lZWRzIHRvIGJlIHB1Ymxpc2hlZCAqL1xuICByZWFkb25seSBhc3NldDogSU1hbmlmZXN0RW50cnk7XG4gIC8qKiBTb3J0IGJ5IHByaW9yaXR5IHdoZW4gcGlja2luZyB1cCB3b3JrLCBoaWdoZXIgaXMgZWFybGllciAqL1xuICByZWFkb25seSBwcmlvcml0eT86IG51bWJlcjtcbn1cbiJdfQ==
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { WorkNode, StackNode, AssetBuildNode, AssetPublishNode } from './work-graph-types';
|
|
2
|
+
import { IoMessaging } from '../../toolkit/cli-io-host';
|
|
2
3
|
export type Concurrency = number | Record<WorkNode['type'], number>;
|
|
4
|
+
export interface WorkGraphProps {
|
|
5
|
+
ioHost: IoMessaging['ioHost'];
|
|
6
|
+
action: IoMessaging['action'];
|
|
7
|
+
}
|
|
3
8
|
export declare class WorkGraph {
|
|
4
9
|
readonly nodes: Record<string, WorkNode>;
|
|
5
10
|
private readonly readyPool;
|
|
6
11
|
private readonly lazyDependencies;
|
|
12
|
+
private readonly ioHost;
|
|
13
|
+
private readonly action;
|
|
7
14
|
error?: Error;
|
|
8
|
-
constructor(nodes
|
|
15
|
+
constructor(nodes: Record<string, WorkNode>, props: WorkGraphProps);
|
|
9
16
|
addNodes(...nodes: WorkNode[]): void;
|
|
10
17
|
removeNode(nodeId: string | WorkNode): void;
|
|
11
18
|
/**
|
|
@@ -30,7 +37,7 @@ export declare class WorkGraph {
|
|
|
30
37
|
/**
|
|
31
38
|
* Return the set of unblocked nodes
|
|
32
39
|
*/
|
|
33
|
-
ready(): ReadonlyArray<WorkNode
|
|
40
|
+
ready(): Promise<ReadonlyArray<WorkNode>>;
|
|
34
41
|
private forAllArtifacts;
|
|
35
42
|
private done;
|
|
36
43
|
private deployed;
|