博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gitlab-runner 构建失败问题排查
阅读量:5914 次
发布时间:2019-06-19

本文共 2105 字,大约阅读时间需要 7 分钟。

Gitlab-runner 构建失败问题排查:

问题起因:

基于gitlab ci 进行自动化构建,当发起 merge_requests请求出发构建时job运行报错,官方推荐升级gitlab-runner 版本,版本升级后运行构建依然货报错,报错内容如下:

Running with gitlab-runner 11.10.1 (1f513601) on jp.ptmind.com 0ea06a67Using Shell executor...Running on jp.ptmind.com...Reinitialized existing Git repository in /data/builds/0ea06a67/0/。。。backend/.git/Fetching changes with git depth set to 10...fatal: git fetch-pack: expected shallow listfatal: The remote end hung up unexpectedlyERROR: Job failed: exit status 1

排查解决:

1:升级runner 版本至最新版本,升级期间清理runner 构建目录旧文件目录;

以上配置修改后,首次出发构建可以成功,再次执行merge_requests 再次触发构建,还是会报错,问题未解决;

build:common:  stage: build  tags:    - python3  script:    - cp src/requirements_shared.txt src/common/requirements.txt。。。。。。。。。。。  only:    refs:      - develop      - staging      - master      - merge_requests    changes:      - src/common/**/*

2:怀疑ci配置逻辑问题,拆解脚本,将merge_requests 与监听分支分开;

build:common:  stage: build  tags:    - python3  script:    - cp src/requirements_shared.txt src/common/requirements.txt。。。。。。。。。。。  only:  - merge_requests    changes:      - src/common/**/*

再次执行构建,构建构建变成偶尔会失败,点击重试能成功 。。。。。

3:查询相关资料有人反馈,说git版本低会导致用新的git特性不稳定。下面进行git 版本升级;

1.1 先上删除runner的旧的git版本;

注意此时会把gitlab-runner 也删掉,建议现在gitlab 管理平台删除runner,版本升级后在重新添加runner。

升级步骤如下:

删除旧版本gityum remove git -y安装3方yum 源,centos7 基础仓库,提供的 git 版本只有到 1.8.3,沒办法使用 git 2 的一些新功能yum install https://centos7.iuscommunity.org/ius-release.rpm安装新版本gityum install git2u -y验证版本git --version重新安装runneryum install gitlab-runner -y

修改改runner配置:

vi /etc/systemd/system/gitlab-runner.serviceExecStart=/usr/lib/gitlab-runner/gitlab-runner "run" "--working-directory" "/home/gitlab-runner" "--config" "/etc/gitlab-runner/config.toml" "--service" "gitlab-runner" "--syslog" "--user" "gitlab-runner"改为:ExecStart=/usr/lib/gitlab-runner/gitlab-runner "run" "--working-directory" "/data/gitlab-runner" "--config" "/etc/gitlab-runner/config.toml" "--service" "gitlab-runner" "--syslog" "--user" "root"
重新注册runnergitlab-runner register启动runner服务systemctl daemon-reloadsystemctl start gitlab-runner

###参考资料:

转载于:https://blog.51cto.com/michaelkang/2387223

你可能感兴趣的文章
dyld_shared_cache_extract_dylibs failed
查看>>
浅析ConcurrentHashMap(1.8)
查看>>
我用Python告诉你武汉房价
查看>>
maven 将本地jar打入本地仓库
查看>>
配置elasticsearch6.5.4-ik分词插件安装,测试,扩展字典
查看>>
5分钟搞定 CSS Grid 布局
查看>>
区块链+网络安全应用前景如何?
查看>>
LTR(Learning to Rank)小结
查看>>
MonkeyDev使用,加入flex
查看>>
331urllib
查看>>
Java后端避坑——number类型转换成Integer类型
查看>>
手写一个Promise
查看>>
验证码的识别练习(从头训练—相比于迁移学习)
查看>>
面试题:“选redis还是memcache”
查看>>
Xdebug+PhpStorm 远程调试
查看>>
React基础知识
查看>>
为vue项目自动设置请求状态
查看>>
iOS 逆向之 Cycript 高级玩法(非越狱) & .cy文件的封装
查看>>
探讨一下实现幂等性的几种方式
查看>>
10分钟掌握数据类型、索引、查询的MySQL优化技巧
查看>>