开发者社区 问答 正文

云效使用指南:持续交付:构建:构建传入系统环境变量的完整列表


流水线上的构建任务,接受流水线框架传入的环境变量(包括系统自带的和用户在构建任务里自定义的),并可据此改变构建行为。详细介绍见 使用传入参数改变构建行为。本文档列出其中所有的系统自带的环境变量。

环境变量名说明
PACKAGE_LABEL包标签,比如testing、staging、production或默认值default。 详情
APP_NAME应用名。
CODE_BRANCH代码库分支名。
TIMESTAMP当前时间戳,比如20170622232633。

展开
收起
行者武松 2017-10-23 14:25:23 1978 分享 版权
阿里云 AI 助理回答

在阿里云的DevOps流水线服务中,环境变量是实现构建任务灵活性和可配置性的重要机制。这些环境变量允许您根据不同的上下文或条件来调整构建过程,无需直接修改构建脚本本身。除了您提到的几个系统自带的环境变量外,阿里云的DevOps流水线还支持更多环境变量以满足多样化的构建需求。以下是一些额外的系统自带环境变量示例,以及如何在阿里云DevOps平台中使用它们:

  1. BUILD_ID: 当前构建任务的唯一标识符。
  2. CI_PIPELINE_ID: 当前流水线的唯一标识符。
  3. CI_JOB_NAME: 正在执行的构建任务名称。
  4. CI_COMMIT_SHA: 触发当前构建的Git提交的SHA值。
  5. CI_PROJECT_PATH: 当前项目的完整路径名。
  6. CI_PIPELINE_URL: 流水线的Web URL。
  7. CI_JOB_URL: 当前构建任务的Web URL。
  8. GITLAB_USER_ID: 触发构建的操作者的用户ID(如果适用)。
  9. GITLAB_USER_EMAIL: 触发构建的操作者的邮箱地址(如果适用)。

要使用这些环境变量改变构建行为,您可以在构建脚本中直接引用它们。例如,如果您想基于PACKAGE_LABEL环境变量决定部署的目标环境,您的脚本可能包含如下逻辑:

if [ "$PACKAGE_LABEL" = "production" ]; then
    echo "Deploying to production environment..."
    # 部署到生产环境的命令
elif [ "$PACKAGE_LABEL" = "staging" ]; then
    echo "Deploying to staging environment..."
    # 部署到预发布环境的命令
else
    echo "Deploying to default environment..."
    # 部署到默认环境的命令
fi

在阿里云DevOps流水线配置界面,您还可以自定义环境变量,这些自定义变量将与系统自带的环境变量一起作用于构建过程中。自定义环境变量可以用来存储敏感信息(如数据库密码、API密钥等),或者提供特定于项目或构建的配置选项。

请注意,为了安全考虑,处理敏感信息时应使用阿里云提供的密钥管理服务(如KMS)来加密和解密这些变量,避免明文暴露在构建日志或环境中。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答