jenkins動態關聯參數(動態獲取服務器參數)


1、希望效果

 

 

2、安裝插件

 
         

Active Choices Plug-in

 
         

目的:關聯參數,能夠實現動態選擇環境后執行Groovy Script

 
         

頁面插件管理: 系統管理 ——> 插件管理

3、jenkins - web端設置參數化過程


# def gettags = ['/bin/bash', '-c', "/scripts/shell/front_build_image_deploy/get_image_list.sh '${serviceName} ' '${depoymentEnv}'"].execute() # return gettags.text.readLines()

 

4、腳本內容

#輸出需要對服務進行的操作
[root@jenkins ~]# ll /scripts/shell/online_build_image/get_image_list.sh
-rwxr-xr-x 1 root root 121 Jan 20 14:10 /scripts/shell/online_build_image/get_image_list.sh [root@jenkins ~]# cat /scripts/shell/online_build_image/get_image_list.sh #!/bin/sh user=`whoami` #serviceNameLower=`echo es-provider-auth|tr 'A-Z' 'a-z'` serviceName=$1 serviceNameLower=`echo "$serviceName"|tr 'A-Z' 'a-z'` #部署環境(dev,alpha,beta,pro) deploymentEnv=$2 function Usage(){ if [[ "$serviceName" == '' ]];then echo "sh $0 '服務名' '部署環境'" && exit 4 fi } function root_get_image_list(){ if [[ "$deploymentEnv" == 'alpha' ]];then imageName=registry-test.com/wx-k8s/"$serviceNameLower" docker images|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'dev' ]];then imageName=registry-test.com/wx-k8s-dev-alpha-beta/"$deploymentEnv"-"$serviceNameLower" docker images|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'beta' ]];then imageName=registry-test.com/wx-k8s-dev-alpha-beta/"$deploymentEnv"-"$serviceNameLower" docker images|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'pro' ]];then imageName=registry-test.com/wx-k8s-pro/"$serviceNameLower" docker images|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn fi } function jenkis_get_image_list(){ if [[ "$deploymentEnv" == 'alpha' ]];then imageName=registry-test.com/wx-k8s/"$serviceNameLower" ssh root@192.168.56.207 "docker images"|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'dev' ]];then imageName=registry-test.com/wx-k8s-dev-alpha-beta/"$deploymentEnv"-"$serviceNameLower" ssh root@192.168.56.207 "docker images"|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'beta' ]];then imageName=registry-test.com/wx-k8s-dev-alpha-beta/"$deploymentEnv"-"$serviceNameLower" ssh root@192.168.56.207 "docker images"|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn elif [[ "$deploymentEnv" == 'pro' ]];then imageName=registry-test.com/wx-k8s-pro/"$serviceNameLower" ssh root@192.168.56.207 "docker images"|grep "$imageName "|awk '{print $1":"$2" 鏡像ID~"$3}'|sort -rn fi } if [[ "$user" == 'root' ]];then Usage root_get_image_list elif [[ "$user" == 'wx' ]];then Usage jenkis_get_image_list fi #注釋: build腳本忽略

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM