zoukankan      html  css  js  c++  java
  • Jenkins通过脚本进行自动发布

    编写以下脚本:

    -------------------------------------------------------------------------------------
    #!/bin/sh
    name=web-$(date +%F)-$(($RANDOM+10000))
    host=$1
    job_name=$2
    cd /var/lib/jenkins/workspace/${job_name} && tar zcf /opt/${name}.tar.gz ./*
    ssh ${host} "cd /usr/share/nginx && mkdir ${name}"
    scp -r /opt/${name}.tar.gz ${host}:/usr/share/nginx/${name}
    ssh ${host} "cd /usr/share/nginx/${name} && tar xf ${name}.tar.gz && rm -f ${name}.tar.gz"
    ssh ${host} "cd /usr/share/nginx && rm -rf html && ln -s /usr/share/nginx/${name} /usr/share/nginx/html"
    
    ssh ${host} "nginx -s reload"
    -------------------------------------------------------------------------------------
    使用脚本方法:
    sh -x jenkins.sh 10.0.0.66 my-freestyle-job
    
    将 /var/lib/jenkins/workspace/my-freestyle-job 目录内容打包 传送到需要发布的服务nginx器中.部署完成后 重启服务器.
    
    发布结果:
    [root@node2 nginx]# ll
    total 8
    lrwxrwxrwx 1 root root   37 Dec 29 22:29 html -> /usr/share/nginx/web-2019-12-29-42021
    drwxr-xr-x 2 root root  143 Dec 29 21:43 modules
    -rw-r--r-- 1 root root 1731 Dec 29 22:29 web-2019-12-29-42021
    -rw-r--r-- 1 root root 1731 Dec 29 22:19 web-2019-12-29-41061
    
    #这样做的好处就是每次网站都会被备份,每次都会指向web根目录. 发布过程影响较小
    #使用这种方法回退也非常简单,如: 我们发现 web-2019-12-29-42021 该版本有问题,回退方式就是:
    rm -f  /usr/share/nginx/web-2019-12-29-42021
    ln -s /usr/share/nginx/web-2019-12-29-41061 /usr/share/nginx/html
    
    #!/bin/sh
    name=web-$(date +%F)-$(($RANDOM+10000))
    host=$1
    job_name=$2
    cd /var/lib/jenkins/workspace/${job_name} && tar zcf /opt/${name}.tar.gz ./*
    ssh ${host} "cd /usr/share/nginx && mkdir ${name}"
    scp -r /opt/${name}.tar.gz ${host}:/usr/share/nginx/${name}
    ssh ${host} "cd /usr/share/nginx/${name} && tar xf ${name}.tar.gz && rm -f ${name}.tar.gz"
    ssh ${host} "cd /usr/share/nginx && rm -rf html && ln -s /usr/share/nginx/${name} /usr/share/nginx/html"
    ssh ${host} "nginx -s reload"
    

    微信赞赏

    支付宝赞赏

  • 相关阅读:
    团队-团队编程项目作业名称-最终程序
    《团队-中国象棋-项目总结》
    课后作业-阅读任务-阅读提问-4
    《20171130-构建之法:现代软件工程-阅读笔记4》
    《软件工程课程总结》
    《20171117-构建之法:现代软件工程-阅读笔记-3》
    -课后作业-阅读任务-阅读提问-3
    《团队-中国象棋-团队一阶段互评》
    《团队-中国象棋-开发文档》
    《结对-贪吃蛇-结对项目总结》
  • 原文地址:https://www.cnblogs.com/superlinux/p/15385198.html
Copyright © 2011-2022 走看看