Jenkins之Pipeline代码流水线

Pipeline翻译过来就是流水线的意思,在公司中可能会有很多项目,如果使用Jenkins构建完成后,开发构建项目需要一项一项点击,比较麻烦,因此,pipeline就应用而生了 。

一、部署Pipeline——代码流水线管理

Jenkins部署及其他服务部署可参考博文:持续集成之代码质量管理———Sonar

另外我们再开一台测试端
1、Jenkins服务器操作如下(配置免密登录及对Jenkins的用户配置授权):

执行命令主要涉及的是权限问题,我们要搞明白,jenkins 是以什 么权限来执行命令的。那么问题来了,我们现在 192.168.171.134 上,如果在想 192.168.171.135 上执行命令。需要怎么做呢?
我们做无秘钥有 2 种分案:
1)使用 jenkins 用户将秘钥分发给 192.168.171.135 上
2)使用 root 用户将秘钥分发给 192.168.171.135 上,如果使用 root 用户还要进 行 visudo 授权。因为 Web 上默认执行命令的用户是 jenkins

这里我们使用第二种

[[email protected] /]# ssh-copy-id [email protected]        # 将公钥发送到测试端
[[email protected] /]# visudo       # 授权
root    ALL=(ALL)       ALL         #在root用户的授权下写入以下内容
jenkins     ALL=(ALL)   NOPASSWD:/usr/bin/ssh

2、Jenkins的web页面添加pipeline插件

依次点击:系统管理==>>插件管理==>>点击高级
下载我提供的插件(提取码: 9rak),按照编号依次上传至Jenkins


3、新建任务



在下面输入要执行的命令,这里输入一个测试命令“sudo ssh [email protected] source /etc/init.d/test.sh”

在测试端编写对应的脚本并测试:

[[email protected] /]# cat > /etc/init.d/test.sh << EOF
> #!/bin/bash
> echo "hello world"
> EOF
[[email protected] /]# chmod +x /etc/init.d/test.sh
#回到Jenkins服务器测试命令是否可以执行成功
[[email protected] /]# sudo ssh [email protected] source /etc/init.d/test.sh
hello world

返回Jenkins的web主页面,点击之前创建的一个web1项目:




上面添加的构建后操作,作用是,当这个项目构建后,就会自动触发刚刚创建的pipeline项目。

新建视图,更直观的测试两个项目的关系



进行构建测试:

以下是之前的,注意测试前和测试后的颜色对比,下面的颜色是没有关联构建的:

执行RUN命令后,等构建完成后,刷新页面,即可看到如下:

可以很明显的看到,新产生的视图两个颜色是一致的,说明关联成功了

原文地址:https://blog.51cto.com/14227204/2481552

时间: 2024-10-11 09:16:36

Jenkins之Pipeline代码流水线的相关文章

Jenkins之Pipeline代码流水线配置

前言 Pipeline名词顾名思义就是流水线的意思,因为公司可能会有很多项目,如果使用jenkins构建完成后,开发构建项目需要一项一项点击,比较麻烦,因此,pipeline就应用而生了 . 部署Pipeline--代码流水线管理 1)环境准备: IP地址 Jenkins 192.168.1.8 测试端 192.168.1.7 部署Jenkins可以参考Jenkins+Gitlab实现持续集成 2)Jenkins服务器配置免密登录及对Jenkins的用户配置授权 [[email protecte

jenkins的Pipeline代码流水线管理

1.新建一个pipline任务 2.自写一个简单的pipline脚本 a.Pipeline的脚本语法在Pipeline Syntax中,片段生成器,示例步骤中选择builf:Build a job b.将生成的语句中的value赋值 c.在这条线上部署了两个job--test-zrlog.java-serverDB node { build job: 'test-zrlog', parameters: [gitParameter(name: 'version_tag', value: 'v1.4

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成]

持续集成+自动化部署[代码流水线管理及Jenkins和gitlab集成] 标签(空格分隔): Jenkins 一.代码流水线管理 Pipeline名词顾名思义就是流水线的意思,因为公司可能会有很多项目.如果使用jenkins构建完成后,开发构建项目需要一项一项点击,比较麻烦.所以出现pipeline名词. 代码质量检查完毕之后,我们需要将代码部署到测试环境上去,进行自动化测试 新建部署代码项目 点击新建 这里只需要写一下描述 执行Shell脚本 温馨提示:执行命令主要涉及的是权限问题,我们要搞明

jenkins的pipeline实现指定节点项目构建并部署代码至后端服务器

1.pipeline功能特点 1)是帮助jenkins实现持续集成CI(Continue Integration)转变为持续部署CD(Continue Deploy)的重要功能插件: 2)将多个节点的单个任务连接起来,实现单个任务难以实现的复杂发布流程: 3)Pipeline 的实现方式是一套 Groovy DSL,所有的发布流程都可以表述为一段 Groovy 脚本: 4)是jenkins上的一套工作流框架. 2.pipeline语法 1)stage:pipeline可以划分为多个stage阶段

[ci] 构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码.

构建触发器,实现当gitlab有push动作时候,jenkins自动拉代码. ? 拉取gitlab代码库: jenkins安装git插件 配置gitlab服务器和jenkins服务器身份互信 jenkins服务器生成一对rsa key. 复制公钥到gitlab web dashboard添加 在jenkins Credentials里添加private key. 接下去创建project ? 拉取到了本地: /var/lib/jenkins/workspace

基于python实现jenkins自动发布代码平台

前言:jenkins自动发布代码平台是我2014年6月搭建的,截止目前已经有24个项目接入了jenkins,公司开发team中大部分是用GIT管理代码,也有一部分是用svn管理代码.我的实现原理是,通过jenkins构建新版本代码,然后用python脚本发布到生产环境,在jenkins界面上点击构建,即完成在线发布. 一.Jenkins环境部署 1, 后续整理.........

python jenkins 打包构建代码

python jenkins 打包构建代码 # pip install python-jenkins import jenkins import pprint import time # 在jenkins 的Configure Global Security下 , 取消"防止跨站点请求伪造(Prevent Cross Site Request Forgery exploits)"的勾选 server = jenkins.Jenkins('http://192.168.100.151:8

Jenkins之pipeline流水线配置

使用gitlab监听事件一旦git push自动部署 使用构建后操作 配置完用户构建前一步会自动构建下一个项目 pipeline插件 新建视图 点击run运行 原文地址:https://www.cnblogs.com/minseo/p/9032862.html

jenkins插件pipeline使用介绍

pipeline字面意思就是流水线,将很多步骤按顺序排列好,做完一个执行下一个.下面简单介绍下如何使用该插件帮我们完成一些流水线型的任务一,安装pipeline.进入jenkins的[系统管理]--[插件管理]页面,选择[可选插件]然后搜索pipeline. 然后选择直接安装,它会将依赖的一些插件也一并安装.安装完成后重启jenkins就可以使用了.二,使用pipeline.1.在jenkins主页点击新建视图 2.然后选择[Build Pipeline View]  3.创建完成后可以对它进行