首页 > 编程知识 正文

pipeline用法,pipe pipeline区别

时间:2023-05-03 20:54:52 阅读:199695 作者:2735

1、什么是pipeline

将一件需要重复做的事情切割成各个不同的阶段,每一个阶段由独立的单元负责。所有待执行的对象依次进入作业队列。
可参照:https://www.cnblogs.com/midhillzhou/p/5588958.html

2 指令

可参照:https://www.w3cschool.cn/jenkins/jenkins-qc8a28op.html
agent 表示Jenkins应该为Pipeline的这一部分分配一个执行者和工作区。
stage 描述了这条Pipeline的一个阶段。
steps 描述了要在其中运行的步骤 stage
sh 执行给定的shell命令

agent 代理

指定整个Pipeline或特定阶段(stage)将在Jenkins环境中执行的位置,具体取决于该
agent 部分的放置位置,可以在pipeline块内或stage指令内。

pipeline{ //agent用于指定执行job的节点,any为不做限制agent any}

parameters 参数
指令提供用户在触发Pipeline时应提供的参数列表。这些用户指定的参数的值通过该params对象可用于Pipeline步骤,只能在pipeline块中定义一次
ps : 变量的引用
在双引号中用${var_name};在单引号中直接用变量名var_name即可

pipeline { agent any// 定义参数,后面可以引用 parameters { string(name: 'PERSON', defaultValue: 'Mr Jenkins', description: 'Who should I say hello to?') }stages { stage('Example') { steps { // 引用参数 echo "Hello ${params.PERSON}" } } }}

options 选项
该指令允许在Pipeline本身内配置Pipeline专用选项,只能在pipeline块中定义一次

pipeline { agent any options { timeout(time: 1, unit: 'HOURS') } stages { stage('Example') { steps { echo 'Hello World' } } }}

environment 环境
指定一系列键值对,这些对值将被定义为所有步骤的环境变量或阶段特定步骤,具体取决于environment指令位于Pipeline中的位置,可以在pipeline块内或stage指令内。

pipeline { //agent用于指定执行job的节点,any为不做限制 agent any environment { MVN_PATH = '/var/maven_home/温柔的航空/mvn' IMG = 'mkevin-docker' } //阶段 stages { //每一个阶段stage('maven 构建') {steps{ /*使用mvn构建,使用全路径模式*/ sh '${MVN_PATH} install'}}}

stages 阶段
stage指令用在stages中,且必须传递一个参数,stage下需包含steps,step块中就是具体要执行的命令

pipeline { //agent用于指定执行job的节点,any为不做限制 agent any environment { STR='我是环境' } //阶段 stages { //每一个阶段stage('stage的参数') {steps{ /*使用mvn构建,使用全路径模式*/ echo 'STR'}} }}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。