typescript AWS代码管道自变异步骤重置StackProps环境

plupiseo  于 2023-03-13  发布在  TypeScript
关注(0)|答案(1)|浏览(108)

我将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时,管道正确地拾取userenv变量。但是,在管道运行selfMutate阶段之后,找不到user变量。是否有方法在selfMutate阶段之后保留传递给StackProps的变量?我希望保持selfMutate打开。我正在从process.env.USER中选取user值。我知道当我运行cdk deploy时,我已经配置了一个用户,因此它会选择该用户,当管道自变异并再次构建时,它没有AWS用户。我想知道我是否可以通过某种方式实现这一点?

zvokhttg

zvokhttg1#

我找到了解决方案。我现在检索用户名如下:

user = process.env.user || process.env.AWS_USER || "";

然后在构建步骤中,我将AWS_USER作为环境变量传递,值为env.user

相关问题