2023年11月26日发(作者:)
关于linux搭建git-runner,实现cicd⾃动部署
关于linux搭建git-runner,实现ci/cd⾃动部署
整理最近搭建gitlab的ci/cd流程,⽅便⾃⼰以后使⽤,本⽂只记录服务器端,关于gitlab服务器搭建,以及windows端runner实现会在其他博客
中说明,通俗易懂部分不做说明
将可能遇到的问题写在前⾯
部署完成,提交代码.流⽔中出现相应的任务,但⼀直在执⾏中(卡在pedding状态),这个问题遇到两种情况
CI/CD
(1)在流⽔任务中显⽰pendding状态,并且有提⽰stuck,点进去后显⽰没有该项⽬指定的tag存在,请,检查你的配置中指定执⾏该
任务的的runnner与注册runner名称是否⼀致
(2)没有任何提⽰,只是⼀直显⽰pendding状态,删掉runner重新注册,问题解决
2.执⾏失败
查看是否已将⽂件所有者改为gitlab-runner
准备⼯作
1.从仓库中把项⽬拉下来
2.在gitlab创建⼀个runner⽤户
3.在代码中写好.中配置
.简要说明
以下为master分⽀和test分⽀分别对应正式和测试环境,当更新不同分⽀时,根据tag触发不同的runner实现相应服务器的代码更新
stages:
- build
job1:
stage: build
tags:
- master //指定由哪个runner运⾏
script:
# 打开到项⽬⽬录
- cd /www/wwwroot/yyy
#更新对应分⽀代码
- git pull origin master
3.注册runner
gitlab-ci-multi-runner register
在注册是需要填写⼀些必要信息,信息如下
1.项⽬地址
2.项⽬token
的描述(本⼈作为备注来使⽤⼀般记录xx服务器yy项⽬zz环境)
标签(在只有⼀个环境时不需要在意此处,当有多个环境a,b,c时每个环境需要有⼀个tag标签,⽤于当某个分⽀更新时去执⾏哪个
runner,下⾯会做简单说明)
5.是否运⾏在没有tag的build上⾯,根据情况选择true或false
6.是否锁定runner到当前项⽬(这⾥我没⽤感受过直接的效果直接选择true)
7.选择执⾏器,有很多种选择,根据具体情况,我在linux上直接部署的选择shell,在windows选择powershell


发布评论