@glicogh/healthcare-cdk 0.1.0 → 0.1.2
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/.env.uat +5 -0
- package/cdk.json +72 -0
- package/dist/@types/common.d.ts +11 -0
- package/dist/@types/common.js +3 -0
- package/dist/bin/cdk.d.ts +2 -0
- package/dist/bin/cdk.js +7 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +19 -0
- package/dist/lib/laravel-based-microservice-stack.d.ts +6 -0
- package/dist/lib/laravel-based-microservice-stack.js +12 -0
- package/dist/test/cdk.test.d.ts +0 -0
- package/dist/test/cdk.test.js +17 -0
- package/dist/util/applyTags.d.ts +3 -0
- package/dist/util/applyTags.js +11 -0
- package/dist/util/initBuildConfig.d.ts +3 -0
- package/dist/util/initBuildConfig.js +33 -0
- package/dist/util/initLaravelBasedCdkStack.d.ts +1 -0
- package/dist/util/initLaravelBasedCdkStack.js +26 -0
- package/jest.config.js +8 -0
- package/package.json +6 -7
- package/tsconfig.json +32 -0
- package/lib/laravel-based-microservice-stack.ts +0 -11
package/.env.uat
ADDED
package/cdk.json
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
{
|
|
2
|
+
"app": "npx ts-node --prefer-ts-exts bin/cdk.ts",
|
|
3
|
+
"watch": {
|
|
4
|
+
"include": [
|
|
5
|
+
"**"
|
|
6
|
+
],
|
|
7
|
+
"exclude": [
|
|
8
|
+
"README.md",
|
|
9
|
+
"cdk*.json",
|
|
10
|
+
"**/*.d.ts",
|
|
11
|
+
"**/*.js",
|
|
12
|
+
"tsconfig.json",
|
|
13
|
+
"package*.json",
|
|
14
|
+
"yarn.lock",
|
|
15
|
+
"node_modules",
|
|
16
|
+
"test"
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
"context": {
|
|
20
|
+
"@aws-cdk/aws-lambda:recognizeLayerVersion": true,
|
|
21
|
+
"@aws-cdk/core:checkSecretUsage": true,
|
|
22
|
+
"@aws-cdk/core:target-partitions": [
|
|
23
|
+
"aws",
|
|
24
|
+
"aws-cn"
|
|
25
|
+
],
|
|
26
|
+
"@aws-cdk-containers/ecs-service-extensions:enableDefaultLogDriver": true,
|
|
27
|
+
"@aws-cdk/aws-ec2:uniqueImdsv2TemplateName": true,
|
|
28
|
+
"@aws-cdk/aws-ecs:arnFormatIncludesClusterName": true,
|
|
29
|
+
"@aws-cdk/aws-iam:minimizePolicies": true,
|
|
30
|
+
"@aws-cdk/core:validateSnapshotRemovalPolicy": true,
|
|
31
|
+
"@aws-cdk/aws-codepipeline:crossAccountKeyAliasStackSafeResourceName": true,
|
|
32
|
+
"@aws-cdk/aws-s3:createDefaultLoggingPolicy": true,
|
|
33
|
+
"@aws-cdk/aws-sns-subscriptions:restrictSqsDescryption": true,
|
|
34
|
+
"@aws-cdk/aws-apigateway:disableCloudWatchRole": true,
|
|
35
|
+
"@aws-cdk/core:enablePartitionLiterals": true,
|
|
36
|
+
"@aws-cdk/aws-events:eventsTargetQueueSameAccount": true,
|
|
37
|
+
"@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker": true,
|
|
38
|
+
"@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName": true,
|
|
39
|
+
"@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy": true,
|
|
40
|
+
"@aws-cdk/aws-route53-patters:useCertificate": true,
|
|
41
|
+
"@aws-cdk/customresources:installLatestAwsSdkDefault": false,
|
|
42
|
+
"@aws-cdk/aws-rds:databaseProxyUniqueResourceName": true,
|
|
43
|
+
"@aws-cdk/aws-codedeploy:removeAlarmsFromDeploymentGroup": true,
|
|
44
|
+
"@aws-cdk/aws-apigateway:authorizerChangeDeploymentLogicalId": true,
|
|
45
|
+
"@aws-cdk/aws-ec2:launchTemplateDefaultUserData": true,
|
|
46
|
+
"@aws-cdk/aws-secretsmanager:useAttachedSecretResourcePolicyForSecretTargetAttachments": true,
|
|
47
|
+
"@aws-cdk/aws-redshift:columnId": true,
|
|
48
|
+
"@aws-cdk/aws-stepfunctions-tasks:enableEmrServicePolicyV2": true,
|
|
49
|
+
"@aws-cdk/aws-ec2:restrictDefaultSecurityGroup": true,
|
|
50
|
+
"@aws-cdk/aws-apigateway:requestValidatorUniqueId": true,
|
|
51
|
+
"@aws-cdk/aws-kms:aliasNameRef": true,
|
|
52
|
+
"@aws-cdk/aws-autoscaling:generateLaunchTemplateInsteadOfLaunchConfig": true,
|
|
53
|
+
"@aws-cdk/core:includePrefixInUniqueNameGeneration": true,
|
|
54
|
+
"@aws-cdk/aws-efs:denyAnonymousAccess": true,
|
|
55
|
+
"@aws-cdk/aws-opensearchservice:enableOpensearchMultiAzWithStandby": true,
|
|
56
|
+
"@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion": true,
|
|
57
|
+
"@aws-cdk/aws-efs:mountTargetOrderInsensitiveLogicalId": true,
|
|
58
|
+
"@aws-cdk/aws-rds:auroraClusterChangeScopeOfInstanceParameterGroupWithEachParameters": true,
|
|
59
|
+
"@aws-cdk/aws-appsync:useArnForSourceApiAssociationIdentifier": true,
|
|
60
|
+
"@aws-cdk/aws-rds:preventRenderingDeprecatedCredentials": true,
|
|
61
|
+
"@aws-cdk/aws-codepipeline-actions:useNewDefaultBranchForCodeCommitSource": true,
|
|
62
|
+
"@aws-cdk/aws-cloudwatch-actions:changeLambdaPermissionLogicalIdForLambdaAction": true,
|
|
63
|
+
"@aws-cdk/aws-codepipeline:crossAccountKeysDefaultValueToFalse": true,
|
|
64
|
+
"@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2": true,
|
|
65
|
+
"@aws-cdk/aws-kms:reduceCrossAccountRegionPolicyScope": true,
|
|
66
|
+
"@aws-cdk/aws-eks:nodegroupNameAttribute": true,
|
|
67
|
+
"@aws-cdk/aws-ec2:ebsDefaultGp3Volume": true,
|
|
68
|
+
"@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": true,
|
|
69
|
+
"@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": false,
|
|
70
|
+
"@aws-cdk/aws-s3:keepNotificationInImportedBucket": false
|
|
71
|
+
}
|
|
72
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vQHR5cGVzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRW52TmFtZSA9ICd1YXQnIHwgJ3Byb2QnO1xuZXhwb3J0IHR5cGUgQnVpbGRDb25maWcgPSB7XG4gIGVudk5hbWU6IEVudk5hbWU7XG4gIGVudlBhdGg6IHN0cmluZztcbiAgc2VydmljZTogc3RyaW5nO1xuICBjb21wYW55OiBzdHJpbmc7XG4gIGF3czoge1xuICAgIGFjY291bnQ6IHN0cmluZztcbiAgICByZWdpb246IHN0cmluZztcbiAgfTtcbn07XG4iXX0=
|
package/dist/bin/cdk.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
require("source-map-support/register");
|
|
5
|
+
const initLaravelBasedCdkStack_1 = require("../util/initLaravelBasedCdkStack");
|
|
6
|
+
(0, initLaravelBasedCdkStack_1.initLaravelBasedCdkStack)();
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vYmluL2Nkay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx1Q0FBcUM7QUFDckMsK0VBQTRFO0FBRTVFLElBQUEsbURBQXdCLEdBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCAnc291cmNlLW1hcC1zdXBwb3J0L3JlZ2lzdGVyJztcbmltcG9ydCB7IGluaXRMYXJhdmVsQmFzZWRDZGtTdGFjayB9IGZyb20gJy4uL3V0aWwvaW5pdExhcmF2ZWxCYXNlZENka1N0YWNrJztcblxuaW5pdExhcmF2ZWxCYXNlZENka1N0YWNrKCk7Il19
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
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("./lib/laravel-based-microservice-stack"), exports);
|
|
18
|
+
__exportStar(require("./util/initLaravelBasedCdkStack"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUVBQXVEO0FBQ3ZELGtFQUFnRCIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2xhcmF2ZWwtYmFzZWQtbWljcm9zZXJ2aWNlLXN0YWNrJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbC9pbml0TGFyYXZlbEJhc2VkQ2RrU3RhY2snOyJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as cdk from 'aws-cdk-lib';
|
|
2
|
+
import { Construct } from 'constructs';
|
|
3
|
+
import { BuildConfig } from '../@types/common';
|
|
4
|
+
export declare class LaravelBasedMicroserviceStack extends cdk.Stack {
|
|
5
|
+
constructor(scope: Construct, id: string, buildConfig: BuildConfig, props?: cdk.StackProps);
|
|
6
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LaravelBasedMicroserviceStack = void 0;
|
|
4
|
+
const cdk = require("aws-cdk-lib");
|
|
5
|
+
class LaravelBasedMicroserviceStack extends cdk.Stack {
|
|
6
|
+
constructor(scope, id, buildConfig, props) {
|
|
7
|
+
super(scope, id, props);
|
|
8
|
+
new cdk.CfnOutput(this, 'buildConfig', { value: JSON.stringify(buildConfig) });
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.LaravelBasedMicroserviceStack = LaravelBasedMicroserviceStack;
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFyYXZlbC1iYXNlZC1taWNyb3NlcnZpY2Utc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvbGFyYXZlbC1iYXNlZC1taWNyb3NlcnZpY2Utc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW1DO0FBSW5DLE1BQWEsNkJBQThCLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFDMUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxXQUF3QixFQUFHLEtBQXNCO1FBQ3pGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEVBQUMsQ0FBQyxDQUFBO0lBQzlFLENBQUM7Q0FDRjtBQU5ELHNFQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQnVpbGRDb25maWcgfSBmcm9tICcuLi9AdHlwZXMvY29tbW9uJztcblxuZXhwb3J0IGNsYXNzIExhcmF2ZWxCYXNlZE1pY3Jvc2VydmljZVN0YWNrIGV4dGVuZHMgY2RrLlN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYnVpbGRDb25maWc6IEJ1aWxkQ29uZmlnLCAgcHJvcHM/OiBjZGsuU3RhY2tQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgbmV3IGNkay5DZm5PdXRwdXQodGhpcywgJ2J1aWxkQ29uZmlnJywge3ZhbHVlOiBKU09OLnN0cmluZ2lmeShidWlsZENvbmZpZyl9KVxuICB9XG59XG4iXX0=
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import * as cdk from 'aws-cdk-lib';
|
|
3
|
+
// import { Template } from 'aws-cdk-lib/assertions';
|
|
4
|
+
// import * as Cdk from '../lib/cdk-stack';
|
|
5
|
+
// example test. To run these tests, uncomment this file along with the
|
|
6
|
+
// example resource in lib/cdk-stack.ts
|
|
7
|
+
test('SQS Queue Created', () => {
|
|
8
|
+
// const app = new cdk.App();
|
|
9
|
+
// // WHEN
|
|
10
|
+
// const stack = new Cdk.CdkStack(app, 'MyTestStack');
|
|
11
|
+
// // THEN
|
|
12
|
+
// const template = Template.fromStack(stack);
|
|
13
|
+
// template.hasResourceProperties('AWS::SQS::Queue', {
|
|
14
|
+
// VisibilityTimeout: 300
|
|
15
|
+
// });
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90ZXN0L2Nkay50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxzQ0FBc0M7QUFDdEMscURBQXFEO0FBQ3JELDJDQUEyQztBQUUzQyx1RUFBdUU7QUFDdkUsdUNBQXVDO0FBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsK0JBQStCO0lBQy9CLGNBQWM7SUFDZCx3REFBd0Q7SUFDeEQsY0FBYztJQUNkLGdEQUFnRDtJQUVoRCx3REFBd0Q7SUFDeEQsNkJBQTZCO0lBQzdCLFFBQVE7QUFDUixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG4vLyBpbXBvcnQgeyBUZW1wbGF0ZSB9IGZyb20gJ2F3cy1jZGstbGliL2Fzc2VydGlvbnMnO1xuLy8gaW1wb3J0ICogYXMgQ2RrIGZyb20gJy4uL2xpYi9jZGstc3RhY2snO1xuXG4vLyBleGFtcGxlIHRlc3QuIFRvIHJ1biB0aGVzZSB0ZXN0cywgdW5jb21tZW50IHRoaXMgZmlsZSBhbG9uZyB3aXRoIHRoZVxuLy8gZXhhbXBsZSByZXNvdXJjZSBpbiBsaWIvY2RrLXN0YWNrLnRzXG50ZXN0KCdTUVMgUXVldWUgQ3JlYXRlZCcsICgpID0+IHtcbi8vICAgY29uc3QgYXBwID0gbmV3IGNkay5BcHAoKTtcbi8vICAgICAvLyBXSEVOXG4vLyAgIGNvbnN0IHN0YWNrID0gbmV3IENkay5DZGtTdGFjayhhcHAsICdNeVRlc3RTdGFjaycpO1xuLy8gICAgIC8vIFRIRU5cbi8vICAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4vLyAgIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcygnQVdTOjpTUVM6OlF1ZXVlJywge1xuLy8gICAgIFZpc2liaWxpdHlUaW1lb3V0OiAzMDBcbi8vICAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.applyTags = applyTags;
|
|
4
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
+
function applyTags(app, config) {
|
|
6
|
+
const tags = aws_cdk_lib_1.Tags.of(app);
|
|
7
|
+
tags.add('Service', config.service);
|
|
8
|
+
tags.add('Company', config.company);
|
|
9
|
+
tags.add('Environment', config.envName);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHlUYWdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdXRpbC9hcHBseVRhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSw4QkFLQztBQVJELDZDQUF3QztBQUd4QyxTQUFnQixTQUFTLENBQUMsR0FBUSxFQUFFLE1BQW1CO0lBQ3JELE1BQU0sSUFBSSxHQUFHLGtCQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHAsIFRhZ3MgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBCdWlsZENvbmZpZyB9IGZyb20gJy4uL0B0eXBlcy9jb21tb24nO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlUYWdzKGFwcDogQXBwLCBjb25maWc6IEJ1aWxkQ29uZmlnKTogdm9pZCB7XG4gIGNvbnN0IHRhZ3MgPSBUYWdzLm9mKGFwcCk7XG4gIHRhZ3MuYWRkKCdTZXJ2aWNlJywgY29uZmlnLnNlcnZpY2UpO1xuICB0YWdzLmFkZCgnQ29tcGFueScsIGNvbmZpZy5jb21wYW55KTtcbiAgdGFncy5hZGQoJ0Vudmlyb25tZW50JywgY29uZmlnLmVudk5hbWUpO1xufVxuIl19
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initBuildConfig = initBuildConfig;
|
|
4
|
+
const path = require("path");
|
|
5
|
+
const dotenv = require("dotenv");
|
|
6
|
+
const fs_1 = require("fs");
|
|
7
|
+
function initBuildConfig(app, envPath) {
|
|
8
|
+
const envName = app.node.tryGetContext('env');
|
|
9
|
+
if (!envName) {
|
|
10
|
+
throw new Error('Context variable `config` missing on CDK command. Pass as `--context env=<environment>');
|
|
11
|
+
}
|
|
12
|
+
const envToLoad = envPath ??
|
|
13
|
+
path.resolve(`.env.${envName}`) ??
|
|
14
|
+
path.join(__dirname, `.env.${envName}`);
|
|
15
|
+
if (!(0, fs_1.existsSync)(envToLoad)) {
|
|
16
|
+
throw new Error(`env path ${envToLoad} not found`);
|
|
17
|
+
}
|
|
18
|
+
dotenv.config({
|
|
19
|
+
path: envToLoad,
|
|
20
|
+
override: true,
|
|
21
|
+
});
|
|
22
|
+
return {
|
|
23
|
+
envName: process.env.ENV_NAME ?? 'uat',
|
|
24
|
+
envPath: envToLoad,
|
|
25
|
+
service: process.env.SERVICE ?? '',
|
|
26
|
+
company: process.env.COMPANY ?? 'glico',
|
|
27
|
+
aws: {
|
|
28
|
+
region: process.env.AWS_REGION ?? '',
|
|
29
|
+
account: process.env.AWS_ACCOUNT_ID ?? '',
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdEJ1aWxkQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdXRpbC9pbml0QnVpbGRDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFNQSwwQ0FnQ0M7QUFwQ0QsNkJBQThCO0FBQzlCLGlDQUFpQztBQUNqQywyQkFBZ0M7QUFFaEMsU0FBZ0IsZUFBZSxDQUFDLEdBQVEsRUFBRSxPQUFnQjtJQUN4RCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixNQUFNLElBQUksS0FBSyxDQUNiLHdGQUF3RixDQUN6RixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sU0FBUyxHQUNiLE9BQU87UUFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsT0FBTyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBRTFDLElBQUksQ0FBQyxJQUFBLGVBQVUsRUFBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1FBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxTQUFTLFlBQVksQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ1osSUFBSSxFQUFFLFNBQVM7UUFDZixRQUFRLEVBQUUsSUFBSTtLQUNmLENBQUMsQ0FBQztJQUVILE9BQU87UUFDTCxPQUFPLEVBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFvQixJQUFJLEtBQUs7UUFDbkQsT0FBTyxFQUFFLFNBQVM7UUFDbEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUU7UUFDbEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLE9BQU87UUFDdkMsR0FBRyxFQUFFO1lBQ0gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEVBQUU7WUFDcEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxJQUFJLEVBQUU7U0FDMUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFwcCB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IEJ1aWxkQ29uZmlnLCBFbnZOYW1lIH0gZnJvbSAnLi4vQHR5cGVzL2NvbW1vbic7XG5pbXBvcnQgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcbmltcG9ydCAqIGFzIGRvdGVudiBmcm9tICdkb3RlbnYnO1xuaW1wb3J0IHsgZXhpc3RzU3luYyB9IGZyb20gJ2ZzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRCdWlsZENvbmZpZyhhcHA6IEFwcCwgZW52UGF0aD86IHN0cmluZyk6IEJ1aWxkQ29uZmlnIHtcbiAgY29uc3QgZW52TmFtZSA9IGFwcC5ub2RlLnRyeUdldENvbnRleHQoJ2VudicpO1xuICBpZiAoIWVudk5hbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAnQ29udGV4dCB2YXJpYWJsZSBgY29uZmlnYCBtaXNzaW5nIG9uIENESyBjb21tYW5kLiBQYXNzIGFzIGAtLWNvbnRleHQgZW52PTxlbnZpcm9ubWVudD4nLFxuICAgICk7XG4gIH1cblxuICBjb25zdCBlbnZUb0xvYWQgPVxuICAgIGVudlBhdGggPz9cbiAgICBwYXRoLnJlc29sdmUoYC5lbnYuJHtlbnZOYW1lfWApID8/XG4gICAgcGF0aC5qb2luKF9fZGlybmFtZSwgYC5lbnYuJHtlbnZOYW1lfWApO1xuXG4gIGlmICghZXhpc3RzU3luYyhlbnZUb0xvYWQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBlbnYgcGF0aCAke2VudlRvTG9hZH0gbm90IGZvdW5kYCk7XG4gIH1cblxuICBkb3RlbnYuY29uZmlnKHtcbiAgICBwYXRoOiBlbnZUb0xvYWQsXG4gICAgb3ZlcnJpZGU6IHRydWUsXG4gIH0pO1xuXG4gIHJldHVybiB7XG4gICAgZW52TmFtZTogKHByb2Nlc3MuZW52LkVOVl9OQU1FIGFzIEVudk5hbWUpID8/ICd1YXQnLFxuICAgIGVudlBhdGg6IGVudlRvTG9hZCxcbiAgICBzZXJ2aWNlOiBwcm9jZXNzLmVudi5TRVJWSUNFID8/ICcnLFxuICAgIGNvbXBhbnk6IHByb2Nlc3MuZW52LkNPTVBBTlkgPz8gJ2dsaWNvJyxcbiAgICBhd3M6IHtcbiAgICAgIHJlZ2lvbjogcHJvY2Vzcy5lbnYuQVdTX1JFR0lPTiA/PyAnJyxcbiAgICAgIGFjY291bnQ6IHByb2Nlc3MuZW52LkFXU19BQ0NPVU5UX0lEID8/ICcnLFxuICAgIH0sXG4gIH07XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function initLaravelBasedCdkStack(): void;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initLaravelBasedCdkStack = initLaravelBasedCdkStack;
|
|
4
|
+
const cdk = require("aws-cdk-lib");
|
|
5
|
+
const laravel_based_microservice_stack_1 = require("../lib/laravel-based-microservice-stack");
|
|
6
|
+
const initBuildConfig_1 = require("../util/initBuildConfig");
|
|
7
|
+
const applyTags_1 = require("../util/applyTags");
|
|
8
|
+
function initLaravelBasedCdkStack() {
|
|
9
|
+
const app = new cdk.App();
|
|
10
|
+
const buildConfig = (0, initBuildConfig_1.initBuildConfig)(app);
|
|
11
|
+
(0, applyTags_1.applyTags)(app, buildConfig);
|
|
12
|
+
new laravel_based_microservice_stack_1.LaravelBasedMicroserviceStack(app, 'LaravelBasedMicroserviceStack', buildConfig, {
|
|
13
|
+
env: buildConfig.aws,
|
|
14
|
+
/* If you don't specify 'env', this stack will be environment-agnostic.
|
|
15
|
+
* Account/Region-dependent features and context lookups will not work,
|
|
16
|
+
* but a single synthesized template can be deployed anywhere. */
|
|
17
|
+
/* Uncomment the next line to specialize this stack for the AWS Account
|
|
18
|
+
* and Region that are implied by the current CLI configuration. */
|
|
19
|
+
// env: { account: process.env.CDK_DEFAULT_ACCOUNT, region: process.env.CDK_DEFAULT_REGION },
|
|
20
|
+
/* Uncomment the next line if you know exactly what Account and Region you
|
|
21
|
+
* want to deploy the stack to. */
|
|
22
|
+
// env: { account: '123456789012', region: 'us-east-1' },
|
|
23
|
+
/* For more information, see https://docs.aws.amazon.com/cdk/latest/guide/environments.html */
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdExhcmF2ZWxCYXNlZENka1N0YWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdXRpbC9pbml0TGFyYXZlbEJhc2VkQ2RrU3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLQSw0REEwQkM7QUEvQkQsbUNBQW1DO0FBQ25DLDhGQUF3RjtBQUN4Riw2REFBMEQ7QUFDMUQsaURBQThDO0FBRTlDLFNBQWdCLHdCQUF3QjtJQUN0QyxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMxQixNQUFNLFdBQVcsR0FBRyxJQUFBLGlDQUFlLEVBQUMsR0FBRyxDQUFDLENBQUM7SUFDekMsSUFBQSxxQkFBUyxFQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUU1QixJQUFJLGdFQUE2QixDQUMvQixHQUFHLEVBQ0gsK0JBQStCLEVBQy9CLFdBQVcsRUFDWDtRQUNFLEdBQUcsRUFBRSxXQUFXLENBQUMsR0FBRztRQUNwQjs7eUVBRWlFO1FBRWpFOzJFQUNtRTtRQUNuRSw2RkFBNkY7UUFFN0Y7MENBQ2tDO1FBQ2xDLHlEQUF5RDtRQUV6RCw4RkFBOEY7S0FDL0YsQ0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBMYXJhdmVsQmFzZWRNaWNyb3NlcnZpY2VTdGFjayB9IGZyb20gJy4uL2xpYi9sYXJhdmVsLWJhc2VkLW1pY3Jvc2VydmljZS1zdGFjayc7XG5pbXBvcnQgeyBpbml0QnVpbGRDb25maWcgfSBmcm9tICcuLi91dGlsL2luaXRCdWlsZENvbmZpZyc7XG5pbXBvcnQgeyBhcHBseVRhZ3MgfSBmcm9tICcuLi91dGlsL2FwcGx5VGFncyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0TGFyYXZlbEJhc2VkQ2RrU3RhY2soKSB7XG4gIGNvbnN0IGFwcCA9IG5ldyBjZGsuQXBwKCk7XG4gIGNvbnN0IGJ1aWxkQ29uZmlnID0gaW5pdEJ1aWxkQ29uZmlnKGFwcCk7XG4gIGFwcGx5VGFncyhhcHAsIGJ1aWxkQ29uZmlnKTtcblxuICBuZXcgTGFyYXZlbEJhc2VkTWljcm9zZXJ2aWNlU3RhY2soXG4gICAgYXBwLFxuICAgICdMYXJhdmVsQmFzZWRNaWNyb3NlcnZpY2VTdGFjaycsXG4gICAgYnVpbGRDb25maWcsXG4gICAge1xuICAgICAgZW52OiBidWlsZENvbmZpZy5hd3MsXG4gICAgICAvKiBJZiB5b3UgZG9uJ3Qgc3BlY2lmeSAnZW52JywgdGhpcyBzdGFjayB3aWxsIGJlIGVudmlyb25tZW50LWFnbm9zdGljLlxuICAgICAgICogQWNjb3VudC9SZWdpb24tZGVwZW5kZW50IGZlYXR1cmVzIGFuZCBjb250ZXh0IGxvb2t1cHMgd2lsbCBub3Qgd29yayxcbiAgICAgICAqIGJ1dCBhIHNpbmdsZSBzeW50aGVzaXplZCB0ZW1wbGF0ZSBjYW4gYmUgZGVwbG95ZWQgYW55d2hlcmUuICovXG5cbiAgICAgIC8qIFVuY29tbWVudCB0aGUgbmV4dCBsaW5lIHRvIHNwZWNpYWxpemUgdGhpcyBzdGFjayBmb3IgdGhlIEFXUyBBY2NvdW50XG4gICAgICAgKiBhbmQgUmVnaW9uIHRoYXQgYXJlIGltcGxpZWQgYnkgdGhlIGN1cnJlbnQgQ0xJIGNvbmZpZ3VyYXRpb24uICovXG4gICAgICAvLyBlbnY6IHsgYWNjb3VudDogcHJvY2Vzcy5lbnYuQ0RLX0RFRkFVTFRfQUNDT1VOVCwgcmVnaW9uOiBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9SRUdJT04gfSxcblxuICAgICAgLyogVW5jb21tZW50IHRoZSBuZXh0IGxpbmUgaWYgeW91IGtub3cgZXhhY3RseSB3aGF0IEFjY291bnQgYW5kIFJlZ2lvbiB5b3VcbiAgICAgICAqIHdhbnQgdG8gZGVwbG95IHRoZSBzdGFjayB0by4gKi9cbiAgICAgIC8vIGVudjogeyBhY2NvdW50OiAnMTIzNDU2Nzg5MDEyJywgcmVnaW9uOiAndXMtZWFzdC0xJyB9LFxuXG4gICAgICAvKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jZGsvbGF0ZXN0L2d1aWRlL2Vudmlyb25tZW50cy5odG1sICovXG4gICAgfSxcbiAgKTtcbn1cbiJdfQ==
|
package/jest.config.js
ADDED
package/package.json
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@glicogh/healthcare-cdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "CDK automations",
|
|
5
5
|
"bin": {
|
|
6
6
|
"cdk": "bin/cdk.js"
|
|
7
7
|
},
|
|
8
8
|
"scripts": {
|
|
9
|
-
"build": "tsc",
|
|
9
|
+
"build": "rm -rf ./dist && tsc",
|
|
10
10
|
"watch": "tsc -w",
|
|
11
11
|
"test": "jest",
|
|
12
|
-
"cdk": "cdk"
|
|
12
|
+
"cdk": "cdk",
|
|
13
|
+
"publish": "npm run build && npm publish"
|
|
13
14
|
},
|
|
15
|
+
"main": "dist/index.js",
|
|
14
16
|
"devDependencies": {
|
|
15
17
|
"@types/jest": "^29.5.12",
|
|
16
18
|
"@types/node": "20.14.9",
|
|
@@ -30,8 +32,5 @@
|
|
|
30
32
|
"type": "git",
|
|
31
33
|
"url": "git+https://github.com/glicogh/healthcare-automations.git",
|
|
32
34
|
"directory": "cdk"
|
|
33
|
-
}
|
|
34
|
-
"files": [
|
|
35
|
-
"lib/*"
|
|
36
|
-
]
|
|
35
|
+
}
|
|
37
36
|
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2020",
|
|
4
|
+
"module": "commonjs",
|
|
5
|
+
"lib": [
|
|
6
|
+
"es2020",
|
|
7
|
+
"dom"
|
|
8
|
+
],
|
|
9
|
+
"declaration": true,
|
|
10
|
+
"strict": true,
|
|
11
|
+
"noImplicitAny": true,
|
|
12
|
+
"strictNullChecks": true,
|
|
13
|
+
"noImplicitThis": true,
|
|
14
|
+
"alwaysStrict": true,
|
|
15
|
+
"noUnusedLocals": false,
|
|
16
|
+
"noUnusedParameters": false,
|
|
17
|
+
"noImplicitReturns": true,
|
|
18
|
+
"noFallthroughCasesInSwitch": false,
|
|
19
|
+
"inlineSourceMap": true,
|
|
20
|
+
"inlineSources": true,
|
|
21
|
+
"experimentalDecorators": true,
|
|
22
|
+
"strictPropertyInitialization": false,
|
|
23
|
+
"typeRoots": [
|
|
24
|
+
"./node_modules/@types", "@types"
|
|
25
|
+
],
|
|
26
|
+
"outDir": "./dist"
|
|
27
|
+
},
|
|
28
|
+
"exclude": [
|
|
29
|
+
"node_modules",
|
|
30
|
+
"cdk.out"
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import * as cdk from 'aws-cdk-lib';
|
|
2
|
-
import { Construct } from 'constructs';
|
|
3
|
-
import { BuildConfig } from '../@types/common';
|
|
4
|
-
|
|
5
|
-
export class LaravelBasedMicroserviceStack extends cdk.Stack {
|
|
6
|
-
constructor(scope: Construct, id: string, buildConfig: BuildConfig, props?: cdk.StackProps) {
|
|
7
|
-
super(scope, id, props);
|
|
8
|
-
|
|
9
|
-
new cdk.CfnOutput(this, 'buildConfig', {value: JSON.stringify(buildConfig)})
|
|
10
|
-
}
|
|
11
|
-
}
|