Jenkins + Pipeline 构建流水线发布

Jenkins + Pipeline 构建流水线发布

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

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

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

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

Pipeline生成: https://jenkins.aniu.so/view/Pipeline/job/pipeline-loop/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此项目,查看结果如下:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

Android App渗透测试工具分享

这段时间因为某些原因接触了Android App渗透测试,发现了几个不错的App渗透测试工具(虽然这些工具早就出来了 2333),搭建测试环境的过程中遇到了一些...

1673
来自专栏Zack_Hou

CentOS 7 yum一键安装lnmp。仅限小白体验,大神轻喷!

使用此脚本安装lnmp的服务器必须能出公网,目前只支持CentOS 7以上版本。 2018-06-04更新 Nginx更新至1.14.0、默认关闭selinu...

4533
来自专栏网络

如何封装属于自己的ajax

如何封装属于自己的ajax?小编带你探探路。。 // 1准备一个电话 准备ajax // 2 拨号 建立 建立连接 (跟服务器) // 3 发送 ...

1937
来自专栏云计算教程系列

如何在Ubuntu 14.04上使用Nginx和Php-fpm安全地托管多个网站

众所周知,LEMP堆栈(Linux,nginx,MySQL,PHP)为运行PHP站点提供了无与伦比的速度和可靠性。但是,这种流行的堆栈的其他特性,如安全性和隔离...

1002
来自专栏小巫技术博客

Android入门教程AS重制-A002开发工具介绍

关于Android的开发工具有很多,基本上都以在SDK中找到,下面我们逐个来看一下:首先我们使用的是Java语言进行Android应用的开发,那么Java的运行...

472
来自专栏一个番茄说

Cordova插件开发——滑动手势解锁(iOS篇)

第一次正儿八经的参与Cordova的项目,想写下些文字,以便日后需要的时候能够帮助自己快速回忆起来,同时也希望能够帮到需要的朋友。

701
来自专栏程序员的碎碎念

git上传更新项目-错误总结

前些天做完项目一部分内容的时候,想git上传代码上去远程仓库里,却出现了不少git的错误提示信息。在这里总结一下吧: 一、正确的git上传更新项目步骤为:...

2983
来自专栏Java Edge

安装Git0 首先看看有没有三大件

2858
来自专栏Timhbw博客

windows10强大小工具

Windows 10小工具,实用的Win10小工具,集成移除水印、 KMS激活、Office激活、系统激活、ESD转换、磁力搜索、文件HASH、系统信息、系统版...

2839
来自专栏程序猿DD

spring-boot-starter-swagger迎新伙伴支持,加速更新进度(1.3.0.RELEASE)

从该starter创建至今收到了不少使用反馈,同时也有不错的童鞋申请加入一起维护。本篇先欢迎小火童鞋的加入及贡献,接下来具体说说本次的更新内容。 本次更新主要新...

3275

扫码关注云+社区