@aws-cdk-testing/cli-integ 3.4.4 → 3.4.5
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/lib/aws.js +5 -1
- package/lib/aws.ts +5 -0
- package/package.json +1 -1
package/lib/aws.js
CHANGED
|
@@ -66,6 +66,10 @@ class AwsClients {
|
|
|
66
66
|
AWS_ACCESS_KEY_ID: this.identity.accessKeyId,
|
|
67
67
|
AWS_SECRET_ACCESS_KEY: this.identity.secretAccessKey,
|
|
68
68
|
AWS_SESSION_TOKEN: this.identity.sessionToken,
|
|
69
|
+
// unset any previously used profile because the SDK will prefer
|
|
70
|
+
// this over static env credentials. this is relevant for tests running on CodeBuild
|
|
71
|
+
// because we use a profile as our main credentials source.
|
|
72
|
+
AWS_PROFILE: '',
|
|
69
73
|
} : undefined;
|
|
70
74
|
}
|
|
71
75
|
/**
|
|
@@ -232,4 +236,4 @@ function chainableCredentials(region) {
|
|
|
232
236
|
function isAwsCredentialIdentity(x) {
|
|
233
237
|
return Boolean(x && typeof x === 'object' && x.accessKeyId);
|
|
234
238
|
}
|
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQTBOQSxrREFFQztBQUVELG9EQUVDO0FBVUQsc0JBc0JDO0FBaUJELDBDQUVDO0FBRUQsc0JBRUM7QUF2UkQsMEVBTXdDO0FBQ3hDLG9EQUF5RTtBQUN6RSxrRUFBNkQ7QUFDN0Qsb0RBQWdEO0FBQ2hELG9EQUFnRDtBQUNoRCwwREFBc0Q7QUFDdEQsa0RBTTRCO0FBQzVCLG9EQUFnRDtBQUNoRCxvREFBZ0Q7QUFDaEQsb0RBQTBFO0FBQzFFLHdFQUErRTtBQUUvRSxtREFBNkQ7QUFPN0QsTUFBYSxVQUFVO0lBQ2QsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBYyxFQUFFLFFBQStCLEVBQUUsTUFBNkI7UUFDNUcsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFjLEVBQUUsTUFBNkI7UUFDekUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQWVELFlBQ2tCLE1BQWMsRUFDYixNQUE2QixFQUM5QixRQUFnQzs7UUFGaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNiLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQXdCO1FBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixXQUFXLEVBQUUsTUFBQSxJQUFJLENBQUMsUUFBUSxtQ0FBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQy9ELE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixhQUFhLEVBQUUsSUFBSSxvQ0FBdUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFlLEVBQUUsRUFBRSxDQUFDLE9BQU8sSUFBSSxHQUFH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bnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2xvdWRGb3JtYXRpb25DbGllbnQsXG4gIERlbGV0ZVN0YWNrQ29tbWFuZCxcbiAgRGVzY3JpYmVTdGFja3NDb21tYW5kLFxuICBVcGRhdGVUZXJtaW5hdGlvblByb3RlY3Rpb25Db21tYW5kLFxuICB0eXBlIFN0YWNrLFxufSBmcm9tICdAYXdzLXNkay9jbGllbnQtY2xvdWRmb3JtYXRpb24nO1xuaW1wb3J0IHsgRGVsZXRlUmVwb3NpdG9yeUNvbW1hbmQsIEVDUkNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1lY3InO1xuaW1wb3J0IHsgRUNSUFVCTElDQ2xpZW50IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWVjci1wdWJsaWMnO1xuaW1wb3J0IHsgRUNTQ2xpZW50IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWVjcyc7XG5pbXBvcnQgeyBJQU1DbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtaWFtJztcbmltcG9ydCB7IExhbWJkYUNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1sYW1iZGEnO1xuaW1wb3J0IHtcbiAgUzNDbGllbnQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kLFxuICBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kLFxuICB0eXBlIE9iamVjdElkZW50aWZpZXIsXG4gIERlbGV0ZUJ1Y2tldENvbW1hbmQsXG59IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zMyc7XG5pbXBvcnQgeyBTTlNDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc25zJztcbmltcG9ydCB7IFNTT0NsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zc28nO1xuaW1wb3J0IHsgU1RTQ2xpZW50LCBHZXRDYWxsZXJJZGVudGl0eUNvbW1hbmQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc3RzJztcbmltcG9ydCB7IGZyb21JbmksIGZyb21Ob2RlUHJvdmlkZXJDaGFpbiB9IGZyb20gJ0Bhd3Mtc2RrL2NyZWRlbnRpYWwtcHJvdmlkZXJzJztcbmltcG9ydCB0eXBlIHsgQXdzQ3JlZGVudGlhbElkZW50aXR5LCBBd3NDcmVkZW50aWFsSWRlbnRpdHlQcm92aWRlciB9IGZyb20gJ0BzbWl0aHkvdHlwZXMnO1xuaW1wb3J0IHsgQ29uZmlndXJlZFJldHJ5U3RyYXRlZ3kgfSBmcm9tICdAc21pdGh5L3V0aWwtcmV0cnknO1xuaW50ZXJmYWNlIENsaWVudENvbmZpZyB7XG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzOiBBd3NDcmVkZW50aWFsSWRlbnRpdHlQcm92aWRlciB8IEF3c0NyZWRlbnRpYWxJZGVudGl0eTtcbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJldHJ5U3RyYXRlZ3k6IENvbmZpZ3VyZWRSZXRyeVN0cmF0ZWd5O1xufVxuXG5leHBvcnQgY2xhc3MgQXdzQ2xpZW50cyB7XG4gIHB1YmxpYyBzdGF0aWMgYXN5bmMgZm9ySWRlbnRpdHkocmVnaW9uOiBzdHJpbmcsIGlkZW50aXR5OiBBd3NDcmVkZW50aWFsSWRlbnRpdHksIG91dHB1dDogTm9kZUpTLldyaXRhYmxlU3RyZWFtKSB7XG4gICAgcmV0dXJuIG5ldyBBd3NDbGllbnRzKHJlZ2lvbiwgb3V0cHV0LCBpZGVudGl0eSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGFzeW5jIGZvclJlZ2lvbihyZWdpb246IHN0cmluZywgb3V0cHV0OiBOb2RlSlMuV3JpdGFibGVTdHJlYW0pIHtcbiAgICByZXR1cm4gbmV3IEF3c0NsaWVudHMocmVnaW9uLCBvdXRwdXQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENsaWVudENvbmZpZztcblxuICBwdWJsaWMgcmVhZG9ubHkgY2xvdWRGb3JtYXRpb246IENsb3VkRm9ybWF0aW9uQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgczM6IFMzQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgZWNyOiBFQ1JDbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBlY3JQdWJsaWM6IEVDUlBVQkxJQ0NsaWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGVjczogRUNTQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgc3NvOiBTU09DbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBzbnM6IFNOU0NsaWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGlhbTogSUFNQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgbGFtYmRhOiBMYW1iZGFDbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBzdHM6IFNUU0NsaWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBvdXRwdXQ6IE5vZGVKUy5Xcml0YWJsZVN0cmVhbSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWRlbnRpdHk/OiBBd3NDcmVkZW50aWFsSWRlbnRpdHkpIHtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIGNyZWRlbnRpYWxzOiB0aGlzLmlkZW50aXR5ID8/IGNoYWluYWJsZUNyZWRlbnRpYWxzKHRoaXMucmVnaW9uKSxcbiAgICAgIHJlZ2lvbjogdGhpcy5yZWdpb24sXG4gICAgICByZXRyeVN0cmF0ZWd5OiBuZXcgQ29uZmlndXJlZFJldHJ5U3RyYXRlZ3koOSwgKGF0dGVtcHQ6IG51bWJlcikgPT4gYXR0ZW1wdCAqKiA1MDApLFxuICAgIH07XG4gICAgdGhpcy5jbG91ZEZvcm1hdGlvbiA9IG5ldyBDbG91ZEZvcm1hdGlvbkNsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5zMyA9IG5ldyBTM0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5lY3IgPSBuZXcgRUNSQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLmVjclB1YmxpYyA9IG5ldyBFQ1JQVUJMSUNDbGllbnQoeyAuLi50aGlzLmNvbmZpZywgcmVnaW9uOiAndXMtZWFzdC0xJyAvKiBwdWJsaWMgZ2FsbGVyeSBpcyBvbmx5IGF2YWlsYWJsZSBpbiB1cy1lYXN0LTEgKi8gfSk7XG4gICAgdGhpcy5lY3MgPSBuZXcgRUNTQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLnNzbyA9IG5ldyBTU09DbGllbnQodGhpcy5jb25maWcpO1xuICAgIHRoaXMuc25zID0gbmV3IFNOU0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5pYW0gPSBuZXcgSUFNQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLmxhbWJkYSA9IG5ldyBMYW1iZGFDbGllbnQodGhpcy5jb25maWcpO1xuICAgIHRoaXMuc3RzID0gbmV3IFNUU0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgYWNjb3VudCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIC8vIFJlZHVjZSAjIG9mIHJldHJpZXMsIHdlIHVzZSB0aGlzIGFzIGEgY2lyY3VpdCBicmVha2VyIGZvciBkZXRlY3Rpbmcgbm8tY29uZmlnXG4gICAgY29uc3Qgc3RzQ2xpZW50ID0gbmV3IFNUU0NsaWVudCh7XG4gICAgICBjcmVkZW50aWFsczogdGhpcy5jb25maWcuY3JlZGVudGlhbHMsXG4gICAgICByZWdpb246IHRoaXMuY29uZmlnLnJlZ2lvbixcbiAgICAgIG1heEF0dGVtcHRzOiAyLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIChhd2FpdCBzdHNDbGllbnQuc2VuZChuZXcgR2V0Q2FsbGVySWRlbnRpdHlDb21tYW5kKHt9KSkpLkFjY291bnQhO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRoZSBjbGllbnRzIGFscmVhZHkgaGFzIGFuIGVzdGFibGlzaGVkIGlkZW50aXR5ICh2aWEgYXRtb3NwaGVyZSBmb3IgZXhhbXBsZSksXG4gICAqIHJldHVybiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBtYXAgYWN0aXZhdGluZyBpdC5cbiAgICpcbiAgICogT3RoZXJ3aXNlLCByZXR1cm5zIHVuZGVmaW5lZC5cbiAgICovXG4gIHB1YmxpYyBpZGVudGl0eUVudigpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5pZGVudGl0eSA/IHtcbiAgICAgIEFXU19BQ0NFU1NfS0VZX0lEOiB0aGlzLmlkZW50aXR5LmFjY2Vzc0tleUlkLFxuICAgICAgQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZOiB0aGlzLmlkZW50aXR5LnNlY3JldEFjY2Vzc0tleSxcbiAgICAgIEFXU19TRVNTSU9OX1RPS0VOOiB0aGlzLmlkZW50aXR5LnNlc3Npb25Ub2tlbiEsXG4gICAgfSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlIHRoZSBjdXJyZW50IGlkZW50aXR5IG9yIGlkZW50aXR5IHByb3ZpZGVyIHRvIGNyZWRlbnRpYWxzXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY3JlZGVudGlhbHMoKSB7XG4gICAgY29uc3QgeCA9IHRoaXMuY29uZmlnLmNyZWRlbnRpYWxzO1xuICAgIGlmIChpc0F3c0NyZWRlbnRpYWxJZGVudGl0eSh4KSkge1xuICAgICAgcmV0dXJuIHg7XG4gICAgfVxuICAgIHJldHVybiB4KCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGVsZXRlU3RhY2tzKC4uLnN0YWNrTmFtZXM6IHN0cmluZ1tdKSB7XG4gICAgaWYgKHN0YWNrTmFtZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gV2UgcHVycG9zZWx5IGRvIGFsbCBzdGFja3Mgc2VyaWFsbHksIGJlY2F1c2UgdGhleSd2ZSBiZWVuIG9yZGVyZWRcbiAgICAvLyB0byBkbyB0aGUgYm9vdHN0cmFwIHN0YWNrIGxhc3QuXG4gICAgZm9yIChjb25zdCBzdGFja05hbWUgb2Ygc3RhY2tOYW1lcykge1xuICAgICAgYXdhaXQgdGhpcy5jbG91ZEZvcm1hdGlvbi5zZW5kKFxuICAgICAgICBuZXcgVXBkYXRlVGVybWluYXRpb25Qcm90ZWN0aW9uQ29tbWFuZCh7XG4gICAgICAgICAgRW5hYmxlVGVybWluYXRpb25Qcm90ZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgICBTdGFja05hbWU6IHN0YWNrTmFtZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgICAgYXdhaXQgdGhpcy5jbG91ZEZvcm1hdGlvbi5zZW5kKFxuICAgICAgICBuZXcgRGVsZXRlU3RhY2tDb21tYW5kKHtcbiAgICAgICAgICBTdGFja05hbWU6IHN0YWNrTmFtZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuXG4gICAgICBhd2FpdCByZXRyeSh0aGlzLm91dHB1dCwgYERlbGV0aW5nICR7c3RhY2tOYW1lfWAsIHJldHJ5LmZvclNlY29uZHMoNjAwKSwgYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBzdGF0dXMgPSBhd2FpdCB0aGlzLnN0YWNrU3RhdHVzKHN0YWNrTmFtZSk7XG4gICAgICAgIGlmIChzdGF0dXMgIT09IHVuZGVmaW5lZCAmJiBzdGF0dXMuZW5kc1dpdGgoJ19GQUlMRUQnKSkge1xuICAgICAgICAgIHRocm93IHJldHJ5LmFib3J0KG5ldyBFcnJvcihgJyR7c3RhY2tOYW1lfScgaXMgaW4gc3RhdGUgJyR7c3RhdHVzfSdgKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXR1cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBEZWxldGUgb2YgJyR7c3RhY2tOYW1lfScgbm90IGNvbXBsZXRlIHlldCwgc3RhdHVzOiAnJHtzdGF0dXN9J2ApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc3RhY2tTdGF0dXMoc3RhY2tOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICBhd2FpdCB0aGlzLmNsb3VkRm9ybWF0aW9uLnNlbmQoXG4gICAgICAgICAgbmV3IERlc2NyaWJlU3RhY2tzQ29tbWFuZCh7XG4gICAgICAgICAgICBTdGFja05hbWU6IHN0YWNrTmFtZSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKVxuICAgICAgKS5TdGFja3M/LlswXS5TdGFja1N0YXR1cztcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGlmIChpc1N0YWNrTWlzc2luZ0Vycm9yKGUpKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBlbXB0eUJ1Y2tldChidWNrZXROYW1lOiBzdHJpbmcsIG9wdGlvbnM/OiB7IGJ5cGFzc0dvdmVybmFuY2U/OiBib29sZWFuIH0pIHtcbiAgICBjb25zdCBvYmplY3RzID0gYXdhaXQgdGhpcy5zMy5zZW5kKFxuICAgICAgbmV3IExpc3RPYmplY3RWZXJzaW9uc0NvbW1hbmQoe1xuICAgICAgICBCdWNrZXQ6IGJ1Y2tldE5hbWUsXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgY29uc3QgZGVsZXRlcyA9IFsuLi4ob2JqZWN0cy5WZXJzaW9ucyB8fCBbXSksIC4uLihvYmplY3RzLkRlbGV0ZU1hcmtlcnMgfHwgW10pXS5yZWR1Y2UoKGFjYywgb2JqKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIG9iai5WZXJzaW9uSWQgIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiBvYmouS2V5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBhY2MucHVzaCh7IEtleTogb2JqLktleSwgVmVyc2lvbklkOiBvYmouVmVyc2lvbklkIH0pO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2Ygb2JqLktleSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgYWNjLnB1c2goeyBLZXk6IG9iai5LZXkgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIFtdIGFzIE9iamVjdElkZW50aWZpZXJbXSk7XG5cbiAgICBpZiAoZGVsZXRlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zMy5zZW5kKFxuICAgICAgbmV3IERlbGV0ZU9iamVjdHNDb21tYW5kKHtcbiAgICAgICAgQnVja2V0OiBidWNrZXROYW1lLFxuICAgICAgICBEZWxldGU6IHtcbiAgICAgICAgICBPYmplY3RzOiBkZWxldGVzLFxuICAgICAgICAgIFF1aWV0OiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgICAgQnlwYXNzR292ZXJuYW5jZVJldGVudGlvbjogb3B0aW9ucz8uYnlwYXNzR292ZXJuYW5jZSA/IHRydWUgOiB1bmRlZmluZWQsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRlbGV0ZUltYWdlUmVwb3NpdG9yeShyZXBvc2l0b3J5TmFtZTogc3RyaW5nKSB7XG4gICAgYXdhaXQgdGhpcy5lY3Iuc2VuZChcbiAgICAgIG5ldyBEZWxldGVSZXBvc2l0b3J5Q29tbWFuZCh7XG4gICAgICAgIHJlcG9zaXRvcnlOYW1lOiByZXBvc2l0b3J5TmFtZSxcbiAgICAgICAgZm9yY2U6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGRlbGV0ZUJ1Y2tldChidWNrZXROYW1lOiBzdHJpbmcpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5lbXB0eUJ1Y2tldChidWNrZXROYW1lKTtcblxuICAgICAgYXdhaXQgdGhpcy5zMy5zZW5kKFxuICAgICAgICBuZXcgRGVsZXRlQnVja2V0Q29tbWFuZCh7XG4gICAgICAgICAgQnVja2V0OiBidWNrZXROYW1lLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBpZiAoaXNCdWNrZXRNaXNzaW5nRXJyb3IoZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU3RhY2tNaXNzaW5nRXJyb3IoZTogRXJyb3IpIHtcbiAgcmV0dXJuIGUubWVzc2FnZS5pbmRleE9mKCdkb2VzIG5vdCBleGlzdCcpID4gLTE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0J1Y2tldE1pc3NpbmdFcnJvcihlOiBFcnJvcikge1xuICByZXR1cm4gZS5tZXNzYWdlLmluZGV4T2YoJ2RvZXMgbm90IGV4aXN0JykgPiAtMTtcbn1cblxuLyoqXG4gKiBSZXRyeSBhbiBhc3luYyBvcGVyYXRpb24gdW50aWwgYSBkZWFkbGluZSBpcyBoaXQuXG4gKlxuICogVXNlIGByZXRyeS5mb3JTZWNvbmRzKClgIHRvIGNvbnN0cnVjdCBhIGRlYWRsaW5lIHJlbGF0aXZlIHRvIHJpZ2h0IG5vdy5cbiAqXG4gKiBFeGNlcHRpb25zIHdpbGwgY2F1c2UgdGhlIG9wZXJhdGlvbiB0byByZXRyeS4gVXNlIGByZXRyeS5hYm9ydGAgdG8gYW5ub3RhdGUgYW4gZXhjZXB0aW9uXG4gKiB0byBzdG9wIHRoZSByZXRyeSBhbmQgZW5kIGluIGEgZmFpbHVyZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJldHJ5PEE+KFxuICBvdXRwdXQ6IE5vZGVKUy5Xcml0YWJsZVN0cmVhbSxcbiAgb3BlcmF0aW9uOiBzdHJpbmcsXG4gIGRlYWRsaW5lOiBEYXRlLFxuICBibG9jazogKCkgPT4gUHJvbWlzZTxBPixcbik6IFByb21pc2U8QT4ge1xuICBsZXQgaSA9IDA7XG4gIG91dHB1dC53cml0ZShg8J+SiCAke29wZXJhdGlvbn1cXG5gKTtcbiAgd2hpbGUgKHRydWUpIHtcbiAgICB0cnkge1xuICAgICAgaSsrO1xuICAgICAgY29uc3QgcmV0ID0gYXdhaXQgYmxvY2soKTtcbiAgICAgIG91dHB1dC53cml0ZShg8J+SiCAke29wZXJhdGlvbn06IHN1Y2NlZWRlZCBhZnRlciAke2l9IGF0dGVtcHRzXFxuYCk7XG4gICAgICByZXR1cm4gcmV0O1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgaWYgKGUuYWJvcnQgfHwgRGF0ZS5ub3coKSA+IGRlYWRsaW5lLmdldFRpbWUoKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7b3BlcmF0aW9ufTogZGlkIG5vdCBzdWNjZWVkIGFmdGVyICR7aX0gYXR0ZW1wdHM6ICR7ZX1gKTtcbiAgICAgIH1cbiAgICAgIG91dHB1dC53cml0ZShg4o+zICR7b3BlcmF0aW9ufSAoJHtlLm1lc3NhZ2V9KVxcbmApO1xuICAgICAgYXdhaXQgc2xlZXAoNTAwMCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogTWFrZSBhIGRlYWRsaW5lIGZvciB0aGUgYHJldHJ5YCBmdW5jdGlvbiByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB0aW1lLlxuICovXG5yZXRyeS5mb3JTZWNvbmRzID0gKHNlY29uZHM6IG51bWJlcik6IERhdGUgPT4ge1xuICByZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSArIHNlY29uZHMgKiAxMDAwKTtcbn07XG5cbi8qKlxuICogQW5ub3RhdGUgYW4gZXJyb3IgdG8gc3RvcCB0aGUgcmV0cnlpbmdcbiAqL1xucmV0cnkuYWJvcnQgPSAoZTogRXJyb3IpOiBFcnJvciA9PiB7XG4gIChlIGFzIGFueSkuYWJvcnQgPSB0cnVlO1xuICByZXR1cm4gZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBvdXRwdXRGcm9tU3RhY2soa2V5OiBzdHJpbmcsIHN0YWNrOiBTdGFjayk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiAoc3RhY2suT3V0cHV0cyA/PyBbXSkuZmluZCgobykgPT4gby5PdXRwdXRLZXkgPT09IGtleSk/Lk91dHB1dFZhbHVlO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2xlZXAobXM6IG51bWJlcikge1xuICByZXR1cm4gbmV3IFByb21pc2UoKG9rKSA9PiBzZXRUaW1lb3V0KG9rLCBtcykpO1xufVxuXG5mdW5jdGlvbiBjaGFpbmFibGVDcmVkZW50aWFscyhyZWdpb246IHN0cmluZyk6IEF3c0NyZWRlbnRpYWxJZGVudGl0eVByb3ZpZGVyIHtcbiAgaWYgKChwcm9jZXNzLmVudi5DT0RFQlVJTERfQlVJTERfQVJOIHx8IHByb2Nlc3MuZW52LkdJVEhVQl9SVU5fSUQpICYmIHByb2Nlc3MuZW52LkFXU19QUk9GSUxFKSB7XG4gICAgLy8gaW4gY29kZWJ1aWxkIHdlIG11c3QgYXNzdW1lIHRoZSByb2xlIHRoYXQgdGhlIGNkayB1c2VzXG4gICAgLy8gb3RoZXJ3aXNlIGNyZWRlbnRpYWxzIHdpbGwganVzdCBiZSBwaWNrZWQgdXAgYnkgdGhlIG5vcm1hbCBzZGtcbiAgICAvLyBoZXVyaXN0aWNzIGFuZCBleHBpcmUgYWZ0ZXIgYW4gaG91ci5cbiAgICByZXR1cm4gZnJvbUluaSh7XG4gICAgICBjbGllbnRDb25maWc6IHsgcmVnaW9uIH0sXG4gICAgfSk7XG4gIH1cblxuICAvLyBPdGhlcndpc2UganVzdCBnZXQgd2hhdCdzIGRlZmF1bHRcbiAgcmV0dXJuIGZyb21Ob2RlUHJvdmlkZXJDaGFpbih7IGNsaWVudENvbmZpZzogeyByZWdpb24gfSB9KTtcbn1cblxuZnVuY3Rpb24gaXNBd3NDcmVkZW50aWFsSWRlbnRpdHkoeDogYW55KTogeCBpcyBBd3NDcmVkZW50aWFsSWRlbnRpdHkge1xuICByZXR1cm4gQm9vbGVhbih4ICYmIHR5cGVvZiB4ID09PSAnb2JqZWN0JyAmJiB4LmFjY2Vzc0tleUlkKTtcbn1cbiJdfQ==
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQStOQSxrREFFQztBQUVELG9EQUVDO0FBVUQsc0JBc0JDO0FBaUJELDBDQUVDO0FBRUQsc0JBRUM7QUE1UkQsMEVBTXdDO0FBQ3hDLG9EQUF5RTtBQUN6RSxrRUFBNkQ7QUFDN0Qsb0RBQWdEO0FBQ2hELG9EQUFnRDtBQUNoRCwwREFBc0Q7QUFDdEQsa0RBTTRCO0FBQzVCLG9EQUFnRDtBQUNoRCxvREFBZ0Q7QUFDaEQsb0RBQTBFO0FBQzFFLHdFQUErRTtBQUUvRSxtREFBNkQ7QUFPN0QsTUFBYSxVQUFVO0lBQ2QsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBYyxFQUFFLFFBQStCLEVBQUUsTUFBNkI7UUFDNUcsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFjLEVBQUUsTUFBNkI7UUFDekUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQWVELFlBQ2tCLE1BQWMsRUFDYixNQUE2QixFQUM5QixRQUFnQzs7UUFGaEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNiLFdBQU0sR0FBTixNQUFNLENBQXVCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQXdCO1FBQ2hELElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixXQUFXLEVBQUUsTUFBQSxJQUFJLENBQUMsUUFBUSxtQ0FBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQy9ELE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixhQUFhLEVBQUUsSUFBSSxvQ0FBdUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFlLEVBQUUsRUFBRSxDQUFDLE9BQU8sSUFBSSxHQUFH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QUssUUFBUSxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUM5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2xvdWRGb3JtYXRpb25DbGllbnQsXG4gIERlbGV0ZVN0YWNrQ29tbWFuZCxcbiAgRGVzY3JpYmVTdGFja3NDb21tYW5kLFxuICBVcGRhdGVUZXJtaW5hdGlvblByb3RlY3Rpb25Db21tYW5kLFxuICB0eXBlIFN0YWNrLFxufSBmcm9tICdAYXdzLXNkay9jbGllbnQtY2xvdWRmb3JtYXRpb24nO1xuaW1wb3J0IHsgRGVsZXRlUmVwb3NpdG9yeUNvbW1hbmQsIEVDUkNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1lY3InO1xuaW1wb3J0IHsgRUNSUFVCTElDQ2xpZW50IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWVjci1wdWJsaWMnO1xuaW1wb3J0IHsgRUNTQ2xpZW50IH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWVjcyc7XG5pbXBvcnQgeyBJQU1DbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtaWFtJztcbmltcG9ydCB7IExhbWJkYUNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1sYW1iZGEnO1xuaW1wb3J0IHtcbiAgUzNDbGllbnQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kLFxuICBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kLFxuICB0eXBlIE9iamVjdElkZW50aWZpZXIsXG4gIERlbGV0ZUJ1Y2tldENvbW1hbmQsXG59IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zMyc7XG5pbXBvcnQgeyBTTlNDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc25zJztcbmltcG9ydCB7IFNTT0NsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zc28nO1xuaW1wb3J0IHsgU1RTQ2xpZW50LCBHZXRDYWxsZXJJZGVudGl0eUNvbW1hbmQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc3RzJztcbmltcG9ydCB7IGZyb21JbmksIGZyb21Ob2RlUHJvdmlkZXJDaGFpbiB9IGZyb20gJ0Bhd3Mtc2RrL2NyZWRlbnRpYWwtcHJvdmlkZXJzJztcbmltcG9ydCB0eXBlIHsgQXdzQ3JlZGVudGlhbElkZW50aXR5LCBBd3NDcmVkZW50aWFsSWRlbnRpdHlQcm92aWRlciB9IGZyb20gJ0BzbWl0aHkvdHlwZXMnO1xuaW1wb3J0IHsgQ29uZmlndXJlZFJldHJ5U3RyYXRlZ3kgfSBmcm9tICdAc21pdGh5L3V0aWwtcmV0cnknO1xuaW50ZXJmYWNlIENsaWVudENvbmZpZyB7XG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzOiBBd3NDcmVkZW50aWFsSWRlbnRpdHlQcm92aWRlciB8IEF3c0NyZWRlbnRpYWxJZGVudGl0eTtcbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJldHJ5U3RyYXRlZ3k6IENvbmZpZ3VyZWRSZXRyeVN0cmF0ZWd5O1xufVxuXG5leHBvcnQgY2xhc3MgQXdzQ2xpZW50cyB7XG4gIHB1YmxpYyBzdGF0aWMgYXN5bmMgZm9ySWRlbnRpdHkocmVnaW9uOiBzdHJpbmcsIGlkZW50aXR5OiBBd3NDcmVkZW50aWFsSWRlbnRpdHksIG91dHB1dDogTm9kZUpTLldyaXRhYmxlU3RyZWFtKSB7XG4gICAgcmV0dXJuIG5ldyBBd3NDbGllbnRzKHJlZ2lvbiwgb3V0cHV0LCBpZGVudGl0eSk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGFzeW5jIGZvclJlZ2lvbihyZWdpb246IHN0cmluZywgb3V0cHV0OiBOb2RlSlMuV3JpdGFibGVTdHJlYW0pIHtcbiAgICByZXR1cm4gbmV3IEF3c0NsaWVudHMocmVnaW9uLCBvdXRwdXQpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENsaWVudENvbmZpZztcblxuICBwdWJsaWMgcmVhZG9ubHkgY2xvdWRGb3JtYXRpb246IENsb3VkRm9ybWF0aW9uQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgczM6IFMzQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgZWNyOiBFQ1JDbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBlY3JQdWJsaWM6IEVDUlBVQkxJQ0NsaWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGVjczogRUNTQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgc3NvOiBTU09DbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBzbnM6IFNOU0NsaWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGlhbTogSUFNQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgbGFtYmRhOiBMYW1iZGFDbGllbnQ7XG4gIHB1YmxpYyByZWFkb25seSBzdHM6IFNUU0NsaWVudDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBvdXRwdXQ6IE5vZGVKUy5Xcml0YWJsZVN0cmVhbSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaWRlbnRpdHk/OiBBd3NDcmVkZW50aWFsSWRlbnRpdHkpIHtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIGNyZWRlbnRpYWxzOiB0aGlzLmlkZW50aXR5ID8/IGNoYWluYWJsZUNyZWRlbnRpYWxzKHRoaXMucmVnaW9uKSxcbiAgICAgIHJlZ2lvbjogdGhpcy5yZWdpb24sXG4gICAgICByZXRyeVN0cmF0ZWd5OiBuZXcgQ29uZmlndXJlZFJldHJ5U3RyYXRlZ3koOSwgKGF0dGVtcHQ6IG51bWJlcikgPT4gYXR0ZW1wdCAqKiA1MDApLFxuICAgIH07XG4gICAgdGhpcy5jbG91ZEZvcm1hdGlvbiA9IG5ldyBDbG91ZEZvcm1hdGlvbkNsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5zMyA9IG5ldyBTM0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5lY3IgPSBuZXcgRUNSQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLmVjclB1YmxpYyA9IG5ldyBFQ1JQVUJMSUNDbGllbnQoeyAuLi50aGlzLmNvbmZpZywgcmVnaW9uOiAndXMtZWFzdC0xJyAvKiBwdWJsaWMgZ2FsbGVyeSBpcyBvbmx5IGF2YWlsYWJsZSBpbiB1cy1lYXN0LTEgKi8gfSk7XG4gICAgdGhpcy5lY3MgPSBuZXcgRUNTQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLnNzbyA9IG5ldyBTU09DbGllbnQodGhpcy5jb25maWcpO1xuICAgIHRoaXMuc25zID0gbmV3IFNOU0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gICAgdGhpcy5pYW0gPSBuZXcgSUFNQ2xpZW50KHRoaXMuY29uZmlnKTtcbiAgICB0aGlzLmxhbWJkYSA9IG5ldyBMYW1iZGFDbGllbnQodGhpcy5jb25maWcpO1xuICAgIHRoaXMuc3RzID0gbmV3IFNUU0NsaWVudCh0aGlzLmNvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgYWNjb3VudCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIC8vIFJlZHVjZSAjIG9mIHJldHJpZXMsIHdlIHVzZSB0aGlzIGFzIGEgY2lyY3VpdCBicmVha2VyIGZvciBkZXRlY3Rpbmcgbm8tY29uZmlnXG4gICAgY29uc3Qgc3RzQ2xpZW50ID0gbmV3IFNUU0NsaWVudCh7XG4gICAgICBjcmVkZW50aWFsczogdGhpcy5jb25maWcuY3JlZGVudGlhbHMsXG4gICAgICByZWdpb246IHRoaXMuY29uZmlnLnJlZ2lvbixcbiAgICAgIG1heEF0dGVtcHRzOiAyLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIChhd2FpdCBzdHNDbGllbnQuc2VuZChuZXcgR2V0Q2FsbGVySWRlbnRpdHlDb21tYW5kKHt9KSkpLkFjY291bnQhO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRoZSBjbGllbnRzIGFscmVhZHkgaGFzIGFuIGVzdGFibGlzaGVkIGlkZW50aXR5ICh2aWEgYXRtb3NwaGVyZSBmb3IgZXhhbXBsZSksXG4gICAqIHJldHVybiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBtYXAgYWN0aXZhdGluZyBpdC5cbiAgICpcbiAgICogT3RoZXJ3aXNlLCByZXR1cm5zIHVuZGVmaW5lZC5cbiAgICovXG4gIHB1YmxpYyBpZGVudGl0eUVudigpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5pZGVudGl0eSA/IHtcbiAgICAgIEFXU19BQ0NFU1NfS0VZX0lEOiB0aGlzLmlkZW50aXR5LmFjY2Vzc0tleUlkLFxuICAgICAgQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZOiB0aGlzLmlkZW50aXR5LnNlY3JldEFjY2Vzc0tleSxcbiAgICAgIEFXU19TRVNTSU9OX1RPS0VOOiB0aGlzLmlkZW50aXR5LnNlc3Npb25Ub2tlbiEsXG5cbiAgICAgIC8vIHVuc2V0IGFueSBwcmV2aW91c2x5IHVzZWQgcHJvZmlsZSBiZWNhdXNlIHRoZSBTREsgd2lsbCBwcmVmZXJcbiAgICAgIC8vIHRoaXMgb3ZlciBzdGF0aWMgZW52IGNyZWRlbnRpYWxzLiB0aGlzIGlzIHJlbGV2YW50IGZvciB0ZXN0cyBydW5uaW5nIG9uIENvZGVCdWlsZFxuICAgICAgLy8gYmVjYXVzZSB3ZSB1c2UgYSBwcm9maWxlIGFzIG91ciBtYWluIGNyZWRlbnRpYWxzIHNvdXJjZS5cbiAgICAgIEFXU19QUk9GSUxFOiAnJyxcbiAgICB9IDogdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmUgdGhlIGN1cnJlbnQgaWRlbnRpdHkgb3IgaWRlbnRpdHkgcHJvdmlkZXIgdG8gY3JlZGVudGlhbHNcbiAgICovXG4gIHB1YmxpYyBhc3luYyBjcmVkZW50aWFscygpIHtcbiAgICBjb25zdCB4ID0gdGhpcy5jb25maWcuY3JlZGVudGlhbHM7XG4gICAgaWYgKGlzQXdzQ3JlZGVudGlhbElkZW50aXR5KHgpKSB7XG4gICAgICByZXR1cm4geDtcbiAgICB9XG4gICAgcmV0dXJuIHgoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkZWxldGVTdGFja3MoLi4uc3RhY2tOYW1lczogc3RyaW5nW10pIHtcbiAgICBpZiAoc3RhY2tOYW1lcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBXZSBwdXJwb3NlbHkgZG8gYWxsIHN0YWNrcyBzZXJpYWxseSwgYmVjYXVzZSB0aGV5J3ZlIGJlZW4gb3JkZXJlZFxuICAgIC8vIHRvIGRvIHRoZSBib290c3RyYXAgc3RhY2sgbGFzdC5cbiAgICBmb3IgKGNvbnN0IHN0YWNrTmFtZSBvZiBzdGFja05hbWVzKSB7XG4gICAgICBhd2FpdCB0aGlzLmNsb3VkRm9ybWF0aW9uLnNlbmQoXG4gICAgICAgIG5ldyBVcGRhdGVUZXJtaW5hdGlvblByb3RlY3Rpb25Db21tYW5kKHtcbiAgICAgICAgICBFbmFibGVUZXJtaW5hdGlvblByb3RlY3Rpb246IGZhbHNlLFxuICAgICAgICAgIFN0YWNrTmFtZTogc3RhY2tOYW1lLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgICBhd2FpdCB0aGlzLmNsb3VkRm9ybWF0aW9uLnNlbmQoXG4gICAgICAgIG5ldyBEZWxldGVTdGFja0NvbW1hbmQoe1xuICAgICAgICAgIFN0YWNrTmFtZTogc3RhY2tOYW1lLFxuICAgICAgICB9KSxcbiAgICAgICk7XG5cbiAgICAgIGF3YWl0IHJldHJ5KHRoaXMub3V0cHV0LCBgRGVsZXRpbmcgJHtzdGFja05hbWV9YCwgcmV0cnkuZm9yU2Vjb25kcyg2MDApLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHN0YXR1cyA9IGF3YWl0IHRoaXMuc3RhY2tTdGF0dXMoc3RhY2tOYW1lKTtcbiAgICAgICAgaWYgKHN0YXR1cyAhPT0gdW5kZWZpbmVkICYmIHN0YXR1cy5lbmRzV2l0aCgnX0ZBSUxFRCcpKSB7XG4gICAgICAgICAgdGhyb3cgcmV0cnkuYWJvcnQobmV3IEVycm9yKGAnJHtzdGFja05hbWV9JyBpcyBpbiBzdGF0ZSAnJHtzdGF0dXN9J2ApKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdHVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYERlbGV0ZSBvZiAnJHtzdGFja05hbWV9JyBub3QgY29tcGxldGUgeWV0LCBzdGF0dXM6ICcke3N0YXR1c30nYCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzdGFja1N0YXR1cyhzdGFja05hbWU6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGF3YWl0IHRoaXMuY2xvdWRGb3JtYXRpb24uc2VuZChcbiAgICAgICAgICBuZXcgRGVzY3JpYmVTdGFja3NDb21tYW5kKHtcbiAgICAgICAgICAgIFN0YWNrTmFtZTogc3RhY2tOYW1lLFxuICAgICAgICAgIH0pLFxuICAgICAgICApXG4gICAgICApLlN0YWNrcz8uWzBdLlN0YWNrU3RhdHVzO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgaWYgKGlzU3RhY2tNaXNzaW5nRXJyb3IoZSkpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGVtcHR5QnVja2V0KGJ1Y2tldE5hbWU6IHN0cmluZywgb3B0aW9ucz86IHsgYnlwYXNzR292ZXJuYW5jZT86IGJvb2xlYW4gfSkge1xuICAgIGNvbnN0IG9iamVjdHMgPSBhd2FpdCB0aGlzLnMzLnNlbmQoXG4gICAgICBuZXcgTGlzdE9iamVjdFZlcnNpb25zQ29tbWFuZCh7XG4gICAgICAgIEJ1Y2tldDogYnVja2V0TmFtZSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBjb25zdCBkZWxldGVzID0gWy4uLihvYmplY3RzLlZlcnNpb25zIHx8IFtdKSwgLi4uKG9iamVjdHMuRGVsZXRlTWFya2VycyB8fCBbXSldLnJlZHVjZSgoYWNjLCBvYmopID0+IHtcbiAgICAgIGlmICh0eXBlb2Ygb2JqLlZlcnNpb25JZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIG9iai5LZXkgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGFjYy5wdXNoKHsgS2V5OiBvYmouS2V5LCBWZXJzaW9uSWQ6IG9iai5WZXJzaW9uSWQgfSk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBvYmouS2V5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBhY2MucHVzaCh7IEtleTogb2JqLktleSB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwgW10gYXMgT2JqZWN0SWRlbnRpZmllcltdKTtcblxuICAgIGlmIChkZWxldGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnMzLnNlbmQoXG4gICAgICBuZXcgRGVsZXRlT2JqZWN0c0NvbW1hbmQoe1xuICAgICAgICBCdWNrZXQ6IGJ1Y2tldE5hbWUsXG4gICAgICAgIERlbGV0ZToge1xuICAgICAgICAgIE9iamVjdHM6IGRlbGV0ZXMsXG4gICAgICAgICAgUXVpZXQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBCeXBhc3NHb3Zlcm5hbmNlUmV0ZW50aW9uOiBvcHRpb25zPy5ieXBhc3NHb3Zlcm5hbmNlID8gdHJ1ZSA6IHVuZGVmaW5lZCxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGVsZXRlSW1hZ2VSZXBvc2l0b3J5KHJlcG9zaXRvcnlOYW1lOiBzdHJpbmcpIHtcbiAgICBhd2FpdCB0aGlzLmVjci5zZW5kKFxuICAgICAgbmV3IERlbGV0ZVJlcG9zaXRvcnlDb21tYW5kKHtcbiAgICAgICAgcmVwb3NpdG9yeU5hbWU6IHJlcG9zaXRvcnlOYW1lLFxuICAgICAgICBmb3JjZTogdHJ1ZSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGVsZXRlQnVja2V0KGJ1Y2tldE5hbWU6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLmVtcHR5QnVja2V0KGJ1Y2tldE5hbWUpO1xuXG4gICAgICBhd2FpdCB0aGlzLnMzLnNlbmQoXG4gICAgICAgIG5ldyBEZWxldGVCdWNrZXRDb21tYW5kKHtcbiAgICAgICAgICBCdWNrZXQ6IGJ1Y2tldE5hbWUsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGlmIChpc0J1Y2tldE1pc3NpbmdFcnJvcihlKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTdGFja01pc3NpbmdFcnJvcihlOiBFcnJvcikge1xuICByZXR1cm4gZS5tZXNzYWdlLmluZGV4T2YoJ2RvZXMgbm90IGV4aXN0JykgPiAtMTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQnVja2V0TWlzc2luZ0Vycm9yKGU6IEVycm9yKSB7XG4gIHJldHVybiBlLm1lc3NhZ2UuaW5kZXhPZignZG9lcyBub3QgZXhpc3QnKSA+IC0xO1xufVxuXG4vKipcbiAqIFJldHJ5IGFuIGFzeW5jIG9wZXJhdGlvbiB1bnRpbCBhIGRlYWRsaW5lIGlzIGhpdC5cbiAqXG4gKiBVc2UgYHJldHJ5LmZvclNlY29uZHMoKWAgdG8gY29uc3RydWN0IGEgZGVhZGxpbmUgcmVsYXRpdmUgdG8gcmlnaHQgbm93LlxuICpcbiAqIEV4Y2VwdGlvbnMgd2lsbCBjYXVzZSB0aGUgb3BlcmF0aW9uIHRvIHJldHJ5LiBVc2UgYHJldHJ5LmFib3J0YCB0byBhbm5vdGF0ZSBhbiBleGNlcHRpb25cbiAqIHRvIHN0b3AgdGhlIHJldHJ5IGFuZCBlbmQgaW4gYSBmYWlsdXJlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmV0cnk8QT4oXG4gIG91dHB1dDogTm9kZUpTLldyaXRhYmxlU3RyZWFtLFxuICBvcGVyYXRpb246IHN0cmluZyxcbiAgZGVhZGxpbmU6IERhdGUsXG4gIGJsb2NrOiAoKSA9PiBQcm9taXNlPEE+LFxuKTogUHJvbWlzZTxBPiB7XG4gIGxldCBpID0gMDtcbiAgb3V0cHV0LndyaXRlKGDwn5KIICR7b3BlcmF0aW9ufVxcbmApO1xuICB3aGlsZSAodHJ1ZSkge1xuICAgIHRyeSB7XG4gICAgICBpKys7XG4gICAgICBjb25zdCByZXQgPSBhd2FpdCBibG9jaygpO1xuICAgICAgb3V0cHV0LndyaXRlKGDwn5KIICR7b3BlcmF0aW9ufTogc3VjY2VlZGVkIGFmdGVyICR7aX0gYXR0ZW1wdHNcXG5gKTtcbiAgICAgIHJldHVybiByZXQ7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBpZiAoZS5hYm9ydCB8fCBEYXRlLm5vdygpID4gZGVhZGxpbmUuZ2V0VGltZSgpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtvcGVyYXRpb259OiBkaWQgbm90IHN1Y2NlZWQgYWZ0ZXIgJHtpfSBhdHRlbXB0czogJHtlfWApO1xuICAgICAgfVxuICAgICAgb3V0cHV0LndyaXRlKGDij7MgJHtvcGVyYXRpb259ICgke2UubWVzc2FnZX0pXFxuYCk7XG4gICAgICBhd2FpdCBzbGVlcCg1MDAwKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBNYWtlIGEgZGVhZGxpbmUgZm9yIHRoZSBgcmV0cnlgIGZ1bmN0aW9uIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHRpbWUuXG4gKi9cbnJldHJ5LmZvclNlY29uZHMgPSAoc2Vjb25kczogbnVtYmVyKTogRGF0ZSA9PiB7XG4gIHJldHVybiBuZXcgRGF0ZShEYXRlLm5vdygpICsgc2Vjb25kcyAqIDEwMDApO1xufTtcblxuLyoqXG4gKiBBbm5vdGF0ZSBhbiBlcnJvciB0byBzdG9wIHRoZSByZXRyeWluZ1xuICovXG5yZXRyeS5hYm9ydCA9IChlOiBFcnJvcik6IEVycm9yID0+IHtcbiAgKGUgYXMgYW55KS5hYm9ydCA9IHRydWU7XG4gIHJldHVybiBlO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIG91dHB1dEZyb21TdGFjayhrZXk6IHN0cmluZywgc3RhY2s6IFN0YWNrKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIChzdGFjay5PdXRwdXRzID8/IFtdKS5maW5kKChvKSA9PiBvLk91dHB1dEtleSA9PT0ga2V5KT8uT3V0cHV0VmFsdWU7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzbGVlcChtczogbnVtYmVyKSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgob2spID0+IHNldFRpbWVvdXQob2ssIG1zKSk7XG59XG5cbmZ1bmN0aW9uIGNoYWluYWJsZUNyZWRlbnRpYWxzKHJlZ2lvbjogc3RyaW5nKTogQXdzQ3JlZGVudGlhbElkZW50aXR5UHJvdmlkZXIge1xuICBpZiAoKHByb2Nlc3MuZW52LkNPREVCVUlMRF9CVUlMRF9BUk4gfHwgcHJvY2Vzcy5lbnYuR0lUSFVCX1JVTl9JRCkgJiYgcHJvY2Vzcy5lbnYuQVdTX1BST0ZJTEUpIHtcbiAgICAvLyBpbiBjb2RlYnVpbGQgd2UgbXVzdCBhc3N1bWUgdGhlIHJvbGUgdGhhdCB0aGUgY2RrIHVzZXNcbiAgICAvLyBvdGhlcndpc2UgY3JlZGVudGlhbHMgd2lsbCBqdXN0IGJlIHBpY2tlZCB1cCBieSB0aGUgbm9ybWFsIHNka1xuICAgIC8vIGhldXJpc3RpY3MgYW5kIGV4cGlyZSBhZnRlciBhbiBob3VyLlxuICAgIHJldHVybiBmcm9tSW5pKHtcbiAgICAgIGNsaWVudENvbmZpZzogeyByZWdpb24gfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSBqdXN0IGdldCB3aGF0J3MgZGVmYXVsdFxuICByZXR1cm4gZnJvbU5vZGVQcm92aWRlckNoYWluKHsgY2xpZW50Q29uZmlnOiB7IHJlZ2lvbiB9IH0pO1xufVxuXG5mdW5jdGlvbiBpc0F3c0NyZWRlbnRpYWxJZGVudGl0eSh4OiBhbnkpOiB4IGlzIEF3c0NyZWRlbnRpYWxJZGVudGl0eSB7XG4gIHJldHVybiBCb29sZWFuKHggJiYgdHlwZW9mIHggPT09ICdvYmplY3QnICYmIHguYWNjZXNzS2V5SWQpO1xufVxuIl19
|
package/lib/aws.ts
CHANGED
|
@@ -94,6 +94,11 @@ export class AwsClients {
|
|
|
94
94
|
AWS_ACCESS_KEY_ID: this.identity.accessKeyId,
|
|
95
95
|
AWS_SECRET_ACCESS_KEY: this.identity.secretAccessKey,
|
|
96
96
|
AWS_SESSION_TOKEN: this.identity.sessionToken!,
|
|
97
|
+
|
|
98
|
+
// unset any previously used profile because the SDK will prefer
|
|
99
|
+
// this over static env credentials. this is relevant for tests running on CodeBuild
|
|
100
|
+
// because we use a profile as our main credentials source.
|
|
101
|
+
AWS_PROFILE: '',
|
|
97
102
|
} : undefined;
|
|
98
103
|
}
|
|
99
104
|
|
package/package.json
CHANGED