Jenkins多分支扫描之触发特定job简单使用

新钛云服已为您服务1459天前言:jenkins 多分支扫描相信从事运维工作的相关人员很多都使用过,本身是一个很简单的问题。写这篇文章的目的其实也是很简单,主要解决以下几个问题,以及简单的使用演示。问题:问题一:多分支扫描后生成n个job(每个分支会生成一个jobs), 怎么解决指定分支提交代码触发对应分支的job,而不是触发所有jobs执行。问题二:怎么使相同的jenk...
摘要由CSDN通过智能技术生成

b17b57a6bc98f6d123fd615fb0bf3c95.gif

新钛云服已为您服务1459

43ef714124aaa028de7af18acc89b68b.gif

前言:

jenkins 多分支扫描相信从事运维工作的相关人员很多都使用过,本身是一个很简单的问题。写这篇文章的目的其实也是很简单,主要解决以下几个问题,以及简单的使用演示。

问题:

问题一:多分支扫描后生成n个job(每个分支会生成一个jobs), 怎么解决指定分支提交代码触发对应分支的job,而不是触发所有jobs执行。

问题二:怎么使相同的jenkinsfile 在不用做任何修改的情况下满足所有分支的jobs。每个分支使用的文件不同后期维护起来也是相当的麻烦。因此保持jenkinsfile 文件一样也是非常有必要的。

简单流程图如下:4a831f1c57ad6e9e7501809dea667cfd.png

优势:

· 方便后期维护,不需要反复的修改jenkinsfile 文件

· 减少了jenkins 压力,屏蔽不必要构建。

疑问:

1、有没有其他方式可以屏蔽不必要的构建呢?

a:   有的,简单点比如每个分支维护一个jenkinsflile. 其他的方案没有进行尝试,留给各位客官自己尝试!

2、多分支流水线是最好的方案吗?

a:  个人观点建议直接使用共享库+参数化构建。共享库的优势在于,所有项目集中管理。更利于devops 工作人员进行管理所有项目的流水线。参数化构建可以解决多分支构建问题。

下面我们将分章节进行进行简单的演示:


第一部分:使用docker 安装jenkins以及相关环境依赖

1.1:jenkins 安装脚本

  • 安装脚本目录结构

root@flysky:/home/gpc# tree -La 1 script/
script/
└── install_jenkins_use_docker.sh
  • install_jenkins_use_docker.sh

#!/usr/bin/env bash
# jenkins cdn 刷新相关模块安装
# install npm nodejs ant
#docker exec -it -u root jenkins sh


# docker 外挂目录
# docker 容器名字
docker_name=$1
# docker 宿主机的地址
docker_jenkins_export_port=$2


# 判断目录不存在就创建
[ ! -d ${docker_mount_dir} ] &&  mkdir -p ${docker_mount_dir};

run_jenkins_docker(){
    docker run -d --restart=always --name ${docker_name} -p ${docker_jenkins_export_port}:8080   jenkins/jenkins
    echo "容器启动完成"

}

echo_jenkins_admin_password(){
    jenkins_init_password=$(docker exec ${docker_name} cat /var/jenkins_home/secrets/initialAdminPassword)
    echo jenkins admin 密码: ${jenkins_init_password}

}
## 拉取代码jenkins 编译或者构建需要的 脚本代码 如果没有直接屏蔽掉此方法即可

download_jenkins_shell_to_docker(){
   
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值