我有一个lambda,它通过AWS SDKstartPipelineExecution
函数启动CodePipeline执行。是否有任何机制可以将参数传递给CodePipeline构建,以便它可以将CodeBuild构建中的值用作环境变量?
当前CodePipeline不提供任何将参数传递到源阶段的功能。根据CodePipeline的设置,我会研究以下内容之一:
- 从您的Lambda函数中,将参数保存到Amazon Systems Manager-parameter Store,并使用CodeBuilds内置方法在运行时检索它。建筑规范:
env:
parameter-store:
key: "value"
- 与其直接调用CodePipeline,不如将包含所有参数的文件上传到S3存储桶中。然后将S3设置为源操作提供程序,以便在更新文件时触发CodePipeline。通过这种方式,您可以将文件作为工件传递给CodeBuild项目,并在那里使用它
- 如果您可以重新设计流以直接从Lambda触发CodeBuild,则可以使用环境变量覆盖标志调用startBuild