测试gitlab-runner
创始人
2024-03-24 09:10:47
0

 上一篇:Docker安装Gitlab-ruuner_素心如月桠的博客-CSDN博客https://blog.csdn.net/m0_47010003/article/details/127997515

总结:

上一篇中操作到:

📌安装了gitlab-runner,在gitlab中创建一个项目(testci),

并且使用docker exec -it gitlab-runner gitlab-runner register命令将gitlab-runner注册到gitlab中,

在新建的项目testci中,点击设置,选择CI/CD,找到Runner点击展开,可以看到我们的正在运行的runner。

把runner修改成可以运行没有标签的作业

接下来:

我们打包并上传一个项目到gitlab(也就是刚刚创建的testci)中,并进行持续集成

第一步:

先新建一个项目:使用IntelliJ IDEA创建Maven项目并上传项目至gitlab等远程仓库_素心如月桠的博客-CSDN博客

上面新建项目,并且第一次commit,push到gitlab中,我们在GitLab上testci项目中就可以看到刚刚push的项目了

第二步:

编写.gitlab-ci.yml文件(注意前面有个“.”)

 选择设置——>CI/CD——>Auto DevOps——>点击展开,可以看到提示

 回到idea中,在当前项目路径下右键新建.gitlab-ci.yml文件。

 在.gitlab-ci.yml文件中输入如下内容:

         在- echo后面输入什么在gitlab上面运行就会输出什么

 添加完.gitlab-ci.yml文件后再次commit,push

 

 push成功:

 

进入GitLab中,查看

 发现已经推送成功!

点击CI/CD——>选择流水线

进入流水线中,可以看到自动帮我们测试运行了。 发现报错

 点击已失败 

点击作业,查看报错信息

 回到idea中

 修改以后重新提交并push

 又报错:

	
Preparing the "shell" executor
Using Shell executor...
Preparing environment
Running on b39d63329796...
Getting source from Git repository
Fetching changes...
Reinitialized existing Git repository in /home/gitlab-runner/builds/b3842d37/0/myfirstGroup/testci/.git/
fatal: unable to access 'http://192.168.199.110/myfirstGroup/testci.git/': Failed to connect to 192.168.199.110 port 80: Connection refused
ERROR: Job failed: exit status 1

把防火墙关了

systemctl stop firewelld

接下来按如下操作:

https://blog.csdn.net/m0_47010003/article/details/128222023icon-default.png?t=M85Bhttps://blog.csdn.net/m0_47010003/article/details/128222023

 

 

运行结果中如上图, 最后2行可以看到我们在.gitlab-ci.yml文件的- echo后面输入的first test ci被打印

 思考:

输出first test ci这行代码实际执行位置?

我们运行了gitlab-runner容器,所以实际执行位置应该在容器中

docker ps查看一下gitlab-runner的容器ID

然后执行docker exec -it 82 bash命令,进入入容器终端并且保留为容器终端的输入形式

如上图所示,回车进入容器终端后,cd 切换到home目录下

 接着ls查看,并cd进入第一个目录,如下步骤:循环ls和cd操作直到进入刚刚创建的testci项目中

 cd进入testci中,刚刚的在gitlab中输出的first test ci就是在这里执行的,我们可以在testci命令下看到项目的src目录和pom.xml文件

 我们在当前路径下输入命令mvn -v查看maven的版本号

我们在idea中执行mvn命令,例如打包,直接输入mvn -就行,但是如果在.gitlab.yml文件中编写,再push通过gitlab执行,在gitlab上面执行的命令,例如上面输出:- echo first test ci。

我们想执行mvn命令,不然直接写mvn 还需要指定全路径

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:哪种网络模式具有... 使用AWS ECS中的awsvpc网络模式来获得最佳性能。awsvpc网络模式允许ECS任务直接在V...