更新时间:2024-10-17 GMT+08:00
分享

创建源码构建任务

通过构建任务可以一键式生成软件包或者镜像包,实现“源码拉取->编译->打包->归档”的全流程自动化。

  • 在x86系统构建,构建出来的镜像是x86系统的镜像。
  • 在ARM系统构建,构建出来的镜像是ARM系统的镜像。

前提条件

  1. 已经创建集群,请参考购买集群。您可以根据您的实际业务需要选择创建CCE Turbo集群或者CCE Standard集群。
    • 构建任务会在CCE集群节点上启动一个构建容器,执行构建相关的操作。为了确保构建的安全性,建议您对CCE集群节点进行安全加固,请参考禁止容器获取宿主机元数据进行操作。
    • 如果您创建的是CCE Turbo集群,需要为集群配置SNAT规则,使之能够通过NAT网关访问公网用于拉取源码。否则,会导致执行源码构建任务的时候因为无法访问公网导致拉取源码失败,从而导致构建失败。为集群配置SNAT规则,请参考从容器访问公网
    • 构建任务依赖预置在构建容器中的JDK、Golang、Maven、Gradle、Ant或Node.js编译工具。
    • 支持同一个账号下的不同IAM用户操作同一个构建集群。如需对特定IAM用户取消构建权限,请参考创建ServiceStage自定义策略为该用户设置自定义策略,将“servicestage:assembling:create”“servicestage:assembling:modify”“servicestage:assembling:delete”权限设置为拒绝策略。
  2. 已为构建节点绑定弹性公网IP,请参考将弹性公网IP绑定至实例

创建源码构建任务

  1. 登录ServiceStage控制台。
  2. 选择“持续交付 > 构建”。
  3. 单击“基于源码构建”,参考下表设置构建工程基本信息,其中带“*”标志的参数为必填参数。

    参数

    说明

    *名称

    构建任务名称必须唯一,不能重复。

    长度为1到64个字符,可以包含字母、数字、下划线(_)或划线(-),以字母或数字开头。

    *企业项目

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。

    开通企业项目后可以使用。

    描述

    构建任务描述信息,长度不超过64个字符。

    *代码源来源

    • 选择源码仓库,需要先参考仓库授权创建授权,然后设置代码源来源。
    • 选择“样例库”,选择一个所需的样例。
    说明:

    源码使用的技术栈类型必须是Java、Tomcat、Node.js、Python或Php。

    *构建集群

    用于构建的集群,构建集群所在企业项目需为设置的“企业项目”

    设置过滤节点标签的“键”“值”,将构建任务下发到绑定了EIP的固定节点上。

    新增过滤标签,请参考添加节点标签

  4. 单击“下一步”。
  5. 选择构建模板。

    • 选择“Maven”、“Ant”、“Gradle”、“Go”或“Docker”模板构建,可同时编译并归档二进制包或Docker镜像,请执行6
    • 选择“自定义”构建,可自由定义构建方式,请执行8

  6. 选择归档方式。

    • 不归档:不添加Docker构建,也不归档。
    • 归档二进制包:不添加Docker构建,归档二进制包。
    • 归档镜像编译:添加Docker构建,归档Docker镜像。

  7. 根据6选择的归档方式,根据界面提示设置必填项参数配置。
  8. 单击“高级配置”,配置构建环境。

    1. 单击左侧栏目中的“添加插件”,进入“选择任务类型”界面。
    2. 单击目标任务类型的“选择”,添加任务类型,根据任务类型设置任务参数。

      在“编译”过程添加了通用构建命令行插件(Build Common Cmd)时,需要注意以下注意事项:

      • 输入“编译命令”,请在echo、cat、debug等命令中慎用敏感信息或者进行敏感信息加密,以免造成信息泄露。
      • 输入“编译命令”最多支持输入512个字符,否则会报任务输入参数错误。如果编译命令超过512个字符,可以根据实际业务情况,通过添加多个通用构建命令行插件(Build Common Cmd)来合理拆分编译命令为多步执行。
      • “语言”参数选择Python且“Python框架类型”选择符合WSGI标准的Python工程时,需要设置主模块和主模块函数。Python工程主模块和主模块函数名称示例如下:

        Python主模块:如果Python工程入口文件名为server.py,主模块名称则为server。

        Python主模块函数:如果Python工程入口文件server.py的应用函数名称为app=get_wsgi_application(),则主模块函数名称为app。

  9. 根据是否执行构建选择执行以下操作。

    • 执行构建:单击“构建”,保存设置并执行构建任务。
    • 不执行构建:单击“保存”,仅保存设置不执行构建。

后续操作

构建成功后,可以把应用组件托管到ServiceStage上,详细操作请参考使用容器部署方式基于界面配置创建并部署组件使用容器部署方式基于YAML配置创建并部署组件

相关文档