我将env中的AWS用户名传递给Stackprops,如下所示
interface MyInterface extends StackProps {
user: string;
}
export class PipelineStack extends cdk.Stack {
constructor(scope: Construct, id: string, props: StackProps & { env: MyInterface}){
...
const pipeline = new pipelines.CodePipeline(this, 'Pipeline', {
pipelineName: 'mypipeline' + ${env.user}
}
...
}
}
当我运行cdk deploy
时,管道正确地拾取user
env变量。但是,在管道运行selfMutate
阶段之后,找不到user
变量。是否有方法在selfMutate
阶段之后保留传递给StackProps的变量?我希望保持selfMutate
打开。我正在从process.env.USER
中选取user
值。我知道当我运行cdk deploy
时,我已经配置了一个用户,因此它会选择该用户,当管道自变异并再次构建时,它没有AWS用户。我想知道我是否可以通过某种方式实现这一点?
1条答案
按热度按时间zvokhttg1#
我找到了解决方案。我现在检索用户名如下:
然后在构建步骤中,我将
AWS_USER
作为环境变量传递,值为env.user