Jenkins Pipeline(三)

news/2024/8/26 21:18:30

1 概述

1.1 概念

Pipeline,简单来说,就是一套运行在 Jenkins 上的工作流框架,将原来独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排和可视化的工作。

1.2 优点

代码:Pipeline以代码的形式实现,通常被检入源代码控制,使团队能够编辑,审查和迭代其传送流程。
持久:无论是计划内的还是计划外的服务器重启,Pipeline都是可恢复的。
可停止:Pipeline可接收交互式输入,以确定是否继续执行Pipeline。
多功能:Pipeline支持现实世界中复杂的持续交付要求。它支持fork/join、循环执行,并行执行任务的功能。
可扩展:Pipeline插件支持其DSL的自定义扩展 ,以及与其他插件集成的多个选项。

2 安装插件

在这里插入图片描述

3 入门

3.1 创建任务

demo-pipeline

在这里插入图片描述

3.2 脚本

pipeline {
    agent any
    stages {
        stage('pull code') {
            steps {
                echo 'pull code'
            }
        }
        
         stage('build project') {
            steps {
                echo 'build project'
            }
        }
    }
}

3.3 构建

在这里插入图片描述
在这里插入图片描述

4 拉取代码完善

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '0543fa76-913f-4600-9a3b-30ac70c0fc86', url: 'git@192.168.38.45:root/spring-boot-demo.git']]])
pipeline {
    agent any
    stages {
        stage('pull code') {
            steps {
                checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '0543fa76-913f-4600-9a3b-30ac70c0fc86', url: 'git@192.168.38.45:root/spring-boot-demo.git']]])
            }
        }
        
    }
}

在这里插入图片描述

5 编译打包

在这里插入图片描述

pipeline {
    agent any
    stages {
        stage('pull code') {
            steps {
                checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: '0543fa76-913f-4600-9a3b-30ac70c0fc86', url: 'git@192.168.38.45:root/spring-boot-demo.git']]])
            }
        }
        
        stage('build project') {
            steps {
             sh label: '', script: '''cd springboot-web/
             mvn clean install'''
            }
        }
    }
}

在这里插入图片描述
在这里插入图片描述

#shell 也可以直接用sh ''
stage('build project') {
   steps {
         sh 'cd springboot-web/ && mvn clean install'
     }
}

在这里插入图片描述

6 创建Jenkinsfile

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.niftyadmin.cn/n/4556731.html

相关文章

Tools: python 安装

python 安装 python pip解压,cmd进入目录,python setup.py install 环境变量:PATHD:\Python\Python37\Scripts\;D:\Python\Python37\ pycharm JetbrainsCrack-3.1-release-enc.jar 将补丁放在安装包的/bin路径下,如图中放置在最后…

Jenkins Gitlab Hook自动触发构建(四)

1 插件安装 2 Jenkins配置 #记录地址 http://192.168.38.45:8000/jenkins/project/demo-pipeline修改pipeline构建配置 开启gitlab访问 3 Gitlab配置

Jenkins 集成 SonarQube(五)

1 安装插件 2 配置 生成sonarqube令牌: 73f631bb0e020919b1a42a0c4d60ee7e60ecf51c创建凭证: 配置sonarqube: 3 sonar-project.properties配置文件 #SonarQube 实例名称,唯一 sonar.projectKeyspringboot-web #项目名称 son…

VISUAL C++6.0下载

ID1944 http://222.92.117.84/download/vc60.rar ||| 加我直接发给你吧 SoftID431 http://www.xgdown.com/soft/26284.htm http://www.anxz.com/down/1171.html http://soft.stormzone.cn/ScriptRead/SoftDown.asp cidD6D8638509F33B882EEC248EC3592A452C46124C&t2&fmt…

计算机网络 自顶向下 复习提要 传输层

传输层 为不同host上的不同进程提供 逻辑通信 机制 多路复用&多路分解UDP可靠数据传输协议GBN SR TCP 流量管理拥塞控制 多路复用/多路分解 传输层将数据交付给套接字,而不是进程 UDP:Dip,Dport TCP:Sport,…

SpringCloud 持续集成解决方案(Jenkins+Docker+Harbor+Sonarqube)

1 什么是DevOps 软件开发最高效的组织形式是“One Man Work”,只有一个人干活,写个小项目,从需求到开发,从测试到部署全部独立完成,非常高效。但随着业务的增长,项目开始逐渐变得庞大,变成团队…

什么是C++编程语言

这就要看你的悟性与勤奋了 高级语言(c即属于此) C语言在计算机研究和应用领域有着广泛的应用 如果在编程方面有任何赐教可以联系我的QQ 523320178 ||| C编程就是用C软件编写程序 促类旁通.个人为在读计算机系学生 掌握了C语言就等于掌握了计算机编程语言…