预期:推送devloop或者master分支的代码, 自动执行jenkins 发布测试环境

  1. 首先,jenkins中需要安装如下插件

  2. 打开一个任务配置,构建触发器中勾选"Build when a change is pushed to GitLab."并过滤指定分支, 这里需要记下GitLab webhook URL一会儿配置到gitlab上



3.gitlab中添加配置

4.点击测试 ok

如果提示403,一般描述为Error 403 anonymous is missing the Job/Build Permission

解决方法:

系统管理-->系统设置-->去掉 Enable authentication for '/project' end-point

此时已经可以正常触发了;

  1. pipeline配置发布时使用传输过来的分支
def createVersion() {
// 定义一个版本号作为当次构建的版本,输出结果 年月日_构建ID
return new Date().format('yyyyMMdd') + "_${env.BUILD_ID}"
}
if(env.gitlabBranch != null) { //如果gitlab自动构建传过来的分支参数不为空
env.branch = env.gitlabBranch //则将传输过来的分支重新赋值给branch变量
echo "自动构建的代码分支是========【 $branch 】"
} else {
echo "branch ==============【 $branch 】"
} pipeline {
agent any environment { // 在 environment 引入上边定义的函数,以便于全局调用
_version = createVersion()
} stages {
stage('拉取代码'){
steps{
git branch: '${branch}', credentialsId: '用户凭据', url: '代码地址'
}
}
}
}

成功

当GitLab通过插件触发构建时,会根据GitLab发送的JSON有效负载设置各种环境变量.您可以在整个作业配置中使用这些.可用的变量有:

gitlabBranch  获取提交到 gitlab 仓库的当前分支名
gitlabSourceBranch 当用户合并分支时,获取要合并的 gitlab 源分支名
gitlabActionType 获取当前 gitlab 操作类型,如:NOTE, PUSH, MERGE
gitlabUserName 获取提交到 gitlab 仓库的用户名称
gitlabUserUsername 获取提交到 gitlab 仓库的用户用户名
gitlabUserEmail 获取提交到 gitlab 仓库的用户邮箱地址
gitlabSourceRepoHomepage 获取提交到 gitlab 源仓库地址
gitlabSourceRepoName 获取提交到 gitlab 源仓库名
gitlabSourceNamespace 获取提交到 gitlab 源仓库的命名空间

gitlab推送代码触发jenkins构建的更多相关文章

  1. VSCODE 使用gitlab 推送代码的简单总结

    1. 前提条件: 有一个gitlab 服务器 自己的windows机器上面已经形成了 ssh key 以及进行了 gitlab global config 的配置 能够正常联系gitlab数据库 2. ...

  2. Gitlab自动触发Jenkins构建打包

    一.目的 在部门的测试环境中,开发人员一旦向gitlab仓库提交成功代码,gitlab就会自动触发jenkins构建项目.当然在构建后还可以添加项目部署或者自动化测试的脚本.这里只针对测试环境. 二. ...

  3. Jenkins 实现Gitlab事件自动触发Jenkins构建及钉钉消息推送

    实现Gitlab事件自动触发Jenkins构建及钉钉消息推送 实践环境 GitLab Community Edition 12.6.4 Jenkins 2.284 Post build task 1. ...

  4. Jenkins教程(七)实现 GitLab 提交/合并代码触发构建

    楔子 最近公司推行统一构建平台(基于 Jenkins + Kubernetes 插件创建 slave),原来部门自建的 Jenkins 不让用了. 迁移上统一构建平台的最大阻力是前端模块发布的问题: ...

  5. jenkins定位GitLab推送的最新Webhook中push event来自哪一个分支

    转载请标明出处:http://www.cnblogs.com/zblade/ 一.调研目的 jenkins可以和GitLab搭档,每当GitLab上有commit的时候,都可以触发jenkins执行相 ...

  6. 配置GitLab Push 自动触发Jenkins构建

    配置GitLab Push 自动触发Jenkins构建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客是对之前的笔记:https://www.cnblogs.com/yin ...

  7. 持续集成之④:GitLab触发jenkins构建项目

    持续集成之④:GitLab触发jenkins构建项目 一:目的为在公司的测试环境当中一旦开发向gitlab仓库提交成功代码,gitlab通知jenkins进行构建项目.代码质量测试然后部署至测试环境, ...

  8. Git提交代码自动触发JenKins构建项目

    1.需求场景 用户提交代码后自动触发jenkins构建项目 流程图如下: 2.JenKins安装Gitlab Hook Plugin插件 3.JenKins配置 4.Gitlab Hook Plugi ...

  9. GitLab 自动触发 Jenkins 构建

    GitLab 是当前应用非常广泛的 Git Hosting 工具,Jenkins 是非常牛逼的持续集成工具.尽管 GitLab 有内建的 GitLab CI,但它远没有 Jenkins 那么强大好用. ...

  10. gitlab安装、下载、推送 代码(推荐)

    环境: 内存必须5G以上 centos7.5 服务端:192.168.0.74 客户端:192.168.0.73 GitLab的安装 1.在CentOS系统上,下面的命令将会打开系统防火墙HTTP和S ...

随机推荐

  1. 【JS 逆向百例】当乐网登录接口参数逆向

    声明 本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 逆向目标 目标:当乐网登录 主页:https://oauth.d.cn ...

  2. Golang zip压缩文件读写操作

    创建zip文件 golang提供了archive/zip包来处理zip压缩文件,下面通过一个简单的示例来展示golang如何创建zip压缩文件: func createZip(filename str ...

  3. Python自动化办公--Pandas玩转Excel数据分析【三】

    相关文章: Python自动化办公--Pandas玩转Excel[一] Python自动化办公--Pandas玩转Excel数据分析[二] python处理Excel实现自动化办公教学(含实战)[一] ...

  4. 1.基于Label studio的训练数据标注指南:信息抽取(实体关系抽取)、文本分类等

    文本抽取任务Label Studio使用指南 1.基于Label studio的训练数据标注指南:信息抽取(实体关系抽取).文本分类等 2.基于Label studio的训练数据标注指南:(智能文档) ...

  5. Windows安装MySQL到最后卡主无响应处理办法

    安装mysql-5.5.62-winx64到最后Ready to execute ... 生效配置时卡主无响应 最有效,最快的解决办法 就是:重启电脑 或者 关闭电脑,在开机,找到MySQL安装目录, ...

  6. AIX6.1修改时区/修改时间

    环境 AIX6.1 修改时间 格式:date -n mmddHHMMYY  #mm表示月分,dd表示日期,HH表示小时,MM表示分钟,YY表示年份. 例子:date -n 1204171622  #修 ...

  7. 【可观测性系列】 Opentelemetry 介绍

    作者简介:大家好,我是蓝胖子 ️博客首页:博客园主页蓝胖子的编程梦 每日一句:人生的烦恼,多在于明白的太多,而做的太少 大家好,我是蓝胖子,随着微服务的流行,服务的可观测性概念被越来越多人提及到,究竟 ...

  8. Python脚本之批量复制文件并同时支持重命名

    import os import shutil import time start_time = time.time() # 需要被复制的文件夹 old_path = r'C:\old_dir' ne ...

  9. Delphi-判断一个对象是否释放,改造官方的Assigned

    直接上例子了,基础知识自己去了解,首先定义一个类: TPerson = class public name: string; age: Integer; constructor Create(name ...

  10. P2898 [USACO08JAN] Haybale Guessing G 题解

    题目传送门 前置知识 二分答案 | 并查集 解法 对条件的合法性判断其他题解已经讲得很明白了,这里不再赘述.这里主要讲一下用并查集实现黑白染色问题. 以下内容称被覆盖为黑色,不被覆盖为白色. 本题因为 ...