怎样用Jenkins触发还有一个Jenkins---Global build solution
由于上次发的帖子太受欢迎,导致有非常多人问也有很多其它的人想知道。2个不同地域位置的Jenkins怎样自己主动触发相互的Job.当今非常多公司做的产品仅仅是全球化工作的一部分。须要这部分做好以后去做另外一部分,一直持续做完。这样的自下而上的增量集成方式被越来越多的大公司採用。自然这也能做成全自己主动的。
本文就简单说说我经验中的解决的方法:
1.两个地域的网络都能直接相互訪问,这是最好的情况(而这样的情况适用范围是最窄的),能够直接用Jenkins的隐藏功能实现。
首先要有个job处于你build process的最后一步,比方说,你release后,触发这个job,而这个job实现触发另外一个Jenkins。
然后你这个Job得执行在Linux环境下。由于要用Shell。当然你得把build选成Execute Shell窗体。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbW9kb29fanVua28=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
然后你就得加例如以下的命令了:
wget http://$你的目标jenkins IP和port/job/$你想触发的job/buildWithParameters?$你要传递的变量名='$变量名相应的值'&$第2个变量名='$第2个变量名的值'
假设你运气好的话,第一次就搞定了。
当然。。
某些人或者公司有特殊的网络设置,在用这个命令之前大家都不知道。所以方法1非常高的几率会失败。所以当初解决这问题的时候。出现了方法2。
2.两个人地域的网络不能直接訪问,或者方案1不稳定。这得引入另外一个解决方式。
这个方法拥有coder的思维,即引入第3者。这个第3者必须能分别和2个地方的jenkins相互訪问。
比方说。你们的SVN?仅仅要你们做的同一个产品,肯定有某个SVN你们两方都能訪问的。嘿嘿。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbW9kb29fanVua28=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
对于这个图的解释,又回到了jenkins的自己主动trigger上,引入下“自己主动build”的文章。
这样的方案,就非常稳定,可控。
当然还有其它的。朋友们假设有兴趣请评论中讨论。
比方:
3.Jenkins插件
Parameterized Remote Trigger Plugin
怎样用Jenkins触发还有一个Jenkins---Global build solution的更多相关文章
- jenkins:一个jenkins项目远程触发另一个jenkins项目构建配置
很多时候,我们会有这样的应用场景:一个jenkins上的项目构建后,需要远程触发另一台机子上的jenkins中某个项目的构建,可以通过Parameterized Remote Trigger Conf ...
- Bitbucket 触发内网 Jenkins Build
为了保证安全性多数的持续集成系统都会部署在公司内部的局域网中,这样如果代码部署在 Bitbucket 等环境中就只能通过轮询的方式来触发 Build.那么有没有办法通过 Bitbucket 的 Web ...
- Jenkins触发远程Job的几种方式
本文叙述基于以下假设前提,将介绍三种在不同的jenkins服务器之间触发Job的方法: 本地Jenkins Server local.jenkins.com远程Jenkins Server remot ...
- Gitlab + Jenkins 构建,发布一个基于Go的Gin测试项目
部署Go项目简介 对于golang的发布,之前一直没有一套规范的发布流程,来看看之前发布流程: 方案一 • 开发者本地环境需要将环境变量文件改为正式环境配置 • 编译成可执行文件 • 发送给运维 • ...
- Jenkins触发构建
目录 一.简介 二.时间触发 定时触发 轮询代码仓库 三.事件触发 由上游任务触发 gitlab通知触发 四.通用触发接口 GWT 提取参数 触发某个具体项目 过滤请求值 控制打印内容 控制响应 一. ...
- 如何在jenkins上新建一个项目及其简单配置
1.首先,点击[新建]进入选择页面,如下图(一般选择"构建一个自由风格的软件项目") 2.填好项目名称后,点击ok,跳转至如下页面,可以在这个页面进行项目的配置(包括拉源码 ...
- 在Jenkins上做一个定时闹钟
[本文出自天外归云的博客园] 利用Jenkins定时任务来做一个闹钟,每天隔一段时间提醒自己一下“你该休息了!别老坐着!出去走一走!珍爱生命,远离久坐!” 首先在Jenkins上创建一个node. 创 ...
- Jenkins | 搭建你第一个Jenkins应用
搭建你第一个Jenkins应用 1.准备工作 第一次使用 Jenkins,您需要: 机器要求: 256 MB 内存,建议大于 512 MB 10 GB 的硬盘空间(用于 Jenkins 和 Docke ...
- Jenkins学习二:Jenkins安装与配置
安装前关注: Q:应该选择哪个版本的Jenkins? A:如果你是公司正式使用推荐长期支持版(LTS),原因:稳定.如果你是学习,随便哪个版本都可以. Q:JDK应该安装哪个版本的? A:推荐安装JD ...
随机推荐
- hdu多校6
这个场要恶心死我了.. 1001 积分题,不要四舍五入 //#pragma comment(linker, "/stack:200000000") //#pragma GCC op ...
- php jsonp跨域访问
项目中有个上传图片需要实时预览的,但又是两个系统的访问,故想了一下解决方案: 在新系统中上传图片后处理设置session,旧系统跨域访问获取对应session,进行对应模板预览. 上传图片预览按钮对应 ...
- Thinkphp命名规范
1.类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php: 2.类 ...
- struts2核心配置之Result
result作用:在struts.xml中,使用<result>元素配置result逻辑视图和物理视图之间的映射 元素属性 属性 说明 是否必须 name 指定逻辑视图的名称(Action ...
- 将Electron桌面应用转化为Win10的UWP应用
如果有小伙伴不知道如何打包Electron桌面应用的,请戳我. 微软提供了一款快捷工具:electron-windows-store,用于将electron桌面应用打包成Windows10系统上.ap ...
- FZU 2105 Digits Count(按位维护线段树)
[题目链接] http://acm.fzu.edu.cn/problem.php?pid=2105 [题目大意] 给出一个序列,数字均小于16,为正数,每次区间操作可以使得 1. [l,r]区间and ...
- 【回文自动机】bzoj3676 [Apio2014]回文串
回文自动机讲解!http://blog.csdn.net/u013368721/article/details/42100363 pam上每个点代表本质不同的回文子串.len(i)代表长度,cnt(i ...
- Problem C: 指针:自定义函数length,调用它计算字符串的长度
#include<stdio.h> int length(char*s) { int i,count; while(*s!='\0') { *(s++); count++; } retur ...
- 【MySQL笔记】启动弹窗问题,unable to connect to remote host. catalog download has failed.
安装完MySQL之后,它每天凌晨启动一个Intaller任务,甚是烦人: 这是一个Windows的计划服务,在这里删除即可,开始/附件/系统工具/任务计划程序,把mysql的定时任务计划取消/删除 ...
- 十. 图形界面(GUI)设计14.键盘事件
键盘事件的事件源一般丐组件相关,当一个组件处于激活状态时,按下.释放或敲击键盘上的某个键时就会发生键盘事件.键盘事件的接口是KeyListener,注册键盘事件监视器的方法是addKeyListene ...