@fjall/components-infrastructure 0.30.0 → 0.32.0
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.
|
@@ -8,7 +8,9 @@ interface OrganisationProps extends StackProps {
|
|
|
8
8
|
orgEmail: string;
|
|
9
9
|
existingAccounts?: ExistingAccounts[];
|
|
10
10
|
}
|
|
11
|
-
type AccountsConfig =
|
|
11
|
+
type AccountsConfig = {
|
|
12
|
+
readonly [key: string]: readonly string[] | string;
|
|
13
|
+
};
|
|
12
14
|
/**
|
|
13
15
|
* A construct for creating multi environment organisations with a production, staging and development account.
|
|
14
16
|
*/
|
|
@@ -4,7 +4,7 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
|
4
4
|
const constructs_1 = require("constructs");
|
|
5
5
|
const aws_cdk_lib_2 = require("aws-cdk-lib");
|
|
6
6
|
const stripAndCamelCase_1 = require("../../utils/stripAndCamelCase");
|
|
7
|
-
const
|
|
7
|
+
const cdk_organizations_1 = require("@pepperize/cdk-organizations");
|
|
8
8
|
const addSuffixToEmail_1 = require("../../utils/addSuffixToEmail");
|
|
9
9
|
/**
|
|
10
10
|
* A construct for creating multi environment organisations with a production, staging and development account.
|
|
@@ -19,16 +19,16 @@ class Organisation extends constructs_1.Construct {
|
|
|
19
19
|
this.addOrganisationUnitsAndAccounts(props.accounts, props.orgEmail);
|
|
20
20
|
}
|
|
21
21
|
addOrganisation(organisationName) {
|
|
22
|
-
this.organisation = new
|
|
23
|
-
featureSet:
|
|
22
|
+
this.organisation = new cdk_organizations_1.Organization(this, organisationName, {
|
|
23
|
+
featureSet: cdk_organizations_1.FeatureSet.ALL
|
|
24
24
|
});
|
|
25
25
|
// TODO: Validate this enables trusted access
|
|
26
26
|
this.organisation.enableAwsServiceAccess("account.amazonaws.com");
|
|
27
27
|
const enforcedPolicyTypes = [
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
28
|
+
cdk_organizations_1.PolicyType.SERVICE_CONTROL_POLICY,
|
|
29
|
+
cdk_organizations_1.PolicyType.TAG_POLICY,
|
|
30
|
+
cdk_organizations_1.PolicyType.BACKUP_POLICY,
|
|
31
|
+
cdk_organizations_1.PolicyType.AISERVICES_OPT_OUT_POLICY
|
|
32
32
|
];
|
|
33
33
|
for (const policyType of enforcedPolicyTypes) {
|
|
34
34
|
this.organisation.enablePolicyType(policyType);
|
|
@@ -38,17 +38,13 @@ class Organisation extends constructs_1.Construct {
|
|
|
38
38
|
for (const [environmentType, accountList] of Object.entries(accounts)) {
|
|
39
39
|
// Create OU for each environment type
|
|
40
40
|
const ouName = environmentType.charAt(0).toUpperCase() + environmentType.slice(1);
|
|
41
|
-
const orgUnit = this.addOrganisationalUnit(`${ouName}
|
|
41
|
+
const orgUnit = this.addOrganisationalUnit(`${ouName}OrganizationalUnit`, ouName);
|
|
42
42
|
// Convert single account to array for uniform processing
|
|
43
43
|
const accountsArray = Array.isArray(accountList)
|
|
44
|
-
?
|
|
44
|
+
? accountList
|
|
45
45
|
: [accountList];
|
|
46
46
|
// Add accounts to this OU
|
|
47
47
|
for (const accountName of accountsArray) {
|
|
48
|
-
// Ensure accountName is a string (it should be after array conversion)
|
|
49
|
-
if (typeof accountName !== "string") {
|
|
50
|
-
continue; // Skip if somehow it's not a string
|
|
51
|
-
}
|
|
52
48
|
const accountNameId = (0, stripAndCamelCase_1.stripAndCamelCase)(accountName);
|
|
53
49
|
const importedAccount = this.existingAccounts?.find((account) => account.Name === accountName);
|
|
54
50
|
const accountEmail = importedAccount
|
|
@@ -61,8 +57,8 @@ class Organisation extends constructs_1.Construct {
|
|
|
61
57
|
}
|
|
62
58
|
}
|
|
63
59
|
addOrganisationalUnit(id, name) {
|
|
64
|
-
const ou = new
|
|
65
|
-
|
|
60
|
+
const ou = new cdk_organizations_1.OrganizationalUnit(this, id, {
|
|
61
|
+
organizationalUnitName: name,
|
|
66
62
|
parent: this.organisation.root,
|
|
67
63
|
importOnDuplicate: true
|
|
68
64
|
});
|
|
@@ -70,7 +66,7 @@ class Organisation extends constructs_1.Construct {
|
|
|
70
66
|
return ou;
|
|
71
67
|
}
|
|
72
68
|
addAccount(id, name, email, tags, organisationalUnit) {
|
|
73
|
-
const acc = new
|
|
69
|
+
const acc = new cdk_organizations_1.Account(this, id, {
|
|
74
70
|
accountName: name,
|
|
75
71
|
email: email,
|
|
76
72
|
parent: organisationalUnit,
|
|
@@ -97,4 +93,4 @@ class Organisation extends constructs_1.Construct {
|
|
|
97
93
|
}
|
|
98
94
|
}
|
|
99
95
|
exports.default = Organisation;
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2NvbmZpZy9hd3Mvb3JnYW5pc2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkNBQW9EO0FBQ3BELDJDQUF1QztBQUN2Qyw2Q0FBbUM7QUFDbkMscUVBQWtFO0FBRWxFLHFFQU0yQztBQUMzQyxtRUFBNEQ7QUFZNUQ7O0dBRUc7QUFFSCxNQUFxQixZQUFhLFNBQVEsc0JBQVM7SUFRakQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF3QjtRQUNoRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBTFgsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUV4Qix3QkFBbUIsR0FBeUIsRUFBRSxDQUFDO1FBS3JELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsK0JBQStCLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLGVBQWUsQ0FBQyxnQkFBd0I7UUFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLDRCQUFpQixDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUNoRSxVQUFVLEVBQUUsMEJBQVUsQ0FBQyxHQUFHO1NBQzNCLENBQUMsQ0FBQztRQUVILDZDQUE2QztRQUM3QyxJQUFJLENBQUMsWUFBWSxDQUFDLHNCQUFzQixDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFFbEUsTUFBTSxtQkFBbUIsR0FBaUI7WUFDeEMsMEJBQVUsQ0FBQyxzQkFBc0I7WUFDakMsMEJBQVUsQ0FBQyxVQUFVO1lBQ3JCLDBCQUFVLENBQUMsYUFBYTtZQUN4QiwwQkFBVSxDQUFDLHlCQUF5QjtTQUNyQyxDQUFD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LEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQztRQUVwQyxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUU7WUFDN0IsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJO1lBQ2QsS0FBSyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1lBQ3BCLFVBQVUsRUFBRSxHQUFHLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7UUFDSCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDOUIsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLEdBQUcsQ0FBQyxVQUFVO1lBQ3JCLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSztTQUN2QixDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFuSUQsK0JBbUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBTdGFja1Byb3BzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgVGFncyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgc3RyaXBBbmRDYW1lbENhc2UgfSBmcm9tIFwiLi4vLi4vdXRpbHMvc3RyaXBBbmRDYW1lbENhc2VcIjtcbmltcG9ydCB7IEFjY291bnQgYXMgRXhpc3RpbmdBY2NvdW50cyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtb3JnYW5pemF0aW9uc1wiO1xuaW1wb3J0IHtcbiAgQWNjb3VudCxcbiAgRmVhdHVyZVNldCxcbiAgT3JnYW5pc2F0aW9uIGFzIEZqYWxsT3JnYW5pc2F0aW9uLFxuICBPcmdhbmlzYXRpb25hbFVuaXQsXG4gIFBvbGljeVR5cGVcbn0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3Mvb3JnYW5pc2F0aW9uc1wiO1xuaW1wb3J0IGFkZFN1ZmZpeFRvRW1haWwgZnJvbSBcIi4uLy4uL3V0aWxzL2FkZFN1ZmZpeFRvRW1haWxcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmludGVyZmFjZSBPcmdhbmlzYXRpb25Qcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBvcmdhbmlzYXRpb25OYW1lOiBzdHJpbmc7XG4gIGFjY291bnRzOiBBY2NvdW50c0NvbmZpZztcbiAgb3JnRW1haWw6IHN0cmluZztcbiAgZXhpc3RpbmdBY2NvdW50cz86IEV4aXN0aW5nQWNjb3VudHNbXTtcbn1cblxudHlwZSBBY2NvdW50c0NvbmZpZyA9IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdIHwgcmVhZG9ubHkgc3RyaW5nW10+O1xuXG4vKipcbiAqIEEgY29uc3RydWN0IGZvciBjcmVhdGluZyBtdWx0aSBlbnZpcm9ubWVudCBvcmdhbmlzYXRpb25zIHdpdGggYSBwcm9kdWN0aW9uLCBzdGFnaW5nIGFuZCBkZXZlbG9wbWVudCBhY2NvdW50LlxuICovXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9yZ2FuaXNhdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBhY2NvdW50SWQ6IENmbk91dHB1dDtcblxuICBwcml2YXRlIGV4aXN0aW5nQWNjb3VudHM/OiBFeGlzdGluZ0FjY291bnRzW107XG4gIHByaXZhdGUgYWNjb3VudHM6IEtleVZhbHVlID0ge307XG4gIHByaXZhdGUgb3JnYW5pc2F0aW9uOiBGamFsbE9yZ2FuaXNhdGlvbjtcbiAgcHJpdmF0ZSBvcmdhbmlzYXRpb25hbFVuaXRzOiBPcmdhbmlzYXRpb25hbFVuaXRbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBPcmdhbmlzYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmV4aXN0aW5nQWNjb3VudHMgPSBwcm9wcy5leGlzdGluZ0FjY291bnRzO1xuICAgIHRoaXMuYWRkT3JnYW5pc2F0aW9uKHByb3BzLm9yZ2FuaXNhdGlvbk5hbWUpO1xuICAgIHRoaXMuYWRkT3JnYW5pc2F0aW9uVW5pdHNBbmRBY2NvdW50cyhwcm9wcy5hY2NvdW50cywgcHJvcHMub3JnRW1haWwpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRPcmdhbmlzYXRpb24ob3JnYW5pc2F0aW9uTmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5vcmdhbmlzYXRpb24gPSBuZXcgRmphbGxPcmdhbmlzYXRpb24odGhpcywgb3JnYW5pc2F0aW9uTmFtZSwge1xuICAgICAgZmVhdHVyZVNldDogRmVhdHVyZVNldC5BTExcbiAgICB9KTtcblxuICAgIC8vIFRPRE86IFZhbGlkYXRlIHRoaXMgZW5hYmxlcyB0cnVzdGVkIGFjY2Vzc1xuICAgIHRoaXMub3JnYW5pc2F0aW9uLmVuYWJsZUF3c1NlcnZpY2VBY2Nlc3MoXCJhY2NvdW50LmFtYXpvbmF3cy5jb21cIik7XG5cbiAgICBjb25zdCBlbmZvcmNlZFBvbGljeVR5cGVzOiBQb2xpY3lUeXBlW10gPSBbXG4gICAgICBQb2xpY3lUeXBlLlNFUlZJQ0VfQ09OVFJPTF9QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLlRBR19QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLkJBQ0tVUF9QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLkFJU0VSVklDRVNfT1BUX09VVF9QT0xJQ1lcbiAgICBdO1xuXG4gICAgZm9yIChjb25zdCBwb2xpY3lUeXBlIG9mIGVuZm9yY2VkUG9saWN5VHlwZXMpIHtcbiAgICAgIHRoaXMub3JnYW5pc2F0aW9uLmVuYWJsZVBvbGljeVR5cGUocG9saWN5VHlwZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRPcmdhbmlzYXRpb25Vbml0c0FuZEFjY291bnRzKFxuICAgIGFjY291bnRzOiBBY2NvdW50c0NvbmZpZyxcbiAgICBvcmdFbWFpbDogc3RyaW5nXG4gICkge1xuICAgIGZvciAoY29uc3QgW2Vudmlyb25tZW50VHlwZSwgYWNjb3VudExpc3RdIG9mIE9iamVjdC5lbnRyaWVzKGFjY291bnRzKSkge1xuICAgICAgLy8gQ3JlYXRlIE9VIGZvciBlYWNoIGVudmlyb25tZW50IHR5cGVcbiAgICAgIGNvbnN0IG91TmFtZSA9XG4gICAgICAgIGVudmlyb25tZW50VHlwZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGVudmlyb25tZW50VHlwZS5zbGljZSgxKTtcbiAgICAgIGNvbnN0IG9yZ1VuaXQgPSB0aGlzLmFkZE9yZ2FuaXNhdGlvbmFsVW5pdChcbiAgICAgICAgYCR7b3VOYW1lfU9yZ2FuaXNhdGlvbmFsVW5pdGAsXG4gICAgICAgIG91TmFtZVxuICAgICAgKTtcblxuICAgICAgLy8gQ29udmVydCBzaW5nbGUgYWNjb3VudCB0byBhcnJheSBmb3IgdW5pZm9ybSBwcm9jZXNzaW5nXG4gICAgICBjb25zdCBhY2NvdW50c0FycmF5ID0gQXJyYXkuaXNBcnJheShhY2NvdW50TGlzdClcbiAgICAgICAgPyBbLi4uYWNjb3VudExpc3RdIC8vIENvbnZlcnQgcmVhZG9ubHkgYXJyYXkgdG8gbXV0YWJsZSBhcnJheVxuICAgICAgICA6IFthY2NvdW50TGlzdF07XG5cbiAgICAgIC8vIEFkZCBhY2NvdW50cyB0byB0aGlzIE9VXG4gICAgICBmb3IgKGNvbnN0IGFjY291bnROYW1lIG9mIGFjY291bnRzQXJyYXkpIHtcbiAgICAgICAgLy8gRW5zdXJlIGFjY291bnROYW1lIGlzIGEgc3RyaW5nIChpdCBzaG91bGQgYmUgYWZ0ZXIgYXJyYXkgY29udmVyc2lvbilcbiAgICAgICAgaWYgKHR5cGVvZiBhY2NvdW50TmFtZSAhPT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgIGNvbnRpbnVlOyAvLyBTa2lwIGlmIHNvbWVob3cgaXQncyBub3QgYSBzdHJpbmdcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFjY291bnROYW1lSWQgPSBzdHJpcEFuZENhbWVsQ2FzZShhY2NvdW50TmFtZSk7XG5cbiAgICAgICAgY29uc3QgaW1wb3J0ZWRBY2NvdW50ID0gdGhpcy5leGlzdGluZ0FjY291bnRzPy5maW5kKFxuICAgICAgICAgIChhY2NvdW50KSA9PiBhY2NvdW50Lk5hbWUgPT09IGFjY291bnROYW1lXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGFjY291bnRFbWFpbCA9IGltcG9ydGVkQWNjb3VudFxuICAgICAgICAgID8gaW1wb3J0ZWRBY2NvdW50LkVtYWlsXG4gICAgICAgICAgOiBhZGRTdWZmaXhUb0VtYWlsKG9yZ0VtYWlsLCBhY2NvdW50TmFtZUlkLnRvTG93ZXJDYXNlKCkpO1xuXG4gICAgICAgIGlmIChhY2NvdW50RW1haWwpIHtcbiAgICAgICAgICB0aGlzLmFkZEFjY291bnQoXG4gICAgICAgICAgICBgJHthY2NvdW50TmFtZUlkfUFjY291bnRgLFxuICAgICAgICAgICAgYWNjb3VudE5hbWUsXG4gICAgICAgICAgICBhY2NvdW50RW1haWwsXG4gICAgICAgICAgICB7IGVudjogZW52aXJvbm1lbnRUeXBlIH0sXG4gICAgICAgICAgICBvcmdVbml0XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRkT3JnYW5pc2F0aW9uYWxVbml0KGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IE9yZ2FuaXNhdGlvbmFsVW5pdCB7XG4gICAgY29uc3Qgb3UgPSBuZXcgT3JnYW5pc2F0aW9uYWxVbml0KHRoaXMsIGlkLCB7XG4gICAgICBvcmdhbmlzYXRpb25hbFVuaXROYW1lOiBuYW1lLFxuICAgICAgcGFyZW50OiB0aGlzLm9yZ2FuaXNhdGlvbi5yb290LFxuICAgICAgaW1wb3J0T25EdXBsaWNhdGU6IHRydWVcbiAgICB9KTtcblxuICAgIHRoaXMub3JnYW5pc2F0aW9uYWxVbml0cy5wdXNoKG91KTtcbiAgICByZXR1cm4gb3U7XG4gIH1cblxuICBwcml2YXRlIGFkZEFjY291bnQoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgZW1haWw6IHN0cmluZyxcbiAgICB0YWdzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9LFxuICAgIG9yZ2FuaXNhdGlvbmFsVW5pdDogT3JnYW5pc2F0aW9uYWxVbml0XG4gICk6IEFjY291bnQge1xuICAgIGNvbnN0IGFjYyA9IG5ldyBBY2NvdW50KHRoaXMsIGlkLCB7XG4gICAgICBhY2NvdW50TmFtZTogbmFtZSxcbiAgICAgIGVtYWlsOiBlbWFpbCxcbiAgICAgIHBhcmVudDogb3JnYW5pc2F0aW9uYWxVbml0LFxuICAgICAgaW1wb3J0T25EdXBsaWNhdGU6IHRydWVcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgdGFnIGluIHRhZ3MpIHtcbiAgICAgIFRhZ3Mub2YoYWNjKS5hZGQodGFnLCB0YWdzW3RhZ10pO1xuICAgIH1cblxuICAgIHRoaXMuYWNjb3VudHNbbmFtZV0gPSBhY2MuYWNjb3VudElkO1xuXG4gICAgbmV3IENmbk91dHB1dCh0aGlzLCBgJHtpZH1JZGAsIHtcbiAgICAgIGtleTogYCR7aWR9SWRgLFxuICAgICAgdmFsdWU6IGFjYy5hY2NvdW50SWQsXG4gICAgICBleHBvcnROYW1lOiBgJHtpZH1JZGBcbiAgICB9KTtcbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke2lkfUFybmAsIHtcbiAgICAgIGtleTogYCR7aWR9QXJuYCxcbiAgICAgIHZhbHVlOiBhY2MuYWNjb3VudEFybixcbiAgICAgIGV4cG9ydE5hbWU6IGAke2lkfUFybmBcbiAgICB9KTtcblxuICAgIHJldHVybiBhY2M7XG4gIH1cblxuICBwdWJsaWMgZ2V0QWNjb3VudHMoKTogS2V5VmFsdWUge1xuICAgIHJldHVybiB0aGlzLmFjY291bnRzO1xuICB9XG59XG4iXX0=
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2NvbmZpZy9hd3Mvb3JnYW5pc2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkNBQW9EO0FBQ3BELDJDQUF1QztBQUN2Qyw2Q0FBbUM7QUFDbkMscUVBQWtFO0FBRWxFLG9FQU1zQztBQUN0QyxtRUFBNEQ7QUFjNUQ7O0dBRUc7QUFFSCxNQUFxQixZQUFhLFNBQVEsc0JBQVM7SUFRakQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF3QjtRQUNoRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBTFgsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUV4Qix3QkFBbUIsR0FBeUIsRUFBRSxDQUFDO1FBS3JELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsK0JBQStCLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLGVBQWUsQ0FBQyxnQkFBd0I7UUFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGdDQUFZLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQzNELFVBQVUsRUFBRSw4QkFBVSxDQUFDLEdBQUc7U0FDM0IsQ0FBQyxDQUFDO1FBRUgsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUVsRSxNQUFNLG1CQUFtQixHQUFpQjtZQUN4Qyw4QkFBVSxDQUFDLHNCQUFzQjtZQUNqQyw4QkFBVSxDQUFDLFVBQVU7WUFDckIsOEJBQVUsQ0FBQyxhQUFhO1lBQ3hCLDhCQUFVLENBQUMseUJBQXlCO1NBQ3JDLENBQUM7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QztRQUVwQyxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUU7WUFDN0IsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJO1lBQ2QsS0FBSyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1lBQ3BCLFVBQVUsRUFBRSxHQUFHLEVBQUUsSUFBSTtTQUN0QixDQUFDLENBQUM7UUFDSCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDOUIsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLO1lBQ2YsS0FBSyxFQUFFLEdBQUcsQ0FBQyxVQUFVO1lBQ3JCLFVBQVUsRUFBRSxHQUFHLEVBQUUsS0FBSztTQUN2QixDQUFDLENBQUM7UUFFSCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUE5SEQsK0JBOEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBTdGFja1Byb3BzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgVGFncyB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgc3RyaXBBbmRDYW1lbENhc2UgfSBmcm9tIFwiLi4vLi4vdXRpbHMvc3RyaXBBbmRDYW1lbENhc2VcIjtcbmltcG9ydCB7IEFjY291bnQgYXMgRXhpc3RpbmdBY2NvdW50cyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtb3JnYW5pemF0aW9uc1wiO1xuaW1wb3J0IHtcbiAgQWNjb3VudCxcbiAgRmVhdHVyZVNldCxcbiAgT3JnYW5pemF0aW9uLFxuICBPcmdhbml6YXRpb25hbFVuaXQsXG4gIFBvbGljeVR5cGVcbn0gZnJvbSBcIkBwZXBwZXJpemUvY2RrLW9yZ2FuaXphdGlvbnNcIjtcbmltcG9ydCBhZGRTdWZmaXhUb0VtYWlsIGZyb20gXCIuLi8uLi91dGlscy9hZGRTdWZmaXhUb0VtYWlsXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuXG5pbnRlcmZhY2UgT3JnYW5pc2F0aW9uUHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgb3JnYW5pc2F0aW9uTmFtZTogc3RyaW5nO1xuICBhY2NvdW50czogQWNjb3VudHNDb25maWc7XG4gIG9yZ0VtYWlsOiBzdHJpbmc7XG4gIGV4aXN0aW5nQWNjb3VudHM/OiBFeGlzdGluZ0FjY291bnRzW107XG59XG5cbnR5cGUgQWNjb3VudHNDb25maWcgPSB7XG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IHJlYWRvbmx5IHN0cmluZ1tdIHwgc3RyaW5nO1xufTtcblxuLyoqXG4gKiBBIGNvbnN0cnVjdCBmb3IgY3JlYXRpbmcgbXVsdGkgZW52aXJvbm1lbnQgb3JnYW5pc2F0aW9ucyB3aXRoIGEgcHJvZHVjdGlvbiwgc3RhZ2luZyBhbmQgZGV2ZWxvcG1lbnQgYWNjb3VudC5cbiAqL1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBPcmdhbmlzYXRpb24gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgYWNjb3VudElkOiBDZm5PdXRwdXQ7XG5cbiAgcHJpdmF0ZSBleGlzdGluZ0FjY291bnRzPzogRXhpc3RpbmdBY2NvdW50c1tdO1xuICBwcml2YXRlIGFjY291bnRzOiBLZXlWYWx1ZSA9IHt9O1xuICBwcml2YXRlIG9yZ2FuaXNhdGlvbjogT3JnYW5pemF0aW9uO1xuICBwcml2YXRlIG9yZ2FuaXNhdGlvbmFsVW5pdHM6IE9yZ2FuaXphdGlvbmFsVW5pdFtdID0gW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE9yZ2FuaXNhdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuZXhpc3RpbmdBY2NvdW50cyA9IHByb3BzLmV4aXN0aW5nQWNjb3VudHM7XG4gICAgdGhpcy5hZGRPcmdhbmlzYXRpb24ocHJvcHMub3JnYW5pc2F0aW9uTmFtZSk7XG4gICAgdGhpcy5hZGRPcmdhbmlzYXRpb25Vbml0c0FuZEFjY291bnRzKHByb3BzLmFjY291bnRzLCBwcm9wcy5vcmdFbWFpbCk7XG4gIH1cblxuICBwcml2YXRlIGFkZE9yZ2FuaXNhdGlvbihvcmdhbmlzYXRpb25OYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLm9yZ2FuaXNhdGlvbiA9IG5ldyBPcmdhbml6YXRpb24odGhpcywgb3JnYW5pc2F0aW9uTmFtZSwge1xuICAgICAgZmVhdHVyZVNldDogRmVhdHVyZVNldC5BTExcbiAgICB9KTtcblxuICAgIC8vIFRPRE86IFZhbGlkYXRlIHRoaXMgZW5hYmxlcyB0cnVzdGVkIGFjY2Vzc1xuICAgIHRoaXMub3JnYW5pc2F0aW9uLmVuYWJsZUF3c1NlcnZpY2VBY2Nlc3MoXCJhY2NvdW50LmFtYXpvbmF3cy5jb21cIik7XG5cbiAgICBjb25zdCBlbmZvcmNlZFBvbGljeVR5cGVzOiBQb2xpY3lUeXBlW10gPSBbXG4gICAgICBQb2xpY3lUeXBlLlNFUlZJQ0VfQ09OVFJPTF9QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLlRBR19QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLkJBQ0tVUF9QT0xJQ1ksXG4gICAgICBQb2xpY3lUeXBlLkFJU0VSVklDRVNfT1BUX09VVF9QT0xJQ1lcbiAgICBdO1xuXG4gICAgZm9yIChjb25zdCBwb2xpY3lUeXBlIG9mIGVuZm9yY2VkUG9saWN5VHlwZXMpIHtcbiAgICAgIHRoaXMub3JnYW5pc2F0aW9uLmVuYWJsZVBvbGljeVR5cGUocG9saWN5VHlwZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRPcmdhbmlzYXRpb25Vbml0c0FuZEFjY291bnRzKFxuICAgIGFjY291bnRzOiBBY2NvdW50c0NvbmZpZyxcbiAgICBvcmdFbWFpbDogc3RyaW5nXG4gICkge1xuICAgIGZvciAoY29uc3QgW2Vudmlyb25tZW50VHlwZSwgYWNjb3VudExpc3RdIG9mIE9iamVjdC5lbnRyaWVzKGFjY291bnRzKSkge1xuICAgICAgLy8gQ3JlYXRlIE9VIGZvciBlYWNoIGVudmlyb25tZW50IHR5cGVcbiAgICAgIGNvbnN0IG91TmFtZSA9XG4gICAgICAgIGVudmlyb25tZW50VHlwZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGVudmlyb25tZW50VHlwZS5zbGljZSgxKTtcbiAgICAgIGNvbnN0IG9yZ1VuaXQgPSB0aGlzLmFkZE9yZ2FuaXNhdGlvbmFsVW5pdChcbiAgICAgICAgYCR7b3VOYW1lfU9yZ2FuaXphdGlvbmFsVW5pdGAsXG4gICAgICAgIG91TmFtZVxuICAgICAgKTtcblxuICAgICAgLy8gQ29udmVydCBzaW5nbGUgYWNjb3VudCB0byBhcnJheSBmb3IgdW5pZm9ybSBwcm9jZXNzaW5nXG4gICAgICBjb25zdCBhY2NvdW50c0FycmF5ID0gQXJyYXkuaXNBcnJheShhY2NvdW50TGlzdClcbiAgICAgICAgPyBhY2NvdW50TGlzdFxuICAgICAgICA6IFthY2NvdW50TGlzdF07XG5cbiAgICAgIC8vIEFkZCBhY2NvdW50cyB0byB0aGlzIE9VXG4gICAgICBmb3IgKGNvbnN0IGFjY291bnROYW1lIG9mIGFjY291bnRzQXJyYXkpIHtcbiAgICAgICAgY29uc3QgYWNjb3VudE5hbWVJZCA9IHN0cmlwQW5kQ2FtZWxDYXNlKGFjY291bnROYW1lKTtcblxuICAgICAgICBjb25zdCBpbXBvcnRlZEFjY291bnQgPSB0aGlzLmV4aXN0aW5nQWNjb3VudHM/LmZpbmQoXG4gICAgICAgICAgKGFjY291bnQpID0+IGFjY291bnQuTmFtZSA9PT0gYWNjb3VudE5hbWVcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgYWNjb3VudEVtYWlsID0gaW1wb3J0ZWRBY2NvdW50XG4gICAgICAgICAgPyBpbXBvcnRlZEFjY291bnQuRW1haWxcbiAgICAgICAgICA6IGFkZFN1ZmZpeFRvRW1haWwob3JnRW1haWwsIGFjY291bnROYW1lSWQudG9Mb3dlckNhc2UoKSk7XG5cbiAgICAgICAgaWYgKGFjY291bnRFbWFpbCkge1xuICAgICAgICAgIHRoaXMuYWRkQWNjb3VudChcbiAgICAgICAgICAgIGAke2FjY291bnROYW1lSWR9QWNjb3VudGAsXG4gICAgICAgICAgICBhY2NvdW50TmFtZSxcbiAgICAgICAgICAgIGFjY291bnRFbWFpbCxcbiAgICAgICAgICAgIHsgZW52OiBlbnZpcm9ubWVudFR5cGUgfSxcbiAgICAgICAgICAgIG9yZ1VuaXRcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRPcmdhbmlzYXRpb25hbFVuaXQoaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKTogT3JnYW5pemF0aW9uYWxVbml0IHtcbiAgICBjb25zdCBvdSA9IG5ldyBPcmdhbml6YXRpb25hbFVuaXQodGhpcywgaWQsIHtcbiAgICAgIG9yZ2FuaXphdGlvbmFsVW5pdE5hbWU6IG5hbWUsXG4gICAgICBwYXJlbnQ6IHRoaXMub3JnYW5pc2F0aW9uLnJvb3QsXG4gICAgICBpbXBvcnRPbkR1cGxpY2F0ZTogdHJ1ZVxuICAgIH0pO1xuXG4gICAgdGhpcy5vcmdhbmlzYXRpb25hbFVuaXRzLnB1c2gob3UpO1xuICAgIHJldHVybiBvdTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkQWNjb3VudChcbiAgICBpZDogc3RyaW5nLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBlbWFpbDogc3RyaW5nLFxuICAgIHRhZ3M6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgb3JnYW5pc2F0aW9uYWxVbml0OiBPcmdhbml6YXRpb25hbFVuaXRcbiAgKTogQWNjb3VudCB7XG4gICAgY29uc3QgYWNjID0gbmV3IEFjY291bnQodGhpcywgaWQsIHtcbiAgICAgIGFjY291bnROYW1lOiBuYW1lLFxuICAgICAgZW1haWw6IGVtYWlsLFxuICAgICAgcGFyZW50OiBvcmdhbmlzYXRpb25hbFVuaXQsXG4gICAgICBpbXBvcnRPbkR1cGxpY2F0ZTogdHJ1ZVxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCB0YWcgaW4gdGFncykge1xuICAgICAgVGFncy5vZihhY2MpLmFkZCh0YWcsIHRhZ3NbdGFnXSk7XG4gICAgfVxuXG4gICAgdGhpcy5hY2NvdW50c1tuYW1lXSA9IGFjYy5hY2NvdW50SWQ7XG5cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke2lkfUlkYCwge1xuICAgICAga2V5OiBgJHtpZH1JZGAsXG4gICAgICB2YWx1ZTogYWNjLmFjY291bnRJZCxcbiAgICAgIGV4cG9ydE5hbWU6IGAke2lkfUlkYFxuICAgIH0pO1xuICAgIG5ldyBDZm5PdXRwdXQodGhpcywgYCR7aWR9QXJuYCwge1xuICAgICAga2V5OiBgJHtpZH1Bcm5gLFxuICAgICAgdmFsdWU6IGFjYy5hY2NvdW50QXJuLFxuICAgICAgZXhwb3J0TmFtZTogYCR7aWR9QXJuYFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGFjYztcbiAgfVxuXG4gIHB1YmxpYyBnZXRBY2NvdW50cygpIHtcbiAgICByZXR1cm4gdGhpcy5hY2NvdW50cztcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fjall/components-infrastructure",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.32.0",
|
|
4
4
|
"bin": {
|
|
5
5
|
"infrastructure": "bin/infrastructure.js"
|
|
6
6
|
},
|
|
@@ -35,7 +35,8 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@aws-sdk/client-cost-explorer": "^3.717.0",
|
|
37
37
|
"@aws-sdk/client-organizations": "^3.716.0",
|
|
38
|
-
"@fjall/util": "^0.
|
|
38
|
+
"@fjall/util": "^0.32.0",
|
|
39
|
+
"@pepperize/cdk-organizations": "^0.7.135",
|
|
39
40
|
"aws-lambda": "^1.0.7",
|
|
40
41
|
"cdk-time-sleep": "^1.0.0",
|
|
41
42
|
"constructs": "^10.0.0",
|
|
@@ -45,7 +46,7 @@
|
|
|
45
46
|
"overrides": {
|
|
46
47
|
"@smithy/core": "2.5.5"
|
|
47
48
|
},
|
|
48
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "1a2e38062c46a1e0b174f69ef320a3f62ff24c96",
|
|
49
50
|
"peerDependencies": {
|
|
50
51
|
"aws-cdk": "^2.204.0",
|
|
51
52
|
"aws-cdk-lib": "^2.204.0",
|