jenkins插件pipeline的简单使用

本文介绍了如何在Jenkins中安装和使用Pipeline插件,通过实例演示如何构建流水线作业,包括配置视图、关联任务及注意事项。

pipeline字面意思就是流水线,将很多步骤按顺序排列好,做完一个执行下一个。下面简单介绍下如何使用该插件帮我们完成一些流水线型的任务

一、安装pipeline

进入jenkins的【系统管理】--【插件管理】页面,选择【可选插件】然后搜索pipeline


选择直接安装,它会将依赖的一些插件也一并安装。安装完成后重启jenkins就可以使用了。

二、使用pipeline

1、在jenkins主页点击新建视图

2、然后选择【Build Pipeline View】

3、创建完成后可以对它进行一些配置:

图中高亮的地方是表示初始的任务是什么,将job的名称填入即可。
其他项可以根据需要填写。
4、将各个job关联起来。
真实的工作环境有很多job,比如先编译,然后执行静态代码检查、单元测试、然后部署服务器、服务器重启、进行UI测试等。我们需要对这些job进行一些设置将它们的上下游关系配置好。
上图中我们的初始job是test4,可以先对它进行设置。然后进入该job的配置页面,然后选择【构建后操作】,接着选择【Trigger parameterized build on other projects】

在project to build栏填入它下游的job,可以是一个也可以是多个。需要注意的是,如果下游的job构建时不需要参数的话,必须把将Tigger build without parameters勾上,否则不会自动执行下游的任务了。如果有参数的话,将具体的参数名称以及值填入Add parameter中。

需要注意的是各个任务间千万别设置成一个环路,例如test4的下游项目设置成test3,而test3的下游项目又设置成test4,如果这样设置了,那整个Jenkins就挂了,即便重启也没有用。要解决的话只能去jenkins的workspace目录将设置成环路的job删除。然后重启jenkins。

5、所有的job设置完成后,再进入pipeline视图,可以看见类似这个样子的页面:

在这里可以查看各个job的执行情况,绿色是表示执行通过的,黄色是正在执行的,蓝色是未执行的,还有红色是执行失败的。

本文出处:http://my.oschina.net/ghm7753/blog/371954


### 在 Jenkins Pipeline使用 sshCommand 插件的示例教程 在 Jenkins Pipeline 中,`sshCommand` 是一个非常有用的插件,用于通过 SSH 执行远程命令。一旦安装了该插件并配置了 SSH 凭据,就可以在 Pipeline 脚本中轻松调用远程主机上的命令[^1]。 以下是完整的 Jenkins Pipeline 示例脚本,展示如何使用 `sshCommand` 插件: ```groovy pipeline { agent any stages { stage('SSH Command Example') { steps { script { // 使用 sshCommand 插件执行远程命令 sshCommand( host: 'your.remote.host', credentialsId: 'your-ssh-credential-id', command: ''' # 这里写你的远程命令 echo "Hello from remote host" whoami pwd ''' ) } } } } } ``` #### 参数说明 - **host**: 指定远程主机的地址(如 IP 地址或域名)。 - **credentialsId**: 在 Jenkins 的凭据管理器中预先配置的 SSH 凭据 ID[^1]。 - **command**: 需要在远程主机上执行的命令,可以是单行或多行 Shell 命令。 如果需要更复杂的操作,例如传递变量或处理返回值,可以通过以下方式实现: ```groovy pipeline { agent any stages { stage('Advanced SSH Command') { steps { script { def remoteHost = 'your.remote.host' def credentialId = 'your-ssh-credential-id' def remoteCommand = ''' # 复杂命令示例 mkdir -p /tmp/jenkins-test echo "Jenkins executed this command" > /tmp/jenkins-test/output.txt cat /tmp/jenkins-test/output.txt ''' // 执行远程命令并捕获输出 def sshOutput = sshCommand( host: remoteHost, credentialsId: credentialId, command: remoteCommand, failOnError: true // 如果命令失败则终止 Pipeline ) // 打印远程命令的输出 echo "Remote Command Output: ${sshOutput}" } } } } } ``` #### 注意事项 1. 确保 Jenkins 节点能够通过网络访问目标远程主机。 2. 配置正确的 SSH 凭据,并确保凭据 ID 与 Jenkins 凭据管理器中的条目匹配。 3. 如果远程主机需要特定的端口(非默认 22),可以在 `host` 参数中指定,例如:`host: 'your.remote.host:2222'`[^3]。 4. 对于复杂的构建需求,建议使用 Pipeline 流水线而非自由风格或 Maven 风格的项目,因为 Pipeline 更适合处理多步骤和复杂逻辑[^2]。 --- ###
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值