将参数从AWS lambda传递到AWS CodePipeline

时间:2020-07-16 12:20:12

标签: aws-lambda aws-codepipeline aws-codebuild

我有一个lambda,它通过AWS开发工具包startPipelineExecution函数启动CodePipeline执行。是否有任何机制可以将参数传递给CodePipeline构建,以便它可以将CodeBuild构建中的值用作环境变量?

1 个答案:

答案 0 :(得分:3)

当前,CodePipeline不提供任何用于将参数传递到Source Stage的功能。根据CodePipeline设置,我将研究以下内容之一:

  1. 从Lambda函数中,将参数保存到Amazon Systems Manager-参数存储,并使用CodeBuilds内置方法在运行时检索它。 Buildspec:
    env:
      parameter-store:
        key: "value"
  1. 不是直接调用CodePipeline,而是将具有所有参数的文件上传到S3存储桶。然后将S3设置为Source Action Provider,以便在更新文件时触发CodePipeline。这样,您可以将文件作为工件传递到CodeBuild项目并在其中使用它。
  2. 如果您可以重新设计流程以直接从Lambda触发CodeBuild,则可以使用environment-variables-override标志调用startBuild。