@fjall/components-infrastructure 0.1.11 → 0.1.16
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/dist/lib/config/aws/identityCenter.d.ts +2 -2
- package/dist/lib/config/aws/identityCenter.js +1 -1
- package/dist/lib/config/aws/identityCenterUser.js +2 -2
- package/dist/lib/config/aws/ipamPoolId.d.ts +1 -0
- package/dist/lib/config/aws/ipamPoolId.js +5 -3
- package/dist/lib/config/aws/organisation.d.ts +9 -9
- package/dist/lib/config/aws/organisation.js +31 -61
- package/dist/lib/patterns/aws/basicApp.d.ts +3 -2
- package/dist/lib/patterns/aws/basicApp.js +5 -5
- package/dist/lib/patterns/aws/buildkite.d.ts +37 -28
- package/dist/lib/patterns/aws/buildkite.js +66 -40
- package/dist/lib/patterns/aws/freeTierApp.d.ts +2 -1
- package/dist/lib/patterns/aws/freeTierApp.js +5 -5
- package/dist/lib/patterns/aws/managedAccount.js +5 -4
- package/dist/lib/patterns/aws/managedOrganisation.d.ts +9 -7
- package/dist/lib/patterns/aws/managedOrganisation.js +13 -6
- package/dist/lib/patterns/aws/spotInstanceApp.d.ts +1 -0
- package/dist/lib/patterns/aws/spotInstanceApp.js +4 -4
- package/dist/lib/resources/aws/awsStack.d.ts +2 -2
- package/dist/lib/resources/aws/awsStack.js +3 -3
- package/dist/lib/resources/aws/database/rdsFreeTier.js +2 -2
- package/dist/lib/resources/aws/networking/ipamPool.js +21 -18
- package/dist/lib/resources/aws/networking/vpc.d.ts +1 -1
- package/dist/lib/resources/aws/networking/vpc.js +5 -3
- package/dist/lib/resources/aws/secrets/kms.js +2 -2
- package/dist/lib/utils/getAccountId.js +5 -4
- package/dist/lib/utils/getAsync.d.ts +10 -0
- package/dist/lib/utils/getAsync.js +37 -0
- package/dist/lib/utils/getCidr.js +4 -4
- package/dist/lib/utils/getConfig.d.ts +4 -2
- package/dist/lib/utils/getConfig.js +20 -16
- package/dist/lib/utils/usersConfig.js +2 -2
- package/package.json +7 -3
|
@@ -1,50 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getConfig = exports.
|
|
3
|
+
exports.getConfig = exports.getEnvironmentConfig = void 0;
|
|
4
4
|
const app_1 = require("../app");
|
|
5
5
|
const util_1 = require("@fjall/util");
|
|
6
|
-
function
|
|
6
|
+
function getEnvironmentConfig(accountName) {
|
|
7
7
|
const config = util_1.Config.loadConfig();
|
|
8
|
-
const providerAccount = config.getProviderAccount(
|
|
8
|
+
const providerAccount = config.getProviderAccount(accountName);
|
|
9
|
+
const existingAccounts = config.getExistingAccounts();
|
|
9
10
|
const region = process.env.AWS_REGION;
|
|
10
11
|
if (!providerAccount) {
|
|
11
|
-
console.error(`No provider account found for
|
|
12
|
-
throw new Error(`No provider account found for
|
|
12
|
+
console.error(`No provider account found for account: ${accountName}`);
|
|
13
|
+
throw new Error(`No provider account found for account: ${accountName}`);
|
|
13
14
|
}
|
|
14
15
|
if (!region) {
|
|
15
16
|
console.error("Variable AWS_REGION is not set in your environment, please specify");
|
|
16
17
|
throw new Error("Variable AWS_REGION is not set in your environment, please specify");
|
|
17
18
|
}
|
|
18
19
|
return {
|
|
19
|
-
environment: environment,
|
|
20
|
-
|
|
20
|
+
environment: providerAccount.environment,
|
|
21
|
+
accountId: providerAccount.id,
|
|
21
22
|
accountName: providerAccount.name,
|
|
22
|
-
region: region
|
|
23
|
+
region: region,
|
|
24
|
+
existingAccounts: existingAccounts
|
|
23
25
|
};
|
|
24
26
|
}
|
|
25
|
-
exports.
|
|
27
|
+
exports.getEnvironmentConfig = getEnvironmentConfig;
|
|
26
28
|
function getConfig() {
|
|
27
29
|
const app = app_1.default.getInstance();
|
|
28
30
|
// Get cdk deploy --context config
|
|
29
|
-
const env = app.node.tryGetContext("
|
|
31
|
+
const env = app.node.tryGetContext("accountName");
|
|
30
32
|
const config = util_1.Config.loadConfig();
|
|
31
33
|
const providerAccount = config.getProviderAccount(env);
|
|
34
|
+
const existingAccounts = config.getExistingAccounts();
|
|
32
35
|
const region = process.env.AWS_REGION;
|
|
33
36
|
if (!providerAccount) {
|
|
34
|
-
console.warn(`No provider account found for
|
|
35
|
-
throw new Error(`No provider account found for
|
|
37
|
+
console.warn(`No provider account found for account: ${env}`);
|
|
38
|
+
throw new Error(`No provider account found for account: ${env}`);
|
|
36
39
|
}
|
|
37
40
|
if (!region) {
|
|
38
41
|
console.error("Variable AWS_REGION is not set in your environment");
|
|
39
42
|
throw new Error("Variable AWS_REGION is not set in your environment");
|
|
40
43
|
}
|
|
41
44
|
return {
|
|
42
|
-
environment:
|
|
43
|
-
|
|
45
|
+
environment: providerAccount.environment,
|
|
46
|
+
accountId: providerAccount.id,
|
|
44
47
|
accountName: providerAccount.name,
|
|
45
|
-
region: region
|
|
48
|
+
region: region,
|
|
49
|
+
existingAccounts: existingAccounts
|
|
46
50
|
};
|
|
47
51
|
}
|
|
48
52
|
exports.getConfig = getConfig;
|
|
49
53
|
exports.default = getConfig;
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL2dldENvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxnQ0FBeUI7QUFDekIsc0NBQW9EO0FBVXBELFNBQWdCLG9CQUFvQixDQUFDLFdBQW1CO0lBQ3RELE1BQU0sTUFBTSxHQUFHLGFBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUN0RCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQztJQUV0QyxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE9BQU8sQ0FBQyxLQUFLLENBQUMsMENBQTBDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsV0FBVyxFQUFFLENBQUMsQ0FBQztLQUMxRTtJQUVELElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxPQUFPLENBQUMsS0FBSyxDQUNYLG9FQUFvRSxDQUNyRSxDQUFDO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FDYixvRUFBb0UsQ0FDckUsQ0FBQztLQUNIO0lBRUQsT0FBTztRQUNMLFdBQVcsRUFBRSxlQUFlLENBQUMsV0FBVztRQUN4QyxTQUFTLEVBQUUsZUFBZSxDQUFDLEVBQUU7UUFDN0IsV0FBVyxFQUFFLGVBQWUsQ0FBQyxJQUFJO1FBQ2pDLE1BQU0sRUFBRSxNQUFNO1FBQ2QsZ0JBQWdCLEVBQUUsZ0JBQWdCO0tBQ25DLENBQUM7QUFDSixDQUFDO0FBM0JELG9EQTJCQztBQUVELFNBQWdCLFNBQVM7SUFDdkIsTUFBTSxHQUFHLEdBQUcsYUFBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBRTlCLGtDQUFrQztJQUNsQyxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUVsRCxNQUFNLE1BQU0sR0FBRyxhQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDeEMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdEQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFFdEMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUNwQixPQUFPLENBQUMsSUFBSSxDQUFDLDBDQUEwQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzlELE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDbEU7SUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztLQUN2RTtJQUVELE9BQU87UUFDTCxXQUFXLEVBQUUsZUFBZSxDQUFDLFdBQVc7UUFDeEMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxFQUFFO1FBQzdCLFdBQVcsRUFBRSxlQUFlLENBQUMsSUFBSTtRQUNqQyxNQUFNLEVBQUUsTUFBTTtRQUNkLGdCQUFnQixFQUFFLGdCQUFnQjtLQUNuQyxDQUFDO0FBQ0osQ0FBQztBQTVCRCw4QkE0QkM7QUFDRCxrQkFBZSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY2NvdW50IH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1vcmdhbml6YXRpb25zXCI7XG5cbmltcG9ydCBBcHAgZnJvbSBcIi4uL2FwcFwiO1xuaW1wb3J0IHsgQ29uZmlnIGFzIEZqYWxsQ29uZmlnIH0gZnJvbSBcIkBmamFsbC91dGlsXCI7XG5cbmludGVyZmFjZSBDb25maWcge1xuICBlbnZpcm9ubWVudDogc3RyaW5nO1xuICBhY2NvdW50SWQ6IHN0cmluZztcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgcmVnaW9uOiBzdHJpbmc7XG4gIGV4aXN0aW5nQWNjb3VudHM6IEFjY291bnRbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEVudmlyb25tZW50Q29uZmlnKGFjY291bnROYW1lOiBzdHJpbmcpOiBDb25maWcge1xuICBjb25zdCBjb25maWcgPSBGamFsbENvbmZpZy5sb2FkQ29uZmlnKCk7XG4gIGNvbnN0IHByb3ZpZGVyQWNjb3VudCA9IGNvbmZpZy5nZXRQcm92aWRlckFjY291bnQoYWNjb3VudE5hbWUpO1xuICBjb25zdCBleGlzdGluZ0FjY291bnRzID0gY29uZmlnLmdldEV4aXN0aW5nQWNjb3VudHMoKTtcbiAgY29uc3QgcmVnaW9uID0gcHJvY2Vzcy5lbnYuQVdTX1JFR0lPTjtcblxuICBpZiAoIXByb3ZpZGVyQWNjb3VudCkge1xuICAgIGNvbnNvbGUuZXJyb3IoYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGFjY291bnQ6ICR7YWNjb3VudE5hbWV9YCk7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBwcm92aWRlciBhY2NvdW50IGZvdW5kIGZvciBhY2NvdW50OiAke2FjY291bnROYW1lfWApO1xuICB9XG5cbiAgaWYgKCFyZWdpb24pIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudCwgcGxlYXNlIHNwZWNpZnlcIlxuICAgICk7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudCwgcGxlYXNlIHNwZWNpZnlcIlxuICAgICk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGVudmlyb25tZW50OiBwcm92aWRlckFjY291bnQuZW52aXJvbm1lbnQsXG4gICAgYWNjb3VudElkOiBwcm92aWRlckFjY291bnQuaWQsXG4gICAgYWNjb3VudE5hbWU6IHByb3ZpZGVyQWNjb3VudC5uYW1lLFxuICAgIHJlZ2lvbjogcmVnaW9uLFxuICAgIGV4aXN0aW5nQWNjb3VudHM6IGV4aXN0aW5nQWNjb3VudHNcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbmZpZygpOiBDb25maWcge1xuICBjb25zdCBhcHAgPSBBcHAuZ2V0SW5zdGFuY2UoKTtcblxuICAvLyBHZXQgY2RrIGRlcGxveSAtLWNvbnRleHQgY29uZmlnXG4gIGNvbnN0IGVudiA9IGFwcC5ub2RlLnRyeUdldENvbnRleHQoXCJhY2NvdW50TmFtZVwiKTtcblxuICBjb25zdCBjb25maWcgPSBGamFsbENvbmZpZy5sb2FkQ29uZmlnKCk7XG4gIGNvbnN0IHByb3ZpZGVyQWNjb3VudCA9IGNvbmZpZy5nZXRQcm92aWRlckFjY291bnQoZW52KTtcbiAgY29uc3QgZXhpc3RpbmdBY2NvdW50cyA9IGNvbmZpZy5nZXRFeGlzdGluZ0FjY291bnRzKCk7XG4gIGNvbnN0IHJlZ2lvbiA9IHByb2Nlc3MuZW52LkFXU19SRUdJT047XG5cbiAgaWYgKCFwcm92aWRlckFjY291bnQpIHtcbiAgICBjb25zb2xlLndhcm4oYE5vIHByb3ZpZGVyIGFjY291bnQgZm91bmQgZm9yIGFjY291bnQ6ICR7ZW52fWApO1xuICAgIHRocm93IG5ldyBFcnJvcihgTm8gcHJvdmlkZXIgYWNjb3VudCBmb3VuZCBmb3IgYWNjb3VudDogJHtlbnZ9YCk7XG4gIH1cblxuICBpZiAoIXJlZ2lvbikge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJWYXJpYWJsZSBBV1NfUkVHSU9OIGlzIG5vdCBzZXQgaW4geW91ciBlbnZpcm9ubWVudFwiKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZW52aXJvbm1lbnQ6IHByb3ZpZGVyQWNjb3VudC5lbnZpcm9ubWVudCxcbiAgICBhY2NvdW50SWQ6IHByb3ZpZGVyQWNjb3VudC5pZCxcbiAgICBhY2NvdW50TmFtZTogcHJvdmlkZXJBY2NvdW50Lm5hbWUsXG4gICAgcmVnaW9uOiByZWdpb24sXG4gICAgZXhpc3RpbmdBY2NvdW50czogZXhpc3RpbmdBY2NvdW50c1xuICB9O1xufVxuZXhwb3J0IGRlZmF1bHQgZ2V0Q29uZmlnO1xuIl19
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const fs = require("fs");
|
|
4
4
|
class UsersConfig {
|
|
5
5
|
constructor() {
|
|
6
|
-
this.configFile = "
|
|
6
|
+
this.configFile = "fjall/users-config.json";
|
|
7
7
|
if (!fs.existsSync(this.configFile)) {
|
|
8
8
|
throw new Error(`Config file ${this.configFile} does not exist`);
|
|
9
9
|
}
|
|
@@ -15,4 +15,4 @@ class UsersConfig {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
exports.default = UsersConfig;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnNDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvdXRpbHMvdXNlcnNDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5QkFBeUI7QUFHekIsTUFBcUIsV0FBVztJQUk5QjtRQUhRLGVBQVUsR0FBRyx5QkFBeUIsQ0FBQztRQUk3QyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxVQUFVLGlCQUFpQixDQUFDLENBQUM7U0FDbEU7UUFFRCxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Q0FDRjtBQWhCRCw4QkFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vY29uZmlnL2F3cy9pZGVudGl0eUNlbnRlclVzZXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNlcnNDb25maWcge1xuICBwcml2YXRlIGNvbmZpZ0ZpbGUgPSBcImZqYWxsL3VzZXJzLWNvbmZpZy5qc29uXCI7XG4gIHB1YmxpYyB1c2VyczogVXNlcltdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghZnMuZXhpc3RzU3luYyh0aGlzLmNvbmZpZ0ZpbGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbmZpZyBmaWxlICR7dGhpcy5jb25maWdGaWxlfSBkb2VzIG5vdCBleGlzdGApO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVDb250ZW50ID0gZnMucmVhZEZpbGVTeW5jKHRoaXMuY29uZmlnRmlsZSwgXCJ1dGYtOFwiKTtcbiAgICB0aGlzLnVzZXJzID0gSlNPTi5wYXJzZShmaWxlQ29udGVudCk7XG4gIH1cblxuICBnZXRVc2VycygpIHtcbiAgICByZXR1cm4gdGhpcy51c2VycztcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fjall/components-infrastructure",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.16",
|
|
4
4
|
"bin": {
|
|
5
5
|
"infrastructure": "bin/infrastructure.js"
|
|
6
6
|
},
|
|
@@ -53,8 +53,9 @@
|
|
|
53
53
|
"typescript": "~4.9.4"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@aws-sdk/client-cost-explorer": "^3.
|
|
57
|
-
"@
|
|
56
|
+
"@aws-sdk/client-cost-explorer": "^3.717.0",
|
|
57
|
+
"@aws-sdk/client-organizations": "^3.716.0",
|
|
58
|
+
"@fjall/util": "^0.1.16",
|
|
58
59
|
"@pepperize/cdk-organizations": "^0.7.135",
|
|
59
60
|
"aws-cdk": "^2.146.0",
|
|
60
61
|
"aws-cdk-lib": "^2.146.0",
|
|
@@ -62,5 +63,8 @@
|
|
|
62
63
|
"constructs": "^10.0.0",
|
|
63
64
|
"source-map-support": "^0.5.21",
|
|
64
65
|
"uuid": "^9.0.0"
|
|
66
|
+
},
|
|
67
|
+
"overrides": {
|
|
68
|
+
"@smithy/core": "2.5.5"
|
|
65
69
|
}
|
|
66
70
|
}
|