jenkins
使用ThinBackup 插件实现Jenkins数据备份与恢复
pipeline
shareLibrary
groovy 语法
构建工具集成
sonarQube 集成
使用Docker Plugin动态生成Jenkins Slave运行流水线
go 环境变量配置
常用插件
Jenkins 添加节点 java web方式
配置 Kubernetes 作为 jenkins-slave
jenkins获取用户相关信息-插件-Build User Vars Plugin
将 Jenkins 与 Telegram 机器人集成
本文档使用 MrDoc 发布
-
+
首页
pipeline
## agent/options ``` options { timestamps() //日志会有时间 skipDefaultCheckout() //删除隐式checkout scm语句 disableConcurrentBuilds() //禁止并行 timeout(time: 1, unit: "HOURS") //流水线超时1小时 } ``` ## stages ``` stages { stage("GetCode"){ steps{ timeout(time:5 ,unit:"MINUTES"){ script{ println("获取代码") } } } } stage("Build"){ steps{ script{ println("build") } } } stage("CodeScan"){ steps{ script{ println("代码扫描") } } } } ``` ## post ``` post { always { script { println("always") } } success { script { currentBuild.description += "\n 构建成功" } } failure { script { currentBuild.description += "\n 构建失败" } } aborted { script { currentBuild.description += "\n 构建取消" } } } ``` currentBuild 是一个全局变量 description 构建描述 always 无论流水线或者阶段的完成状态。 changed 只有当流水线或者阶段完成状态与之前不同时。 failure 只有当流水线或者状态为“failure”时运行 success unstable 只有当流水线或者状态为“unstable”时运行 例如 测试失败 aborted 只有当流水线或者状态为“aborted”时运行 例如 手动取消 ## parameters ``` parameters { string defaultValue: 'AMD-desktop', name: 'node_name' } stages { stage("test"){ steps{ script{ println("test") println("${params.node_name}") } } } } ``` ## trigger 触发器 ## tool 指定全局工具 ``` stage("build"){ steps{ script{ mvn = tool "mymvn" println(mvn) sh "${mvn}/bin/mvn --version" } } } ``` ## input input用户在执行各个阶段的时候,由人工确认是否继续执行。 - message 显示给用户的提示信息。 - id 可选。默认为 stage名称。 - ok 默认表单上的ok文本。 - submitter 可选的,以逗号分隔的用户或允许提交的外部组名。默认允许任何用户。 - submitterParameter 环境变量的可选名称。如果存在,用`submitter`名称设置。 - parameters 提示提交者提供一个可选的参数列表。 ``` stage("build go"){ input { message "确定要构建吗?" ok "yes" submitter "admin,david" } steps { script{ mygo = tool "mygo" sh "${mygo}/bin/go version" } } } ``` ## when when 指令允许流水线根据给定的条件决定是否应该执行阶段。when 指令必须包含至少一个条件。如果 when 指令包含多个条件,所有的子条件必须返回true,阶段才能执行。 **内置条件** - branch 匹配构建分支 ``` when { branch 'master' } ``` - environment 当指定的环境变量是给定的值时,执行这个步骤 ``` when { environment name: 'deploy',value: 'test'} ``` - expression 当指定的Groovy表达式评估为true时,执行这个阶段 ``` when { expression {return params.DEBUG_BUILD }} ``` - not 当嵌套条件时错误时,执行这个阶段 ``` when { not { branch 'master'} } ```
admin
2023年7月24日 18:19
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码