Jenkins + Pipeline 构建流水线发布

原创 2017年08月22日 16:38:40

Jenkins + Pipeline 构建流水线发布

  • 利用Jenkins的Pipeline配置发布流水线

参考: https://jenkins.io/doc/pipeline/tour/deployment/

pipeline

新建一个名为pipeline-loop的 pipeline项目,然后配置,关键配置如下:

  • 生成pipeline可以用的git连接(通过此链接,从私有gitlab拉取代码)

Pipeline生成: https://jenkins.aniu.so/view/Pipeline/job/pipeline-loop/pipeline-syntax/

pipeline-syntax

生成的pipeline代码如下,后面配置会用到:

checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '500378f5-a6e4-4255-984e-61537fe0e455', url: 'git@gitlab.aniu.so:aniu-yunwei/game-of-life.git']]])
  • 配置pipeline-loop项目
pipeline {
    agent any
    stages {
        stage('Checkout') {
            steps {
                echo 'Checkout'
                checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '500378f5-a6e4-4255-984e-61537fe0e455', url: 'git@gitlab.aniu.so:aniu-yunwei/game-of-life.git']]])
            }
        }        
        stage('Build') {
            steps {
                echo 'Building'
                sh 'mvn clean install' # 可以用自己的 mvn clean deploy + 参数替代
            }
        }
        stage('Test') {
            steps {
                echo 'Testing'
                sh 'mvn clean verify sonar:sonar' # 此处可以使用mvn test替代,笔者这步是检测代码的质量同步到自己的代码质量检测平台。
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying'
                sh 'mvn clean deploy'  # 此处调用脚本或者ansible、saltstak,部署到远程
            }
        }
    }
}

配置完成保存,然后build此项目,查看结果如下:

pipeline-test

版权声明:本文为木偶人shaon原创文章,转载请注明原文地址,非常感谢。

相关文章推荐

DevOps落地实践:BAT系列:云端运维:COC & BLUEKING

目前国内很多平台提供的功能尚集中于Dev侧,而腾讯除了传统的Dev侧的功能提供,同时也给出了一些云端运维的产品,比如COC和BLUEKING。

jenkins

在介绍jenkins之前需要先了解一个概念CI(Continuous Integration)持续集成,不了解的先看下这篇文章:持续集成,这个概念来自很流行的敏捷开发,讲究的是快速的发现问题,快速发现...

DevOps企业实践指南(6): 持续集成

持续集成作为XP的实践之一,很早就被广泛地实践。在软件开发企业在进行DevOps实践时,持续集成扮演着一个重要的角色。这篇文章将会从持续集成的目标/价值/原则等方面进行阐述和总结,希望对企业的DevO...

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成]

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成]标签(空格分隔): Jenkins一、代码流水线管理  Pipeline名词顾名思义就是流水线的意思,因为公司可能会有很多项目。...

持续集成工具:Jenkins

在DevOps的工具链中,有人曾说过唯一不可替换的就是持续集成的工具Jenkins。目前使用较多的可以与之抗衡的是hudson,但是jenkins和hudson,仅仅是被oracle收购之后产生的副作...

Linux平台搭建Jenkins+Maven+Shell实现自动化构建部署

http://blog.csdn.net/gbenson/article/details/50970289 Linux平台搭建Jenkins+Maven+Shell实现自动化构建部署 分类:...

Jenkins 集成和使用JIRA Bug跟踪管理工具

首先解答一个疑问:是Jira集成Jenkins还是Jenkins集成Jira?Jenkins可以 集成Jira ,Jira也可以集成Jenkins。这两个工具都提供了相关的插件实现。本篇文章就来介绍下...

【Java集合源码剖析】LinkedList源码剖析

LinkedList简介 LinkedList是基于双向循环链表(从源码中可以很容易看出)实现的,除了可以当做链表来操作外,它还可以当做栈、队列来使用。 LinkedList同样是非...

【Jenkins】Pipeline使用进阶

无所不能,无所不及的Pipeline 得益于Jenkins内嵌的Groovy支持,加上丰富的Step库,通过编写自定义Pipeline脚本你几乎可以实现任何复杂的构建、发布流程。下面简单谈谈使用Pi...
  • eMac
  • eMac
  • 2016-05-22 22:24
  • 5370
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)