Jenkins Pipeline 流水线
步骤
拉取SVN代码 -> Maven 构建 -> Docker 编译 -> 发布至阿里云仓库 -> K8S 更新
Jenkins插件安装
- Localization: Chinese (Simplified)
- Subversion 【2.16.0】 --从SVN中获取代码
- Maven Integration 【3.20】 -- 编译项目
- Docker plugin 【1.2.10】 -- 用于节点管事中的 Docker 维护
- docker-build-step 【2.8】 -- 用于 Post Steps 的时候,选择 Build/Publish Docker Image
- SSH 【6.1】-- 用于集成 K8S,远程执行K8S服务器上的命令
拉取SVN代码
流水线语法生成
选择 Subversion 生成流水线脚本
构建
编译构建代码
- 找到 Maven 的名字
Cannot run program "nohup" (in directory "D:\ProgramData\Jenkins\.jenkins\workspace\PipelineDemo"):
CreateProcess error=2, 系统找不到指定的文件。
解决方法:因为我这边是 Windows 上装的 Jenkins 所以,sh 要换成 bat
修改打包命令
pipeline {
agent any
tools {
maven 'Maven36' //添加 Maven 工具
}
stages {
stage('拉取代码') {
steps {
checkout([$class: 'SubversionSCM', additionalCredentials: [], excludedCommitMessages: '', excludedRegions: '', excludedRevprop: '', excludedUsers: '', filterChangelog: false, ignoreDirPropChanges: false, includedRegions: '', locations: [[cancelProcessOnExternalsFail: true, credentialsId: '凭证ID,如果没设,默认会给 GUID', depthOption: 'infinity', ignoreExternalsOption: true, local: '.', remote: 'SVN 地址']], quietOperation: true, workspaceUpdater: [$class: 'UpdateUpdater']]) //该脚本由流水线语法自动生成
echo '拉取成功'
}
}
stage('执行构建') {
steps {
//bat 'mvn --version'
bat 'mvn clean package -Dmaven.test.skip=true'
echo '构建完成'
}
}
}
}
标签:SVN,Pipeline,--,代码,Maven,Jenkins,流水线
From: https://www.cnblogs.com/vipsoft/p/16847675.html