@pepperize/cdk-security-group
Version:
This project provides a CDK construct to create an EC2 SecurityGroup, which property `securityGroupName` returns the GroupName.
31 lines • 4.27 kB
JavaScript
;
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SecurityGroup = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const aws_cdk_lib_1 = require("aws-cdk-lib");
class SecurityGroup extends aws_cdk_lib_1.aws_ec2.SecurityGroup {
constructor(scope, id, props) {
super(scope, id, props);
const sdkCall = {
service: "EC2",
action: "describeSecurityGroups", // https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/EC2.html#describeSecurityGroups-property
parameters: {
GroupIds: [this.securityGroupId],
},
physicalResourceId: aws_cdk_lib_1.custom_resources.PhysicalResourceId.of(this.securityGroupId),
};
const securityGroup = new aws_cdk_lib_1.custom_resources.AwsCustomResource(this, "DescribeSGCustomResource", {
onCreate: sdkCall,
onUpdate: sdkCall,
policy: aws_cdk_lib_1.custom_resources.AwsCustomResourcePolicy.fromSdkCalls({
resources: aws_cdk_lib_1.custom_resources.AwsCustomResourcePolicy.ANY_RESOURCE,
}),
});
this.securityGroupName = securityGroup.getResponseField("SecurityGroups.0.GroupName");
}
}
exports.SecurityGroup = SecurityGroup;
_a = JSII_RTTI_SYMBOL_1;
SecurityGroup[_a] = { fqn: "@pepperize/cdk-security-group.SecurityGroup", version: "0.0.662" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBd0Q7QUFLeEQsTUFBYSxhQUFjLFNBQVEscUJBQU8sQ0FBQyxhQUFhO0lBS3RELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBeUI7UUFDakUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsTUFBTSxPQUFPLEdBQWdDO1lBQzNDLE9BQU8sRUFBRSxLQUFLO1lBQ2QsTUFBTSxFQUFFLHdCQUF3QixFQUFFLG1HQUFtRztZQUNySSxVQUFVLEVBQUU7Z0JBQ1YsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQzthQUNqQztZQUNELGtCQUFrQixFQUFFLDhCQUFnQixDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQ2pGLENBQUM7UUFFRixNQUFNLGFBQWEsR0FBRyxJQUFJLDhCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSwwQkFBMEIsRUFBRTtZQUM3RixRQUFRLEVBQUUsT0FBTztZQUNqQixRQUFRLEVBQUUsT0FBTztZQUNqQixNQUFNLEVBQUUsOEJBQWdCLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDO2dCQUM1RCxTQUFTLEVBQUUsOEJBQWdCLENBQUMsdUJBQXVCLENBQUMsWUFBWTthQUNqRSxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7O0FBMUJILHNDQTJCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c19lYzIsIGN1c3RvbV9yZXNvdXJjZXMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlHcm91cFByb3BzIGV4dGVuZHMgYXdzX2VjMi5TZWN1cml0eUdyb3VwUHJvcHMge31cblxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5R3JvdXAgZXh0ZW5kcyBhd3NfZWMyLlNlY3VyaXR5R3JvdXAge1xuICAvKipcbiAgICogQW4gYXR0cmlidXRlIHRoYXQgcmVwcmVzZW50cyB0aGUgc2VjdXJpdHkgZ3JvdXAgbmFtZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzZWN1cml0eUdyb3VwTmFtZTogc3RyaW5nO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2VjdXJpdHlHcm91cFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCBzZGtDYWxsOiBjdXN0b21fcmVzb3VyY2VzLkF3c1Nka0NhbGwgPSB7XG4gICAgICBzZXJ2aWNlOiBcIkVDMlwiLFxuICAgICAgYWN0aW9uOiBcImRlc2NyaWJlU2VjdXJpdHlHcm91cHNcIiwgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L0FXUy9FQzIuaHRtbCNkZXNjcmliZVNlY3VyaXR5R3JvdXBzLXByb3BlcnR5XG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIEdyb3VwSWRzOiBbdGhpcy5zZWN1cml0eUdyb3VwSWRdLFxuICAgICAgfSxcbiAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogY3VzdG9tX3Jlc291cmNlcy5QaHlzaWNhbFJlc291cmNlSWQub2YodGhpcy5zZWN1cml0eUdyb3VwSWQpLFxuICAgIH07XG5cbiAgICBjb25zdCBzZWN1cml0eUdyb3VwID0gbmV3IGN1c3RvbV9yZXNvdXJjZXMuQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJEZXNjcmliZVNHQ3VzdG9tUmVzb3VyY2VcIiwge1xuICAgICAgb25DcmVhdGU6IHNka0NhbGwsXG4gICAgICBvblVwZGF0ZTogc2RrQ2FsbCxcbiAgICAgIHBvbGljeTogY3VzdG9tX3Jlc291cmNlcy5Bd3NDdXN0b21SZXNvdXJjZVBvbGljeS5mcm9tU2RrQ2FsbHMoe1xuICAgICAgICByZXNvdXJjZXM6IGN1c3RvbV9yZXNvdXJjZXMuQXdzQ3VzdG9tUmVzb3VyY2VQb2xpY3kuQU5ZX1JFU09VUkNFLFxuICAgICAgfSksXG4gICAgfSk7XG5cbiAgICB0aGlzLnNlY3VyaXR5R3JvdXBOYW1lID0gc2VjdXJpdHlHcm91cC5nZXRSZXNwb25zZUZpZWxkKFwiU2VjdXJpdHlHcm91cHMuMC5Hcm91cE5hbWVcIik7XG4gIH1cbn1cbiJdfQ==