代码之家  ›  专栏  ›  技术社区  ›  Jiew Meng

在codepipline中,我的CodeBuild如何解析前一个CloudFormation步骤创建的资源?

  •  0
  • Jiew Meng  · 技术社区  · 7 年前

    我已经设置了代码管道,比如:

    1. 来源:Github
    2. CodeBuild:Package SAM应用程序(云信息资源,如DB)
    3. 部署云信息:是否创建并执行变更集
    4. CodeBuild:我想为CloudFormation创建的数据库运行数据库迁移。。。但我怎么得到它。。。代码生成不支持来自我的管道的参数

    也许我的管道设计错了?

    2 回复  |  直到 7 年前
        1
  •  1
  •   TimB    7 年前

    CloudFormation操作可以输出堆栈参数,但目前codepipline中的CodeBuild操作不能同时接受代码工件和具有CloudFormation输出的工件。

    现在我会打电话给 aws cloudformation describe-stacks 从构建脚本中的CLI检索CloudFormation堆栈中的DB信息。

        2
  •  0
  •   Carlos Andres Zambrano Barrera    7 年前

    也许在第三步。你可以这样设置你的云层:

    1-创建数据库…将数据库名称导出为输出

    Outputs:
        DataBaseName:
            Description: "Name of the Database"
            Value: !Ref DataBaseName
    

    2-在代码构建中使用Boto3并使用 Describe Stacks 然后获取输出(数据库的名称和其他相关信息),现在可以在代码构建中使用advangate of Python并使用gnboto3开始迁移。

    response = client.describe_stacks(
        StackName='string',
        NextToken='string'
    )