在
.gitlab-ci.yml
文件中,GitLab CI/CD 提供了一系列预定义的常量和变量,这些常量和变量用于控制作业的行为、获取流水线信息等。以下是一些常见的预定义常量和变量:预定义的 when
常量
这些常量用于控制作业的运行时机:
-
always
:无论前一个作业是否成功,该作业都会运行。 -
on_success
:只有在前一个作业成功完成后,该作业才会运行。 -
on_failure
:只有在前一个作业失败时,该作业才会运行。 -
manual
:作业需要手动触发,不会自动运行。 -
delayed
:延迟运行作业,需要指定延迟时间。
预定义的 CI/CD 环境变量
这些变量提供了关于流水线、作业和运行环境的信息:
-
CI
:指定作业在 CI 环境中完成。 -
CI_JOB_ID
:当前作业的唯一 ID。 -
CI_JOB_NAME
:作业名称。 -
CI_JOB_STAGE
:作业所属的阶段名称。 -
CI_PROJECT_DIR
:存放克隆项目的完整路径。 -
CI_COMMIT_REF_NAME
:当前分支或标签名称。 -
CI_COMMIT_SHA
:当前提交的 SHA 值。 -
CI_PIPELINE_ID
:当前流水线的唯一 ID。 -
CI_PIPELINE_SOURCE
:流水线的触发方式。 -
CI_REPOSITORY_URL
:克隆 Git 仓库的 URL。 -
CI_RUNNER_ID
:当前运行器的唯一 ID。
这些预定义的常量和变量可以直接在
.gitlab-ci.yml
文件中使用,而无需事先声明。它们为 CI/CD 流水线的配置和脚本编写提供了极大的灵活性和便利性。复制
再试一次
分享
在 Jenkins 中,常量通常是指一些预定义的全局变量或环境变量,这些变量可以在 Pipeline 脚本中直接使用。以下是一些常见的 Jenkins 常量和全局变量:
环境变量(env)
这些变量由 Jenkins 提供,可以在 Pipeline 脚本中通过 env.VARNAME 或直接通过 VARNAME 访问:
BUILD_NUMBER:当前构建的编号。
JOB_NAME:当前项目的名称。
BUILD_URL:当前构建的完整 URL。
WORKSPACE:分配给构建的工作区目录的绝对路径。
JENKINS_HOME:Jenkins 主节点上分配的目录的绝对路径。
NODE_NAME:代理的名称,如果构建是在代理上运行,否则为“主”。
GIT_BRANCH:构建的 Git 分支。