gitlab ci 配置 java_GitLab CI/CD 配置

GitLab CI/CD 配置

概念

操作示例

创建测试项目 sample-web,然后打开项目的 Runners 配置

0a1a96832656fd58d6f3b652e7ac69c2.png

找到这个地方,后边要用

914969d3c650ca79cebcc9c775f9ca04.png

然后搭建 gitlab-runner,CI/CD 需要通过它实现

# 创建 gitlab-runner 目录

mkdir -p /usr/local/gitlab-runner && cd /usr/local/gitlab-runner

# 映射目录

mkdir -p /usr/local/gitlab-runner/config

# 启动

docker run -d --name gitlab-runner --restart always \

-v /usr/local/gitlab-runner/config:/etc/gitlab-runner \

-v /var/run/docker.sock:/var/run/docker.sock \

gitlab/gitlab-runner:v12.10.0

注册 runner

docker exec -it gitlab-runner gitlab-ci-multi-runner register

根据提示逐步输入信息

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):

http://192.168.10.227/ # 这是上边 GitLab Runners 里的地址

Please enter the gitlab-ci token for this runner:

be1FkhGu1nN3dsoa5Wnv # 这是上边 GitLab Runners 里的Token

Please enter the gitlab-ci description for this runner:

[32e99182c32c]: helloworld # 描述,自由发挥

Please enter the gitlab-ci tags for this runner (comma separated):

java8 # tags,相当于这个环境的名字,后边用的到

Registering runner... succeeded runner=be1FkhGu

Please enter the executor: docker, docker-ssh, ssh, docker+machine, docker-ssh+machine, custom, parallels, shell, virtualbox, kubernetes:

docker # 执行方式,我用的 docker

Please enter the default Docker image (e.g. ruby:2.6):

maven:3-jdk-8 # docker 镜像,这是个 java 项目,我用的 maven:3-jdk-8,根据自己需要填写

Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

提示成功,可以在 GitLab Runners 里看到我们刚刚注册的 runner

d1742197a40d62fedbbd64f2c6605e1c.png

在项目中添加 .gitlab-ci.yml 文件

文件描述了有哪些步骤,每步的名称,执行了什么命令,使用哪个分支,使用哪个 runner 等信息

stages:

- build

- test

- deploy

job_build:

stage: build

script:

- mvn clean install -s settings.xml

only:

- master

tags:

- java8

job_test:

stage: test

script:

- mvn test -s settings.xml

tags:

- java8

job_deploy:

stage: deploy

script:

- echo "deploy over..."

tags:

- java8

提交代码,可以看到 CI/CD 的执行情况

eee832579f3011743e700cc9ddc77b75.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558064.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java失败javac成功_JAVA SE JDK-10安装、配置(解决java成功,javac失败问题)

本文是在win10环境下安装JDK-10在linux环境下安装JDK-10请点击:CentOS 7 安装、配置JDK-101、下载JDK包点击打开下载网站点击图中的Accept License Agreement,再选择Win版本进行下载2、安装JDK包下载完毕,运行安装程序修改安装路径(这里选择的…

java搭建聊天服务器_使用 ServerSocket 建立聊天服务器-2

1.从serverListener中可以看出,每一个客户端创建新的请求之后,都会把它分配给一个独立的chatsocket ,但是每一个ChatSocket都是相互独立的,他们之间并不能沟通,所以要新建一个类,将这些新建的线程管理起来,然后实现他们之间的相互通信.(类似于微信加群聊天的功能)由于一个聊天服…

lavarel php区别,laravel中{{}}和{!! !!}的区别详解

本篇文章介绍了laravel中{{}}和{!! !!}的区别,感兴趣的朋友可以参考下。laravel中{{}}和{!! !!}的区别详解1.{{}}和{!! !!} 中{{}}支持转义 一段html代码只是被当成普通的字符串输出 ,{!! !!} 不支持转义 一段html代码可以被正常的解析1.2具体什么意思呢…

php获取ios,IOS 通过描述获取UDID PHP代码版

难点在于PHP对XML的解析文件结构:第一步:新建HTML文件 用于跳转安装描述文件 必须在safari里面打开地址第二步:新建udid.mobileconfig文件PayloadContentURLhttps://www.xxx.com/pay_super/receive.phpDeviceAttributesUDIDIMEIICCIDVERSIONP…

matlab如何读取csv,Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件 | 学步园...

CSV,逗号分开的文件,如果能快速的读取这些文件中的数据,无疑会帮助我们解决很多问题。1、 只有数据的CSV文件,CSV file that includes only numbers.As an example, create a text file, named as data.csv if you prefer, which …

url中隐藏php后缀,url中如何隐藏.php

url中隐藏“.php”的方法:首先找到并打开“nginx.conf”配置文件;然后添加内容“location / {ttry_files $uri $uri/ $uri.php$is_args$args;}”;最后保存修改即可。推荐:《PHP视频教程》现在很多人都喜欢用nginx作为Web服务器部署…

discuz手机客户端java,Discuz!7.2让高级搜索更全面

Discuz! 7.2 调整了对帖子的高级搜索,使高级搜索的搜索选项更细化,覆盖面更广。一、高级搜索功能介绍高级搜索界面如下图所示:1、按作者:此处可以填写发帖作者全名,也可以使用通配符"*",如填写&q…

php面向对象异常处理,PHP 错误和异常处理(下)

PHP 错误和异常处理(下)由 学院君 创建于9个月前, 最后更新于 7个月前版本号 #11723 views2 likes0 collects上篇我们讲了 PHP 中的错误报告和捕获,今天,我们来看看 PHP 程序中的异常处理。错误 vs. 异常错误与异常可以看作一对孪生兄弟,从严…

电脑运行java游戏,电脑运行软件卡顿?这几招游戏或是办公,让你速度飞起!...

许多朋友想知道他们已经购买了高端计算机,但是无论玩游戏还是运行软件,他们仍然陷于困境。今天,让我们教大家一个简单的方法来提高计算机性能。焦点:此方法大大提高了用户对高度配置的计算机的影响。如果计算机的设置不太高&#…

c matlab 数据类型,matlab中数据类型与c语言数据类型的区别?

matlab中数据类型与c语言数据类型的区别?mip版 关注:233 答案:3 悬赏:0解决时间 2021-02-23 08:46已解决2021-02-22 22:32matlab中数据类型与c语言数据类型的区别?最佳答案2021-02-22 22:42简单谈一下。1.好多类型是对应的。输入一个数,ma…

oracle数据库安装提示M,Python第13课:oracle数据库的安装

Python第13课:oracle数据库的安装时间 2019-01-22下午4:30主讲 罗恒丰地点 四楼电教室版本:11.2大小:2.06G安装文件在专班ftp里python安装文件的文件夹。一.找到 stage/cvu/cvu_prereq.xml ,编辑系统名,以适…

linux 文件怎么不让删,请问如何设置权限,可以禁止用户删除文件

原帖由 WHITLACK 于 2009-9-28 08:48 发表 针对某个文件,如何设置权限,可以禁止删除?文件权限的r-w-x好像不能禁止删除的啊,谢谢指教!1:使用粘滞位可以做到,下面是介绍.强制位与冒险位、粘滞位针对u,g&…

linux运行中望cad,国产CAD软件中望的Linux版适配UOS, 我在国产系统里试了试

可能大家都知道,以往我们在国产操作里运行的软件,很多都是国外开源的软件。在以前很长一段时间里,国产操作中,国内企业很少去适配的。据说,国产深度之所以有很多国产软件,其中一个原因就是他们一家一家去拜…

linux内核死锁检测机制 | oenhan,Linux内核CPU负载均衡机制 | OenHan

还是神奇的进程调度问题引发的,参看Linux进程组调度机制分析,组调度机制是看清楚了,发现在重启过程中,很多内核调用栈阻塞在了double_rq_lock函数上,而double_rq_lock则是load_balance触发的,怀疑当时的核间…

linux下IPROTO_TCP,TCP/IP协议栈在Linux内核中的运行时序分析

可选题目三:TCP/IP协议栈在Linux内核中的运行时序分析在深入理解Linux内核任务调度(中断处理、softirg、tasklet、wq、内核线程等)机制的基础上,分析梳理send和recv过程中TCP/IP协议栈相关的运行任务实体及相互协作的时序分析。编译、部署、运行、测评、…

vs2019Linux守护,Visual Studio 2019将支援Ninja显着提升Linux专案建置效率

微软更新Visual Studio 2019,新增多个可提升Linux开发体验的功能,包括在Linux上支援建置系统Ninja,以及更完整地支援gdbserver,而且现在开发者也可以使用连接管理器(Connection Manager),编辑和配置预设的远端连接。使…

c语言程序中必不可少的,C语言程序设计(第3章程序控制语句)2

3.2 数据的输入与输出在程序的运行过程中,往往需要由用户输入一些数据,而程序运算所得到的计算结果等又需要输出给用户,由此实现人与计算机之间的交互,所以在程序设计中,输入输出语句是一类必不可少的重要语句&#xf…

android 九宫格封装,Android 九宫格布局

演示image需求满足0-9个图的适配图数量演示1image2image3image4image5image6image7image8image9image使用手动设置android:layout_width"match_parent"android:layout_height"wrap_content"app:ngl_gridSpace"10dp"app:ngl_oneChildHeight"…

android放大镜无广告,Android放大镜的实现代码

快三个月了没写博客了,因为工作调动,很多经验、心得都没有时间记录下来。现在时间稍微充裕了点,我会尽量抽时间将之前想写而没写的东西补上。进入正题。去年某个时候,我偶然看到一篇文章,讲android里面放大镜的实现。文…

鸿蒙和宙斯谁厉害,漫威宇宙宙斯vs奥丁,到底谁更强

宙斯在漫威里,是希腊神话中的众神之王,奥林匹斯十二主神之一,也是奥林匹斯大部分神和神奇女侠戴安娜的父亲,同时也是沙赞的力量来源之一能力:不朽(只有宙斯的血能杀死宙斯)宙斯神力雷霆之怒控制天气宙斯的力量并不是某…