jenkins参数构建自动化代码发布

image.png

image.png

image.png

image.png

image.png

image.png

ansible服务下脚本为

#!/bin/env bash

PROJECT_NAME=`cat /root/jenkins_END.txt |awk '{print $1}'`

TYPE=`cat /root/jenkins_END.txt |awk '{print $2}'`

SERVICE=`cat /root/jenkins_END.txt |awk '{print $3}'`

ANSIBLE_HOSTS_ADDR=/etc/ansible/hosts

/usr/bin/ansible -i  $ANSIBLE_HOSTS_ADDR $PROJECT_NAME -m copy -a "src=/root/jenkins_END.txt dest=jenkins_END.txt"

/usr/bin/ansible -i $ANSIBLE_HOSTS_ADDR $PROJECT_NAME -m shell -a "/bin/sh update_code.sh"   

nginx服务下脚本为

#!/bin/env bash
PROJECT_NAME=`cat /root/jenkins_END.txt |awk '{print $1}'`

TYPE=`cat /root/jenkins_END.txt |awk '{print $2}'`

SERVICE=`cat /root/jenkins_END.txt |awk '{print $3}'`

if [ $PROJECT_NAME == nginx ];then
  case $TYPE in
      pull)
        cd /usr/share/nginx/html && git pull ;;
      reback_one)
        cd /usr/share/nginx/html && git reset --hard HEAD^ ;;
      reback_two)
        cd /usr/share/nginx/html && git reset --hard HEAD^^ ;;
      reback_three)
        cd /usr/share/nginx/html && git reset --hard HEAD^^^
        *)
        sleep 1;;
   esac
   case $SERVICE in
      restart)
        systemctl restart nginx;;
      start)
        systemctl start nginx;;
      stop)
        systemctl stop nginx;;
      *)
        sleep 1;;
   esac
fi  
image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。