当前位置: 首页 > 知识库问答 >
问题:

如何自定义AWS代码/云形成模板来创建特定的代码构建项目?

丌官子安
2023-03-14

如何定制AWS Codestar/Cloudformation模板以创建特定的代码构建项目

lambda这样的资源很好SAM

问题是,当我试图添加代码构建设置时,使用Yaml作为模板的特定docker映像(需要使用Python3.7而不是默认的2.7)。yml构建规范。yml

    AWSTemplateFormatVersion: 2010-09-09
    Transform:
    - AWS::Serverless-2016-10-31
    - AWS::CodeStar

    Parameters:
      ProjectId:
        Type: String
        Description: CodeStar projectId used to associate new resources to team members
    Resources:
      HelloWorld:
        Type: AWS::Serverless::Function
        Properties:
          Handler: index.lambda_handler
          Runtime: python3.7
          Layers:
          - arn:aws:lxxxxxxxxxxxxxxxxxxxxxx:1
          Role:
          - arn:aws:iam::xxxxxxxxxxxxxxxxxxxxxx

      CodeBuildProject:
        Type: AWS::CodeBuild::Project
        Properties:
          Description: Codebuild project Validate Packer Template
          Artifacts:
            Type: CODEPIPELINE
          Environment:
            Type: LINUX_CONTAINER
            ComputeType: BUILD_GENERAL1_SMALL
            Image: aws/codebuild/python:3.7.1
        Source:
          Type: CODEPIPELINE
        TimeoutInMinutes: 1

Lambda创建成功,但是代码构建部分被忽略,并且什么也没有发生

编辑2我能够编辑CF模板来强制创建另一个代码构建项目。不幸的是,它的功能类似于完全独立的组件

从文档中,似乎可以在创建后更改资源,这应该是更改一个更改集CF deploy。

但是在使用默认模板(sam Python)后,通过代码进行的管道更改呢?有没有办法在CodeStar中的管道中覆盖codebuild env(更改要使用的docker映像)?当然,通过COnsole,您可以更改和更新任何覆盖。但是文档中没有关于如何通过template.yml/template.json文件做到这一点

共有1个答案

法和硕
2023-03-14

根据我的发现,有几层组件当您通过控制台创建Codesar项目时,您选择默认模板。这是一个你需要编辑,改变底层CodePupeline

我找到了一个解决方案:通过CLI创建项目这样,你可以使用toolchain.yml(也可以通过控制台编辑,这与IAC原则相矛盾)并编辑它,以获得所需的任何类型的自定义管道

 类似资料:
  • 我想创建自己的自定义注释。我的框架是独立的java应用程序。当有人注释他的pojo类时,隐藏的代码将触发方法。 例如,今天在JavaEE中,我们有注释。当您使用注释您的类并另外实现MessageListener Interface时,有一个后面的代码将触发。当消息从队列/主题到达时。 如何创建可以添加到pojo并实现MyCustomMessageListener的注释()。 我想要的结果是触发(我

  • 问题内容: 我想创建自己的自定义注释。我的框架是独立Java应用程序。当有人注释他的pojo类时,后面的“隐藏”代码将触发方法。 例如,今天在Java EE中,我们具有注释。并且,当您使用注释类并另外实现MessageListener接口时,将触发一个背后的代码。当消息从队列/主题到达时。 如何创建批注(),可以将其添加到pojo并实现。 我希望得到的结果是(我的)“隐藏”代码的触发器,该触发器将

  • 我想为我的AWS基础设施和AWS Lambda函数设置一个CI/CD管道。我们的想法是让一切都在代码中,版本控制和自动化。我只想

  • 我有一个模型,在不同种类的其他代理(对象)之间有很多边(链接)。我想将这些边建模为代理,在那里我可以添加属性并安排操作。看看如何做这项工作的简单例子很有帮助? 更新:我按照您的说明运行模型时出错: 我认为它受到僵尸中这种方法的影响:(但我不知道哪里错了,因为错误消息没有提供具体的说明)

  • Your browser does not support the video tag.

  • 我在jdk-8和jdk-12之间重新安装,构建过程显示了不同的错误,但都失败了。两者都在日志中显示bcel包丢失作为第一个错误。 我在两个jdk中都用相应的值设置了JAVA_HOME;