第四章 4-8~4-10 Jenkins下常用模块集成
一、Jenkins Linux shell集成
1.1、创建一个shell-freestyle-job的自由风格的软件项目
1.2、添加描述信息
1.3、添加Shell脚本
Shell脚本
#!/bin/sh
user=`whoami`
if [ $user == 'deploy' ]
then
echo "Hello,my name is $user"
else
echo "Sorry,I am not $user"
fi
ip addr
cat /etc/system-release
free -m
df -h
py_cmd=`which python`
$py_cmd --version
1.4、点击立即构建,测试shell是否成功
二、Jenkins 参数集成
2.1、创建一个parameter-freestyle-job的自由风格的软件项目
2.2、添加描述
2.3、添加参数
2.3.1、选项参数
2.3.2、文本参数
2.3.3、布尔值参数
2.3.4、密码参数
2.4、添加构建脚本
#!/bin/sh
echo "Current deploy environment is $deploy_env"
echo "The build is $version"
echo "The password is $pass"
if [[ $bool ]];
then
echo "Request is approved"
else
echo "Request is rejected"
fi
2.5、测试构建
点击左侧的Build with parameters
点击开始构建后,看到构建成功,然后点击左下角的小圆球查看控制台输出
三、Jenkins Git集成
3.1、创建一个git-freestyle-job的自由风格的项目
3.2、添加描述信息
3.3、添加git
从Gitlab上复制HTTP格式的地址
黏贴到URL中之后需要选择凭证,凭证为之前设置的。
正确状态如下
最后点击保存并退出。
3.4、执行构建
点击立即构建。
构建成功,点击下面的蓝色小球查看控制台输出。
可以看到Git下载成功。
四、Jenkins Maven集成
4.1、Maven下载与安装
Maven下载地址
鼠标右键选择复制链接地址
# 下载Maven
wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
# 解压安装包,解压到指定的opt目录下
tar -zxvf apache-maven-3.6.2-bin.tar.gz -C /opt
# 进入解压包
cd /opt/apache-maven-3.6.2/bin/
# 校验maven是否安装成功
./mvn --version
4.2、新建一个maven-freestyle-job的自由风格任务
4.3、添加描述信息
4.4、添加Git
从Gitlab私服上复制一个测试项目的git地址
确保git部分配置正确。
4.5、配置构建
接下来,在构建中选择下图中的选项。
配置完成后点击保存。
4.6、配置maven和java
取消自动安装
4.6.1、配置JDK
4.6.2、配置MAVEN
4.7、修改job中的maven
修改为上面配置的版本。
4.8、执行构建
点击立即构建后,构建成功,点击左下角的蓝色小圆球,查看控制台输出。
如下图,可以看到已经构建成功,并且将编译后的war包放在了红色框中的位置。
五、Jenkins Ansible集成
5.1、Jenkins主机下的Ansible环境搭建
5.1.1、在Python3.6环境下安装Ansible
此处的搭建过程和之前的Ansible部分的搭建基本一致,详见【Jenkins+Ansible+Gitlab 自动化部署三剑客】学习笔记-第三章 3-3 Ansible配合virtualenv安装配置
5.1.2、配置与目标主机的密钥认证
这里需要使jenkins主机对testbox主机的ssh访问可以免密码登陆,这就需要配置jenkins主机对testbox主机的凭证。
配置与目标主机的密钥认证
5.2、ansible-freestyle-job任务的创建
5.2.1、创建任务
5.2.2、编写描述
5.2.3、编写shell构建语句
#!/bin/sh
# 关闭命令行扩展环境
set +x
source /home/deploy/.py3-a2.5-env/bin/activate
source /home/deploy/.py3-a2.5-env/ansible/hacking/env-setup -q
cd /home/deploy
ansible --version
ansible-playbook --version
cat testservers
ansible -i testservers testserver -m command -a "ip addr"
set -x
点击保存完成配置。
其中testservers文件为自己手动上传的一份测试文件
5.2.4、测试构建