当前位置: 首页 > news >正文

Pipeline 获取 Jenkins参数

Pipeline 获取 Jenkins参数

Jenkins 提供了一系列默认的环境变量,这些变量在构建过程中可以被使用。以下是一些常见的 Jenkins 默认环境变量:

WORKSPACE: 当前构建的工作目录路径
JOB_NAME: 当前构建的作业名称
BUILD_NUMBER: 当前构建的编号(从 1 开始)
BUILD_ID: 当前构建的唯一标识符,通常是构建的时间戳
BUILD_URL: 当前构建的 URL 地址
GIT_COMMIT: 当前构建所使用的 Git 提交哈希(如果使用 Git 作为版本控制)
GIT_BRANCH: 当前构建所使用的 Git 分支(如果使用 Git 作为版本控制)
NODE_NAME: 当前构建执行的节点名称
EXECUTOR_NUMBER: 当前构建在节点上的执行器编号
JENKINS_URL: Jenkins 实例的 URL 地址
JOB_URL: 当前作业的 URL 地址
WORKSPACE: 当前作业的工作目录
等等

在 Jenkins 中通过安装 Parameter 插件
然后添加如下参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
添加完参数,回到构建界面,如下
添加的参数已经显示出来了
在这里插入图片描述
在 Pipeline 脚本中如何使用 Jenkins 中的参数
pipeline 脚本代码如下

pipeline {
    agent any
	
	// 在 Pipeline 中定义全局变量
	environment {
	    // 获取 Jenkins 中的变量通过 env. 如 env.WORKSPACE
		WorkSpacePath=${env.WORKSPACE}
	}

    stages {
        stage('Print WorkSpace') {
            steps {
                script {
				    // 全局变量,可以直接使用
					echo "WorkSpacePath=${WorkSpacePath}"
				    // 在这里也可以获取 env.WORKSPACE
                    echo "当前的工作目录: ${env.WORKSPACE}"
					// 当前构建的作业名称
					echo "JOB_NAME: ${env.JOB_NAME}"
					// 当前构建的编号(从 1 开始)
					echo "BUILD_NUMBER: ${env.BUILD_NUMBER}"
					// 当前构建的唯一标识符,通常是构建的时间戳
					echo "BUILD_ID: ${env.BUILD_ID}"
					// 当前构建的 URL 地址
					echo "BUILD_URL: ${env.BUILD_URL}"
					// 当前构建执行的节点名称
					echo "NODE_NAME: ${env.NODE_NAME}"
					// 当前构建在节点上的执行器编号
					echo "EXECUTOR_NUMBER: ${env.EXECUTOR_NUMBER}"
					// 当前构建所使用的 Git 提交哈希(如果使用 Git 作为版本控制)
					echo "GIT_COMMIT: ${env.GIT_COMMIT}"
					// 当前构建所使用的 Git 分支(如果使用 Git 作为版本控制)
					echo "GIT_BRANCH: ${env.GIT_BRANCH}"
                }
            }
        }
    }
}

执行结果如下
在这里插入图片描述

http://www.dtcms.com/a/29386.html

相关文章:

  • 二叉树(数据结构)
  • 第5章:在LangChain中如何使用AI Services
  • 45.日常算法
  • 【算法通关村 Day6】二叉树层次遍历
  • Leetcode 76 Minimum Window Substring
  • 哈希表(概念)c++
  • 数据结构——模拟栈例题B3619
  • ShardingSphere 数据库中间件【详解大数据量下分库分表,读写分离,主从同步,以及ShardingSphere-JDBC使用,附有示例+代码】
  • 简单工厂模式 (Simple Factory Pattern) 在Spring Boot 中的应用
  • 机器学习实战(10):深度学习初探——卷积神经网络(CNN)
  • OpenGL(2)基于Qt做OpenGL开发
  • 深⼊理解指针(1)
  • 电脑想安装 Windows 11 需要开启 TPM 2.0 怎么办?
  • 从零开始学习PX4源码9(部署px4源码到gitee)
  • 低代码表单引擎刷新机制
  • Redis 存在线程安全问题吗?为什么?
  • 排查JVM的一些命令
  • langchain系列 - FewShotPromptTemplate 少量示例
  • Linux 和 Windows 区别
  • C++的封装(十五):第四种访问控制
  • STL 在线转 3MF,开启 3D 模型转换新体验
  • krpano学习笔记,端口修改,krpano二次开发文档,krpano三维div信息展示,krpano热点显示文字
  • Java 中的方法参数传递与值传递
  • 面试题之介绍下call,apply,bind相同点和不同点
  • linux 搭建nfs服务(共享文件夹)
  • 探索HarmonyOS的UI开发新境界:从基础到进阶的深度解析
  • leetcode刷题第十三天——二叉树Ⅲ
  • arm环境下,wpa_supplicant交叉编译+wifi sta连接详解
  • LeetCode-524. 通过删除字母匹配到字典里最长单词
  • 科普:“docker”与“docker compose”