UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

2 lines (1 loc) 2.63 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DeploymentGroupBase=exports.ImportedDeploymentGroupBase=void 0;var predefined_deployment_config_1=()=>{var tmp=require("./predefined-deployment-config");return predefined_deployment_config_1=()=>tmp,tmp},utils_1=()=>{var tmp=require("./utils");return utils_1=()=>tmp,tmp},iam=()=>{var tmp=require("../../../aws-iam");return iam=()=>tmp,tmp},core_1=()=>{var tmp=require("../../../core");return core_1=()=>tmp,tmp},metadata_resource_1=()=>{var tmp=require("../../../core/lib/metadata-resource");return metadata_resource_1=()=>tmp,tmp};class ImportedDeploymentGroupBase extends core_1().Resource{constructor(scope,id,props){const deploymentGroupName=props.deploymentGroupName,deploymentGroupArn=core_1().Arn.format({partition:core_1().Aws.PARTITION,account:props.application.env.account,region:props.application.env.region,service:"codedeploy",resource:"deploymentgroup",resourceName:`${props.application.applicationName}/${deploymentGroupName}`,arnFormat:core_1().ArnFormat.COLON_RESOURCE_NAME});super(scope,id,{environmentFromArn:deploymentGroupArn}),(0,metadata_resource_1().addConstructMetadata)(this,props),this.deploymentGroupName=deploymentGroupName,this.deploymentGroupArn=deploymentGroupArn}_bindDeploymentConfig(config){return(0,predefined_deployment_config_1().isPredefinedDeploymentConfig)(config)?config.bindEnvironment(this):config}}exports.ImportedDeploymentGroupBase=ImportedDeploymentGroupBase;class DeploymentGroupBase extends core_1().Resource{constructor(scope,id,props){super(scope,id,{physicalName:props.deploymentGroupName}),(0,metadata_resource_1().addConstructMetadata)(this,props),this._role=props.role||new(iam()).Role(this,props.roleConstructId,{assumedBy:new(iam()).ServicePrincipal("codedeploy.amazonaws.com")}),this.node.addValidation({validate:()=>(0,utils_1().validateName)("Deployment group",this.physicalName)})}_bindDeploymentConfig(config){return(0,predefined_deployment_config_1().isPredefinedDeploymentConfig)(config)?config.bindEnvironment(this):config}_setNameAndArn(resource,application){this.deploymentGroupName=this.getResourceNameAttribute(resource.ref),this.deploymentGroupArn=this.getResourceArnAttribute(this.stack.formatArn({service:"codedeploy",resource:"deploymentgroup",resourceName:`${application.applicationName}/${resource.ref}`,arnFormat:core_1().ArnFormat.COLON_RESOURCE_NAME}),{service:"codedeploy",resource:"deploymentgroup",resourceName:`${application.applicationName}/${this.physicalName}`,arnFormat:core_1().ArnFormat.COLON_RESOURCE_NAME})}}exports.DeploymentGroupBase=DeploymentGroupBase;