Jenkins 提供了许多内置环境变量,帮助你在 Jenkins 作业中获取关键信息。以下是一些常见的 Jenkins 内置环境变量:
1. BUILD_NUMBER
- 当前构建的序号(构建次数)。
- 例子:
BUILD_NUMBER=15
2. BUILD_ID
- 当前构建的唯一标识符。
- 例子:
BUILD_ID=2023-08-22_11-47-59
3. BUILD_DISPLAY_NAME
- 当前构建的显示名称,通常为
#BUILD_NUMBER
。 - 例子:
BUILD_DISPLAY_NAME=#15
4. JOB_NAME
- 当前构建的作业名称。
- 例子:
JOB_NAME=my-project-build
5. JOB_BASE_NAME
- 当前构建的作业基本名称(不含文件夹路径)。
- 例子:
JOB_BASE_NAME=my-project
6. BUILD_TAG
- 当前构建的标识,格式为
jenkins-${JOB_NAME}-${BUILD_NUMBER}
。 - 例子:
BUILD_TAG=jenkins-my-project-build-15
7. EXECUTOR_NUMBER
- 当前构建的执行器编号。
- 例子:
EXECUTOR_NUMBER=0
8. NODE_NAME
- 当前执行构建的节点名称,
master
表示主节点。 - 例子:
NODE_NAME=master
9. NODE_LABELS
- 当前节点的标签列表,以空格分隔。
- 例子:
NODE_LABELS=linux jdk8
10. WORKSPACE
- 当前构建的工作区路径。
- 例子:`WORKSPACE=/var/jenkins_home/workspace/my-project-build`
11. JENKINS_HOME
- Jenkins 主目录路径。
- 例子:`JENKINS_HOME=/var/jenkins_home`
12. JENKINS_URL
- Jenkins 实例的 URL。
- 例子:`JENKINS_URL=http://localhost:8080/`
13. BUILD_URL
- 当前构建的 URL。
- 例子:`BUILD_URL=http://localhost:8080/job/my-project-build/15/`
14. JOB_URL
- 当前作业的 URL。
- 例子:`JOB_URL=http://localhost:8080/job/my-project-build/`
15. GIT_COMMIT
- 当前 Git 仓库中检出的提交 ID。
- 例子:`GIT_COMMIT=abc123def456`
16. GIT_BRANCH
- 当前构建检出的 Git 分支。
- 例子:`GIT_BRANCH=origin/main`
17. GIT_URL
- 当前构建的 Git 仓库 URL。
- 例子:`GIT_URL=https://github.com/user/repo.git`
18. SVN_REVISION
- 当前检出的 SVN 修订版本号。
- 例子:`SVN_REVISION=1234`
19. SVN_URL
- 当前构建的 SVN 仓库 URL。
- 例子:`SVN_URL=https://svn.example.com/repo/trunk`
20. HUDSON_HOME
- Jenkins 主目录路径(与 `JENKINS_HOME` 相同)。
- 例子:`HUDSON_HOME=/var/jenkins_home`
21. HUDSON_URL
- Jenkins 实例的 URL(与 `JENKINS_URL` 相同)。
- 例子:`HUDSON_URL=http://localhost:8080/`
22. CHANGE_ID
- 当前构建的变更请求 ID(如 GitHub Pull Request)。
- 例子:`CHANGE_ID=42`
23. CHANGE_URL
- 当前变更请求的 URL。
- 例子:`CHANGE_URL=http://github.com/user/repo/pull/42`
24. CHANGE_TITLE
- 当前变更请求的标题。
- 例子:`CHANGE_TITLE="Fix issue #123"`
25. CHANGE_AUTHOR
- 当前变更请求的作者。
- 例子:`CHANGE_AUTHOR=user`
26. CHANGE_AUTHOR_DISPLAY_NAME
- 当前变更请求作者的显示名称。
- 例子:`CHANGE_AUTHOR_DISPLAY_NAME="User Name"`
27. CHANGE_AUTHOR_EMAIL
- 当前变更请求作者的电子邮件。
- 例子:`CHANGE_AUTHOR_EMAIL=user@example.com`
28. CHANGE_TARGET
- 当前变更请求的目标分支。
- 例子:`CHANGE_TARGET=main`
这些环境变量在 Jenkins 作业执行期间可以直接使用,帮助你访问和控制构建信息。如果你需要更多或自定义的变量,可以通过 Jenkins Pipeline 脚本定义。