raindancers-network
Version:
Extensions to the ec2.Vpc Constructs
53 lines • 6.16 kB
JavaScript
;
var _a, _b;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CrossRegionParameterWriter = exports.CrossRegionParameterReader = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
// ssm-parameter-reader.ts
const aws_cdk_lib_1 = require("aws-cdk-lib");
const constructs = require("constructs");
class CrossRegionParameterReader extends aws_cdk_lib_1.custom_resources.AwsCustomResource {
constructor(scope, name, props) {
const ssmAwsSdkCall = {
service: 'SSM',
action: 'getParameter',
parameters: {
Name: props.parameterName,
},
region: props.region,
physicalResourceId: aws_cdk_lib_1.custom_resources.PhysicalResourceId.of(`${props.parameterName}-${props.region}`),
};
super(scope, name, {
onUpdate: ssmAwsSdkCall,
policy: {
statements: [
new aws_cdk_lib_1.aws_iam.PolicyStatement({
resources: ['*'],
actions: ['ssm:GetParameter'],
effect: aws_cdk_lib_1.aws_iam.Effect.ALLOW,
}),
],
},
});
}
parameterValue() {
return this.getResponseField('Parameter.Value').toString();
}
}
exports.CrossRegionParameterReader = CrossRegionParameterReader;
_a = JSII_RTTI_SYMBOL_1;
CrossRegionParameterReader[_a] = { fqn: "raindancers-network.ssm.CrossRegionParameterReader", version: "1.29.3" };
class CrossRegionParameterWriter extends constructs.Construct {
constructor(scope, id, props) {
super(scope, id);
new aws_cdk_lib_1.aws_ssm.StringParameter(this, 'Route53HostedZoneIdSSMParam', {
parameterName: props.parameterName,
description: 'The Route 53 hosted zone id for this account',
stringValue: props.value,
});
}
}
exports.CrossRegionParameterWriter = CrossRegionParameterWriter;
_b = JSII_RTTI_SYMBOL_1;
CrossRegionParameterWriter[_b] = { fqn: "raindancers-network.ssm.CrossRegionParameterWriter", version: "1.29.3" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NtUGFyYW1ldGVyUmVhZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NzbS9zc21QYXJhbWV0ZXJSZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsNkNBSXFCO0FBQ3JCLHlDQUF5QztBQVF6QyxNQUFhLDBCQUEyQixTQUFRLDhCQUFFLENBQUMsaUJBQWlCO0lBQ2xFLFlBQVksS0FBMkIsRUFBRSxJQUFZLEVBQUUsS0FBc0M7UUFFM0YsTUFBTSxhQUFhLEdBQWtCO1lBQ25DLE9BQU8sRUFBRSxLQUFLO1lBQ2QsTUFBTSxFQUFFLGNBQWM7WUFDdEIsVUFBVSxFQUFFO2dCQUNWLElBQUksRUFBRSxLQUFLLENBQUMsYUFBYTthQUMxQjtZQUNELE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixrQkFBa0IsRUFBRSw4QkFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ3ZGLENBQUM7UUFFRixLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRTtZQUNqQixRQUFRLEVBQUUsYUFBYTtZQUN2QixNQUFNLEVBQUU7Z0JBQ04sVUFBVSxFQUFFO29CQUNWLElBQUkscUJBQUcsQ0FBQyxlQUFlLENBQUM7d0JBQ3RCLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQzt3QkFDaEIsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7d0JBQzdCLE1BQU0sRUFBRSxxQkFBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLO3FCQUN6QixDQUFDO2lCQUNIO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzdELENBQUM7O0FBN0JILGdFQThCQzs7O0FBU0QsTUFBYSwwQkFBMkIsU0FBUSxVQUFVLENBQUMsU0FBUztJQUNsRSxZQUFZLEtBQTJCLEVBQUUsRUFBVSxFQUFFLEtBQXNDO1FBQ3pGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxxQkFBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUU7WUFDM0QsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhO1lBQ2xDLFdBQVcsRUFBRSw4Q0FBOEM7WUFDM0QsV0FBVyxFQUFFLEtBQUssQ0FBQyxLQUFLO1NBQ3pCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBVEgsZ0VBVUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBzc20tcGFyYW1ldGVyLXJlYWRlci50c1xuaW1wb3J0IHtcbiAgY3VzdG9tX3Jlc291cmNlcyBhcyBjcixcbiAgYXdzX2lhbSBhcyBpYW0sXG4gIGF3c19zc20gYXMgc3NtLFxufSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3Jvc3NSZWdpb25QYXJhbWV0ZXJSZWFkZXJQcm9wcyB7XG4gIHJlYWRvbmx5IHBhcmFtZXRlck5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBDcm9zc1JlZ2lvblBhcmFtZXRlclJlYWRlciBleHRlbmRzIGNyLkF3c0N1c3RvbVJlc291cmNlIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBuYW1lOiBzdHJpbmcsIHByb3BzOiBDcm9zc1JlZ2lvblBhcmFtZXRlclJlYWRlclByb3BzKSB7XG5cbiAgICBjb25zdCBzc21Bd3NTZGtDYWxsOiBjci5Bd3NTZGtDYWxsID0ge1xuICAgICAgc2VydmljZTogJ1NTTScsXG4gICAgICBhY3Rpb246ICdnZXRQYXJhbWV0ZXInLFxuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBOYW1lOiBwcm9wcy5wYXJhbWV0ZXJOYW1lLFxuICAgICAgfSxcbiAgICAgIHJlZ2lvbjogcHJvcHMucmVnaW9uLFxuICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBjci5QaHlzaWNhbFJlc291cmNlSWQub2YoYCR7cHJvcHMucGFyYW1ldGVyTmFtZX0tJHtwcm9wcy5yZWdpb259YCksXG4gICAgfTtcblxuICAgIHN1cGVyKHNjb3BlLCBuYW1lLCB7XG4gICAgICBvblVwZGF0ZTogc3NtQXdzU2RrQ2FsbCxcbiAgICAgIHBvbGljeToge1xuICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgcmVzb3VyY2VzOiBbJyonXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnc3NtOkdldFBhcmFtZXRlciddLFxuICAgICAgICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBwYXJhbWV0ZXJWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldFJlc3BvbnNlRmllbGQoJ1BhcmFtZXRlci5WYWx1ZScpLnRvU3RyaW5nKCk7XG4gIH1cbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIENyb3NzUmVnaW9uUGFyYW1ldGVyV3JpdGVyUHJvcHMge1xuICByZWFkb25seSBwYXJhbWV0ZXJOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBDcm9zc1JlZ2lvblBhcmFtZXRlcldyaXRlciBleHRlbmRzIGNvbnN0cnVjdHMuQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ3Jvc3NSZWdpb25QYXJhbWV0ZXJXcml0ZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBuZXcgc3NtLlN0cmluZ1BhcmFtZXRlcih0aGlzLCAnUm91dGU1M0hvc3RlZFpvbmVJZFNTTVBhcmFtJywge1xuICAgICAgcGFyYW1ldGVyTmFtZTogcHJvcHMucGFyYW1ldGVyTmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIFJvdXRlIDUzIGhvc3RlZCB6b25lIGlkIGZvciB0aGlzIGFjY291bnQnLFxuICAgICAgc3RyaW5nVmFsdWU6IHByb3BzLnZhbHVlLFxuICAgIH0pO1xuICB9XG59XG5cbiJdfQ==