全局工具配置
全局工具配置概述
- Global Tool Configuration,主要用于定义全局级的代码编译构建工具
- 实际的操作过程相当于配置全局的环境变量,以便Jenkins能够通过对应插件调用该工具。
- 例如:在pipeline的tools{}语句块中指定maven以便调用maven来进行Java代码编译
- 其中包含的工具取决于安装的插件
JDK
- Manage Jenkins → Global Tool Configuration → JDK
自动安装
- 无论使用何种自动安装方式,配置完成后, Jenkins都不会立即进行安装,而是在第一次被用到才安装;
Run Batch Command
- .
从 java.sun.com安装
- 即安装Oracle JDK,需要输入用户名和密码,但Oracle Java SE 11+ 不再授权商用
解压 *.zip/*.tar.gz
- 下载工具包并安装在Jenkins下的工作目录中. 例如:
http://apache.promopeddler.com/ant/binaries/apache-ant-1.7.1-bin.zip(选择离你最近的镜像服务器) 并指定一个子目录apache-ant-1.7.1.
运行命令
-
常用
-
别名:
- 例如:openjdk-11.0.14
-
运行命令:
- 例如:yum install -y java-11-openjdk
-
工具目录:
- 例如:/usr/lib/jvm/java-11-openjdk-11.0.14.1.1-6.el8.x86_64/bin/
非自动安装
- 若Jenkins节点无法连接互联网,也可以选择在系统上通过其它方式部署好JDK,而后在Jenkins中经由$JAVA_HOME环境变量引用;
Maven
- Manage Jenkins → Global Tool Configuration → Maven
自动安装
- 无论使用何种自动安装方式,配置完成后, Jenkins都不会立即进行安装,而是在第一次被用到才安装;
Run Batch Command
- .
从 Apache 安装
- Jenkins节点能接入互联的情况下,直接从 Apache安装最为简单(因为服务器在国外,因此也有可能安装失败);
- 各构建工具程序默认安装在${JENKINS_HOME}/tools/目录下
解压 *.zip/*.tar.gz
- 下载工具包并安装在Jenkins下的工作目录中. 例如:
http://apache.promopeddler.com/ant/binaries/apache-ant-1.7.1-bin.zip(选择离你最近的镜像服务器) 并指定一个子目录apache-ant-1.7.1.
运行命令
-
常用
-
别名:
- 例如:
-
运行命令:
- 例如:
-
工具目录:
- 例如:
非自动安装
- 若Jenkins节点无法连接互联网,也可以选择在系统上通过其它方式部署好maven,而后在Jenkins中经由$MAVEN_HOME环境变量引用;
- 例如:/apps/apache-maven-3.8.6/
Golang
- Jenkins运行golang程序的构建,其环境设定依赖于如下几步:
- 安装Go插件;
- 设定安装golang构建工具
- Manage Jenkins → Global Tool Configuration → Go
Python
方法一
- Python构建环境较容易存在版本冲突、第三方库冲突等问题,因此,Python开发通常会进行工程级别的环境隔离,也就是为每个Python工程配置一个专用的Python构建环境;
- Jenkins上的Pyenv Pipeline插件可借助于系统上的virtualenv实现虚拟的Python环境管理;
- 首先,在Jenkins节点上安装Python、pip和virtualenv;
apt install python3 python3-pip virtualenv python-virtualenv python3-virtualenvyum install python3 python3-pip virtualenv python-virtualenv python3-virtualenv
- 其次,在Jenkins上安装Pyenv Pipeline插件;
- 最后,配置pipeline时,可使用Pyenv Pipeline插件提供的withPythonEnv方法,在当前Workspace中创建一个virtualenv环境;右边是一个用于测试python环境的pipeline;
pipeline {
agent any
stages {
stage('Testing') {
steps {
withPythonEnv('python') {
sh "python --version"
sh "pip -V"
}
withPythonEnv('/usr/bin/python3') {
sh "python3 --version"
sh "pip3 -V"
}
}
}
}
}方法二
- 直接使用系统提供的Python环境,或者自动安装Python
- 首先,在Jenkins上安装ShiningPanda插件;
- 而后,在Jenkins上指定使用的Python环境;
- Manage Jenkins → Global Tool Configuration → Python
Other
- 借助于环境变量支持更多的构建工具
- 也可在Pipeline中借助于PATH环境变量加载系统上已有的其它构建工具;