@fjall/components-infrastructure 0.18.0 → 0.19.1
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.
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FiveTranAppBuilder = void 0;
|
|
4
|
+
const index_1 = require("../../index");
|
|
5
|
+
const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
|
|
6
|
+
class FiveTranAppBuilder {
|
|
7
|
+
static build(appName, fivetranPublicKey) {
|
|
8
|
+
const app = index_1.App.getApp(appName);
|
|
9
|
+
const publicKey = fivetranPublicKey ||
|
|
10
|
+
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC... YOUR_FIVETRAN_SSH_PUBLIC_KEY_HERE";
|
|
11
|
+
const fivetranUserData = aws_ec2_1.UserData.forLinux();
|
|
12
|
+
fivetranUserData.addCommands("groupadd fivetran", "useradd -m -g fivetran fivetran", "mkdir -p /home/fivetran/.ssh", "chown fivetran:fivetran /home/fivetran/.ssh", "chmod 700 /home/fivetran/.ssh", `echo "${publicKey}" > /home/fivetran/.ssh/authorized_keys`, "chown fivetran:fivetran /home/fivetran/.ssh/authorized_keys", "chmod 600 /home/fivetran/.ssh/authorized_keys");
|
|
13
|
+
app.addCompute(index_1.ComputeFactory.build(`${appName}Proxy`, {
|
|
14
|
+
type: "ec2",
|
|
15
|
+
config: {
|
|
16
|
+
instanceType: "t3.micro",
|
|
17
|
+
enableSSH: true,
|
|
18
|
+
userData: fivetranUserData,
|
|
19
|
+
minCapacity: 1,
|
|
20
|
+
maxCapacity: 1
|
|
21
|
+
},
|
|
22
|
+
tags: {
|
|
23
|
+
"fjall:costAllocation:environment": "production",
|
|
24
|
+
"fjall:costAllocation:service": "fivetran",
|
|
25
|
+
"fjall:costAllocation:owner": "data"
|
|
26
|
+
}
|
|
27
|
+
}));
|
|
28
|
+
return app;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.FiveTranAppBuilder = FiveTranAppBuilder;
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml2ZXRyYW5BcHBCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9maXZldHJhbkFwcEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBQWtEO0FBQ2xELGlEQUErQztBQUUvQyxNQUFhLGtCQUFrQjtJQUM3QixNQUFNLENBQUMsS0FBSyxDQUFDLE9BQWUsRUFBRSxpQkFBMEI7UUFDdEQsTUFBTSxHQUFHLEdBQUcsV0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVoQyxNQUFNLFNBQVMsR0FDYixpQkFBaUI7WUFDakIsOEVBQThFLENBQUM7UUFFakYsTUFBTSxnQkFBZ0IsR0FBRyxrQkFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdDLGdCQUFnQixDQUFDLFdBQVcsQ0FDMUIsbUJBQW1CLEVBQ25CLGlDQUFpQyxFQUNqQyw4QkFBOEIsRUFDOUIsNkNBQTZDLEVBQzdDLCtCQUErQixFQUMvQixTQUFTLFNBQVMseUNBQXlDLEVBQzNELDZEQUE2RCxFQUM3RCwrQ0FBK0MsQ0FDaEQsQ0FBQztRQUVGLEdBQUcsQ0FBQyxVQUFVLENBQ1osc0JBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxPQUFPLE9BQU8sRUFBRTtZQUN0QyxJQUFJLEVBQUUsS0FBSztZQUNYLE1BQU0sRUFBRTtnQkFDTixZQUFZLEVBQUUsVUFBVTtnQkFDeEIsU0FBUyxFQUFFLElBQUk7Z0JBQ2YsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsV0FBVyxFQUFFLENBQUM7YUFDZjtZQUNELElBQUksRUFBRTtnQkFDSixrQ0FBa0MsRUFBRSxZQUFZO2dCQUNoRCw4QkFBOEIsRUFBRSxVQUFVO2dCQUMxQyw0QkFBNEIsRUFBRSxNQUFNO2FBQ3JDO1NBQ0YsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FDRjtBQXhDRCxnREF3Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHAsIENvbXB1dGVGYWN0b3J5IH0gZnJvbSBcIi4uLy4uL2luZGV4XCI7XG5pbXBvcnQgeyBVc2VyRGF0YSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5cbmV4cG9ydCBjbGFzcyBGaXZlVHJhbkFwcEJ1aWxkZXIge1xuICBzdGF0aWMgYnVpbGQoYXBwTmFtZTogc3RyaW5nLCBmaXZldHJhblB1YmxpY0tleT86IHN0cmluZyk6IEFwcCB7XG4gICAgY29uc3QgYXBwID0gQXBwLmdldEFwcChhcHBOYW1lKTtcblxuICAgIGNvbnN0IHB1YmxpY0tleSA9XG4gICAgICBmaXZldHJhblB1YmxpY0tleSB8fFxuICAgICAgXCJzc2gtcnNhIEFBQUFCM056YUMxeWMyRUFBQUFEQVFBQkFBQUJBUUMuLi4gWU9VUl9GSVZFVFJBTl9TU0hfUFVCTElDX0tFWV9IRVJFXCI7XG5cbiAgICBjb25zdCBmaXZldHJhblVzZXJEYXRhID0gVXNlckRhdGEuZm9yTGludXgoKTtcbiAgICBmaXZldHJhblVzZXJEYXRhLmFkZENvbW1hbmRzKFxuICAgICAgXCJncm91cGFkZCBmaXZldHJhblwiLFxuICAgICAgXCJ1c2VyYWRkIC1tIC1nIGZpdmV0cmFuIGZpdmV0cmFuXCIsXG4gICAgICBcIm1rZGlyIC1wIC9ob21lL2ZpdmV0cmFuLy5zc2hcIixcbiAgICAgIFwiY2hvd24gZml2ZXRyYW46Zml2ZXRyYW4gL2hvbWUvZml2ZXRyYW4vLnNzaFwiLFxuICAgICAgXCJjaG1vZCA3MDAgL2hvbWUvZml2ZXRyYW4vLnNzaFwiLFxuICAgICAgYGVjaG8gXCIke3B1YmxpY0tleX1cIiA+IC9ob21lL2ZpdmV0cmFuLy5zc2gvYXV0aG9yaXplZF9rZXlzYCxcbiAgICAgIFwiY2hvd24gZml2ZXRyYW46Zml2ZXRyYW4gL2hvbWUvZml2ZXRyYW4vLnNzaC9hdXRob3JpemVkX2tleXNcIixcbiAgICAgIFwiY2htb2QgNjAwIC9ob21lL2ZpdmV0cmFuLy5zc2gvYXV0aG9yaXplZF9rZXlzXCJcbiAgICApO1xuXG4gICAgYXBwLmFkZENvbXB1dGUoXG4gICAgICBDb21wdXRlRmFjdG9yeS5idWlsZChgJHthcHBOYW1lfVByb3h5YCwge1xuICAgICAgICB0eXBlOiBcImVjMlwiLFxuICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICBpbnN0YW5jZVR5cGU6IFwidDMubWljcm9cIixcbiAgICAgICAgICBlbmFibGVTU0g6IHRydWUsXG4gICAgICAgICAgdXNlckRhdGE6IGZpdmV0cmFuVXNlckRhdGEsXG4gICAgICAgICAgbWluQ2FwYWNpdHk6IDEsXG4gICAgICAgICAgbWF4Q2FwYWNpdHk6IDFcbiAgICAgICAgfSxcbiAgICAgICAgdGFnczoge1xuICAgICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246ZW52aXJvbm1lbnRcIjogXCJwcm9kdWN0aW9uXCIsXG4gICAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpzZXJ2aWNlXCI6IFwiZml2ZXRyYW5cIixcbiAgICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOm93bmVyXCI6IFwiZGF0YVwiXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHJldHVybiBhcHA7XG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fjall/components-infrastructure",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.1",
|
|
4
4
|
"bin": {
|
|
5
5
|
"infrastructure": "bin/infrastructure.js"
|
|
6
6
|
},
|
|
@@ -35,7 +35,7 @@
|
|
|
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.19.1",
|
|
39
39
|
"@pepperize/cdk-organizations": "^0.7.135",
|
|
40
40
|
"aws-cdk": "^2.146.0",
|
|
41
41
|
"aws-cdk-lib": "^2.146.0",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"overrides": {
|
|
49
49
|
"@smithy/core": "2.5.5"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "5885c6563c25481499d44fc24e34fa89335b2203"
|
|
52
52
|
}
|