JenKins 节点环境变量设置

本文详细介绍了如何在Jenkins中管理和配置节点环境变量,包括全局工具和节点工具的设置顺序,以及全局环境变量和节点环境变量的路径与配置过程。

Jenkins节点环境变量定义

Jenkins在构建的时候,如果使用节点构建可能存在一些个性化环境变量,此时需要在节点中单独管理

节点环境变量配置

  • 节点工具配置
  • 节点环境变量配置

节点工具配置

  • 节点工具的使用顺序 节点工具 > 全局工具
  • 节点工具配置方式 先配置全局工具,后配置节点工具
  • 全局工具路径 Dashboard -> 系统管理(Manage Jenkins) -> 全局工具配置(Global Tool Configuration)
  • 节点工具配置路径 Dashboard -> 系统管理(Manage Jenkins) -> 节点管理(Manage Nodes and Clouds)-> 配置从节点 -> 节点属性 -> 工具位置

节点环境变量配置

  • 节点环境变量的使用顺序 节点环境变量 > 全局环境变量
  • 全局环境变量路径 Dashboard -> 系统管理(Manage Jenkins) -> 系统配置(Configure System)-> 全局属性
  • 节点环境变量配置路径 Dashboard -> 系统管理(Manage Jenkins) -> 节点管理(Manage Nodes and Clouds)-> 配置从节点 -> 节点属性 -> 环境变量

全局工具及变量配置:


节点工具及变量配置:

Jenkins 提供了多种内置环境变量,这些变量可以在构建过程中被用于 Shell 脚本、批处理作业、Maven 构建、Ant 构建等多种场景。以下是一些常见的 Jenkins 环境变量列表: ### Jenkins 内置环境变量 - `BUILD_NUMBER`:当前构建的编号,例如 `15`。 - `BUILD_ID`:与 `BUILD_NUMBER` 类似,但它是 Jenkins 内部使用的构建唯一标识符,例如 `15`。 - `BUILD_DISPLAY_NAME`:构建的显示名称,通常由构建编号和构建原因组成,例如 `#15`。 - `JOB_NAME`:当前任务的完整名称,包括文件夹路径(如果有),例如 `folder_name/job_name`。 - `JOB_BASE_NAME`:当前任务的基本名称,不包含文件夹路径,例如 `job_name`。 - `BUILD_TAG`:一个唯一的构建标签,格式为 `jenkins-job_name-build_number`,例如 `jenkins-myJob-15`。 - `EXECUTOR_NUMBER`:执行当前构建的执行器编号,例如 `1`。 - `NODE_NAME`:运行构建的节点名称,例如 `master` 或 `slave1`。 - `NODE_LABELS`:运行构建的节点标签列表,例如 `linux docker`。 - `WORKSPACE`:当前构建的工作区目录路径,例如 `/var/jenkins_home/workspace/myJob`。 - `JENKINS_HOME`:Jenkins 的主目录路径,例如 `/var/jenkins_home`。 - `JENKINS_URL`:Jenkins 实例的 URL 地址,例如 `http://jenkins.example.com/`。 - `BUILD_URL`:当前构建的完整 URL 地址,例如 `http://jenkins.example.com/job/myJob/15/`。 - `JOB_URL`:当前任务的 URL 地址,例如 `http://jenkins.example.com/job/myJob/`[^2]。 ### Jenkins Git 插件提供的环境变量 当安装并配置了 Jenkins Git 插件后,Jenkins 会提供额外的环境变量,适用于与 Git 相关的构建任务: - `GIT_COMMIT`:当前构建所使用的 Git 提交哈希值。 - `GIT_BRANCH`:当前构建所使用的 Git 分支名称。 - `GIT_PREVIOUS_COMMIT`:前一次构建所使用的 Git 提交哈希值。 - `GIT_PREVIOUS_SUCCESSFUL_COMMIT`:前一次成功构建所使用的 Git 提交哈希值。 - `GIT_URL`:Git 仓库的 URL 地址。 - `GIT_AUTHOR_EMAIL`:提交作者的电子邮件地址。 - `GIT_COMMITTER_EMAIL`:提交者的电子邮件地址。 - `GIT_AUTHOR_NAME`:提交作者的名字。 - `GIT_COMMITTER_NAME`:提交者的名字。 - `GIT_LOCAL_BRANCH`:本地构建所使用的 Git 分支名称。 - `GIT_REMOTE_URL`:远程 Git 仓库的 URL 地址[^1]。 ### 示例:打印 Jenkins 环境变量Jenkins 的构建脚本中,可以使用以下 Shell 命令来打印一些常用的环境变量: ```bash echo "BUILD_NUMBER: $BUILD_NUMBER" echo "JOB_NAME: $JOB_NAME" echo "WORKSPACE: $WORKSPACE" echo "GIT_COMMIT: $GIT_COMMIT" ``` 这些命令将输出当前构建的编号、任务名称、工作区路径以及 Git 提交哈希值等信息。 ### 使用 Jenkins 环境变量的最佳实践 - **避免硬编码**:在构建脚本中应尽量使用 Jenkins 提供的环境变量,而不是硬编码具体的值,以提高脚本的可移植性和灵活性。 - **检查文档**:不同的 Jenkins 插件可能会提供额外的环境变量,建议查阅相关插件的文档以获取最新的环境变量列表。 - **调试**:如果在构建过程中遇到环境变量未按预期工作的情况,可以在构建脚本中添加 `printenv` 命令来查看所有可用的环境变量及其值。 ### 相关问题 - 如何在 Jenkins 中永久设置环境变量? - 如何在 Jenkins 构建脚本中使用 `unset` 命令清除环境变量? - 如何在 C 程序中访问 Jenkins 环境变量? - 如何查看特定的 Jenkins 环境变量? - 什么是 Jenkins 环境变量,它们在 Jenkins 构建过程中扮演什么角色?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值