pipeline Gitlab通知触发

安装Gitlab 过程这里不进行搭建,可参考官方文档进行搭建。

前提环境:

  1. Jenkins
  2. Gitlab
  3. Kubernets(可忽略)

涉及插件:

  1. GitLab Plugin
  2. Git

注意点: GitLab Hook已弃用,安装插件请注意。同时需要了解pipeline看懂即可,此篇涉及知识点不大。

推荐查看信息GitLab插件介绍:https://github.com/jenkinsci/gitlab-plugin#jenkins-to-gitlab-authentication
在这里插入图片描述

一、创建Gitlab触发 流水线项目

在这里插入图片描述
在这里插入图片描述
将随机生成的secret token 复制下来,在接下来的步骤中会使用到

二、书写pipeline 流水线

在这里插入图片描述

pipeline {
    agent{
        node{
          label 'jnlp-slave'  //node节点调度在标签名称为jnlp-slave
        }
      }

    stages {
		stage('Git拉取代码') {
            steps {                
                git 'http://192.168.11.178/root/aliyun.git'
            }
        }
    }   
}

三、Gitlab 配置通知Jenkins

1、找到对应的项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、Gitlab 配置 Jenkins信息

在这里插入图片描述
在这里插入图片描述

四、Jenkins查看是否成功触发

在这里插入图片描述

五、Pipeline 实现触发 GitLab

GitLab插件语法介绍

手动去生成secret Token一个项目还好若是上百上千个项目每次都去手动,可以想想工作量得多大为了减少操作,GitLab插件上实现了基于GitLab的trigger。

在这里插入图片描述
同时考虑到安全与方便性将secret Token定义为一个Jenkins全局变量。

1、secret Token(值保持原来的值)添加到Jenkins全局变量

在这里插入图片描述

2、修改对应的流水线语法(trigger)

pipeline {
    agent{
        node{
          label 'jnlp-slave'
        }
      }
	triggers {
        gitlab(triggerOnPush: true,
		triggerOnMergeRequest: true,
		branchFilterType: 'All',
		secretToken: "${env.jenkins}"  //全局变量
		)
    }
    stages {
		stage('Git拉取代码') {
            steps {                
                git 'http://192.168.11.178/root/aliyun.git'
            }
        }
    }
}

3、再次手动构建完再gitlab手动推送测试

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4、查看流水线项目内部

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值