Gitlab 9中的CI与Runner遇到maven工程遇到的问题

这里列出使用过程中遇到的问题,并尝试给出解决方案。

前言

关注持续集成、持续部署很久,看到Gitlab9社区版本功越来越完善,所以现在虚拟机是上手一下,玩熟练了推荐给公司的开发小组。
交代一下测试环境:

  • gitlab版本 9.0.0
  • gitlab-runner版本9.0.0
  • OS:CentOS 7
  • 项目:maven下的springboot样例程序
  • jdk8

在注册runner的时候输入的tag有什么用?

下面是注册runner的交互过程,在操作过程中我对tag的输入一直没理解(问题就出在这里)。

[root@localhost ~]# gitlab-ci-multi-runner register
Running in system-mode.                            
 ## gitlab服务器的域名或IP+/ci                                                  
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
http://192.168.92.128/ci
## runnerToken,gitlab服务器上获取
Please enter the gitlab-ci token for this runner:
3kjzGzK4PZDA73HYPHrP
## 描述
Please enter the gitlab-ci description for this runner:
[localhost.localdomain]: jdk8·test
##下面的tag输入之后到底有什么用??
Please enter the gitlab-ci tags for this runner (comma separated):
js
Registering runner... succeeded                     runner=3kjzGzK4
## 执行容器,我用的shell
Please enter the executor: virtualbox, docker-ssh+machine, docker, docker-ssh, parallels, shell, ssh, docker+machine, kubernetes:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

当我注册完runner,满心欢喜推送了一个带有.gitlab-ci.yml文件的项目上去后,我发现流水线一直是pending状态,查看job的提示显示作业被卡住。请检查runner、**此作业被卡住,因为没有任何活动的 runner 能运行此构建。 **这样的字样。明明runner注册成功了,在排除了共享runner、独自runner的问题之后,我看到了官方.gitlab-ci.yml文件中的介绍点击查看官方介绍:tags

摘入官方资料

tags is used to select specific Runners from the list of all Runners that are allowed to run this project.
During the registration of a Runner, you can specify the Runner's tags, for example ruby, postgres, development.
tags allow you to run jobs with Runners that have the specified tags assigned to them:

job:
  tags:
    - ruby
    - postgres

The specification above, will make sure that job is built by a Runner that has both ruby AND postgres tags defined.

所以,当我把.gitlab-ci.yml文件中加入tags标示之后,项目可以顺利的running了。

除此方式外,还可以在runner注册时候将runner选为可以运行没有任何标签的作业 这一项。同样可以解决问题,只不过这种方式在托管的代码环境复杂的时候就不能随性的设置多种runner环境了。

2. 基于maven的Runner环境怎么配置?

基于SpringBoot的样例工程,需要用到maven构建,先看.gitlab-ci.yml的代码

build:
    script:
    - 'pwd && mvn test'
    tags:  
    - java
    

这里就是执行以下mvn test,因为tags标示的是java,结合文章上面一个问题,这里需要使用打了标签为java的runner进行构建。

而我遇到的问题是,maven 中的setting.xml文件应该放在哪里?

setting.xml文件有位置的优先级,从低到高依次:基于项目的pom.xml->user文件加下.m2/setting.xml->maven安装目录/conf/setting.xml。

之前我将配置文件放在了root用户的~/.m2/setting.xml,结果Runner执行的时候并没有读取到我的配置,我猜gitlab-runner执行时使用的是gitlab-runner用户,因此直接修改maven安装目录/conf/setting.xml,保存再次执行,搞定。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,233评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,013评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,030评论 0 241
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,827评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,221评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,542评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,814评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,513评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,225评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,497评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,998评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,342评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,986评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,812评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,560评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,461评论 2 266

推荐阅读更多精彩内容