jenkins +gitlab 自动化代码秒级上线

一,配置脚本

 1 #!/bin/bash
 2 #目标服务器IP地址
 3 host=$1
 4 #job名称
 5 job_name=$2
 6 #包名
 7 name=web-$(date +%F)-$(($RANDOM+10000))
 8 #打包
 9 cd /var/lib/jenkins/workspace/${job_name} && tar czf /opt/${name}.tar.gz ./*
10 #发送包到目标服务器
11 ssh ${host} "cd /var/www/ && mkdir ${name}"
12 scp /opt/${name}.tar.gz $host:/var/www/${name}
13 #解包
14 ssh ${host} "cd /var/www/${name} && tar xf ${name}.tar.gz && rm -f ${name}.tar.gz"
15 #使用软链接方式部署服务
16 ssh ${host} "cd /var/www && rm -rf html && ln -s /var/www/${name} /var/www/html"

  把文件放在Jenkins服务器的server/scripts里面

二,配置Jenkins

    打开任务--->构建

   

    

   再次点击构建,发现可以成功秒级代码上线

三,触发自动构建

    构建触发器:

  

    

    

    gitlab操作

    

    执行构建!!

    看是否成功,下次执行仓库代码上线的时候直接上线到网站

 四,构建后通知gitlab   

     Jenkins ----->系统管理----->系统设置 

     

        

    

    

      返回到给gitlab

        

        下拉菜单!!

        

    复制这个token放到刚刚Jenkins 配置的tokens里

    

    进入Jenkins job页面里面在最下面配置构建后的操作

    

      完成过后点击立即构建

      

      表示成功

      点击进入可以发现变更内容

      

五,配置构建后发送邮件      

    系统管理----->>>系统设置

    找到    配置

    

    拉到最下面配置

    

  

    

    进入到job里面选择配置后操作

    

    

      完成!!

原文地址:https://www.cnblogs.com/kingle-study/p/9822360.html

时间: 2024-10-04 21:56:07

jenkins +gitlab 自动化代码秒级上线的相关文章

Jenkins + Gitlab + Ansible--playbook 代码上线流程(文末有免费视频)

jenkins 构建是支持 git 选择分支 安装 Git Parameter 插件在系统管理中的插件管理 然后点击选插件,在右上角输入 Git Parameter,找到 Git Parameter 后点击左下方的的直接安装 . 参数化构建过程 插件安装成功后,在项目配置中后看到多了一个"参数化构建过程" 勾选"参数化构建过程",然后添加 Git Parameter , 配置如下 在源码管理中添加(需要提前将公钥设置好) 参数化构建过程添加 git 参数 Git P

jenkins+gitlab自动化编译部署方案探索及服务端编译webpack实战

一. 背景 之前我们的开发流程为在本地进行webpack打包编译,然后svn提交源代码和编译后的代码.同时每次提交前也会从svn更新源代码和编译后的代码.这样做有几个缺点: 1. svn 更新和提交编译后的代码造成大量冲突文件 2. 由于我们使用非覆盖式发布的命名方式,在经过小组多人多次优化提交测试之后,在整理需要发布的文件列表时,很容易遗漏一些文件 3. 在涉及到多人开发同一功能时容易产生代码被覆盖.人工安排发布优先级.手动注释他人未上线代码等情况 4. svn的分支开发繁琐不友好,加重工作量

企业级Docker+Jenkins+Gitlab自动化流水线构建

随着DevOps理念和敏捷理念的发展,我们都希望通过自动化技术,加快项目的迭代.尤其是当使用微服务系统架构之后,功能的叠加,对应服务的数量也在增加,大小功能的快速迭代,更加要求部署的快速化,智能化.因此,传统的人工部署已经心有余而力不足,所以合理的使用持续集成,持续部署可以极大的提高生产效率,提高团队整体效率不可或缺的一环.那么Jenkins可以帮你构建一个自动化的持续集成环境,你可以使用它来"自动化"编译.打包.分发部署你的应用,同时跟svn.git能无缝集成,也支持直接与知名源代码

Jenkins pipeline自动化构建审批功能

Jenkins Pipeline是一套插件,支持将连续输送Pipeline实施和整合到Jenkins.Pipeline提供了一组可扩展的工具,用于通过PipelineDSL为代码创建简单到复杂的传送Pipeline. 对于单个项目来说,使用这样的Pipeline来构建能够满足绝大部分需求,但是这样做也有很多缺陷,包括: 多个项目的Pipeline打包脚本不能公用,导致一个项目写一份脚本,维护比较麻烦.Jenkins提供了一个更优雅的管理Pipeline脚本的方式,在配置项目Pipeline的时候

简单的jenkins+git自动化上线

一.Jenkins+Github自动化上线 不会的要多查多问,不然不会的永远不会,哪怕你离会就差了那么一点点 (一).环境: [[email protected] ]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [[email protected] .ssh]# uname -a Linux hxy-centos7 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UT

Jenkins+GitLab+dotnet+Python自动化部署.Net Core项目

部署环境与流程1) Jenkins是java产品,需安装JDK8.由于.netFreamwork项目自动化时是基于Windows,所以继续使用Windows server 2012环境下的已有的Jenkins,部署.构建dotnet Core项目继续在Windows平台下操作.2) .NET Core SDK:2.2.402.dotnet build构建.3) 代码仓库GitLab.4) .NET Core服务端CentOS7部署环境流程: 需求一个项目下分两个子项目,而子项目需分别进行构建部署

[ci] 构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码.

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码. ? 拉取gitlab代码库: jenkins安装git插件 配置gitlab服务器和jenkins服务器身份互信 jenkins服务器生成一对rsa key. 复制公钥到gitlab web dashboard添加 在jenkins Credentials里添加private key. 接下去创建project ? 拉取到了本地: /var/lib/jenkins/workspace

Jenkins+Gitlab+Ansible自动化部署(六)

Pipeline Job实现Nginix+MySQL+PHP+Wordpress实现自动化部署交付(Jenkins+Gitlab+Ansible自动化部署(五)https://www.cnblogs.com/zd520pyx1314/p/10249094.html) 环境准备 编写ansible playbook脚本实现Wordpress远程部署 将wordpress源码与playbook部署脚本提交到gitlab仓库 编写pipeline job脚本实现Jenkins流水线持续交付流程 Jen

.Net Core自动化部署:Jenkins + GitLab

项目进行微服化改造后系统发布就变得愈为重要,因为持续集成导致部署变得越来越频繁,人工部署带来的一些问题日渐凸显,大家可能都有被系统部署线问题困扰过的经历. 本篇我们将会使用Jenkins+Gitlab来实现程序的持续集成和自动化发布. 1.新建项目提交到GitLab 首先需要有一个GitLab仓库,这个注册一下就可以,具体流程就不写了. 通过GitLab新建一个项目(Project):(没有的话可以使用我这个来测试:https://git.lug.ustc.edu.cn/Deepmountain