jenkins 构建后shell_使用linux的shell脚本自动触发jenkins构建并爬取结果

本文介绍了一种方法,通过编写Linux Shell脚本实现自动触发Jenkins构建,并在构建完成后下载并部署结果文件。脚本包括了发送构建请求、检查构建状态以及下载部署文件的逻辑。
摘要由CSDN通过智能技术生成

现在越来越多的东西都在使用jenkins进行自动构建,也极大的方便了测试与运维人员进行打包部署,但唯一美中不足的是,不能进行自动部署,昨天写了一个脚本来做这项工作,以达到一键自动打包部署.

#!/bin/sh

# jenkins url

export jenkins_job_url=http://192.16.30.83:8080/job

# user and password

user=leo.du:123456

# jenkins name for project

jenkins_name=$1

result=''

function check_result() {

# clean tmp.txt, tmp.html

rm -f tmp.txt tmp.html

echo -n .

# get the build result

wget -q ${jenkins_job_url}/${jenkins_name}/ -O tmp.html

grep "job/${jenkins_name}/.*/console" tmp.html | head -n 1 > tmp.txt

while [ "$result" == "" ]; do

# check the build result

result=`grep -E 'Success|Failed' tmp.txt`

sleep 5

check_result

done

result=`grep 'Success' tmp.txt`

# clean tmp.txt, tmp.html

rm -f tmp.txt tmp.html

if [ "$result" == "" ]; then

echo -e "\nbuilding failed...pls check the programe"

exit 1

fi

}

function send_build_post() {

# send build command

curl -X POST ${jenkins_job_url}/${jenkins_name}/build?delay=0sec --user ${user}

echo 'checking....pls wait moment'

# sleep 5 seconds wait the page refresh

sleep 5

}

send_build_post

echo -n building.

check_result

调用方法如下:

function deploy_account() {

name=CE-AUTH

location=/tmp/fpx-auth.war

# 此处将需要打包的工程当参数传进去

./jenkins.sh ${name}

rm -f ${location}

# 构建完成之后就可以下载了

wget -q ${jenkins_job_url}/${name}/ws/auth/target/fpx-auth.war -O ${location}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值