下面的构建规范运行一些命令并在最后导出一个变量:
env:
exported-variables:
- PROPERTY_FROM_BUILD
我想在自定义管道阶段中使用此变量,但我不知道如何在此处获取它:
import { Stage, StageProps } from 'aws-cdk-lib';
class MyStage extends Stage {
constructor(scope: Construct, id: string, props: StageProps) {
new Stack(this, 'MyStack', {
PROPERTY_FROM_BUILD: '???'
});
}
}
让我发布更多细节,以防万一.我的代码管道如下所示:
const codePipeline = new cdk.pipelines.CodePipeline(this, 'MyPipeline', {...});
codePipeline.addStage(new MyStage(this, 'MyStage', {...})
codePipeline.buildPipeline();
如你所见,我只是创建了一个管道,添加我的stage并构建它.在此之后,我创建了一个代码构建项目和操作来运行我的构建规范:
const project = new cdk.aws_codebuild.PipelineProject(this, 'MyProject', {
buildSpec: cdk.aws_codebuild.BuildSpec.fromSourceFilename(`buildspec.yml`),
});
const action = new cdk.aws_codepipeline_actions.CodeBuildAction({
actionName: 'MyAction',
project: project,
});
codePipeline.pipeline.addStage({
stageName: 'MyActionStage',
actions: [action],
placement: {
rightBefore: codePipeline.pipeline.stage('MyStage')
}
});
它是有效的,并生成了一个很好的管道.有没有什么方法可以将PROPERTY_FROM_BUILD
从变量传递并在堆栈中使用?