私有化部署的gitlab具有CI/CD的功能,可以通过gitlab执行流水线完成代码的构建、编译。
- 配置CI/CD
在项目下的【设置】-【CI/CD】
(1)流水线通用配置
重点关注一下CI/CD配置文件,默认为(.gitlab-ci.yml)为项目根目录的文件,路径可以自定义选择。
(2)Runner
Runner 配置是去确保gitlab执行流水线主要工具。Runner 用于接收和执行GitLab的CI/CD作业的进程。
- 下载安装gitlab-runner
可参考官方网站Install GitLab Runner | GitLab
安装gitlab-runner方式有linux,Docker,等系统。但是觉得linux安装模式在配置使用方面都比较便捷。
Install GitLab Runner manually on GNU/Linux | GitLab linux下官方安装文档;
安装好gitlab之后需要配置执行gitlab-runner的用户,已经工作目录
sudo gitlab-runner install --user=用户名 --working-directory=/path 工作目录
sudo gitlab-runner start
- 注册runner
runner安装和启动好后,就可以注册runner了;
gitlab-runner register
会提示输入gitlab url
将runner中网址和注册令牌依次复制填写即可。
注册成功后需要里选择runner执行的执行器
这边比较倾向于shell,直接填写shell就可以了。
完成以上操作就可以在gitlab中runner中看到已经注册的runner了。
但是这时看到的runner还未链接,需要将gitlab 校验一下和重启一下
gitlab-runner verify
Runtime platform arch=amd64 os=linux pid=27533 revision=5316d4ac version=14.6.0
Running in system-mode.
Verifying runner... is alive runner=NPUkiLky
就能看到runner是alive的。
晚上以上操作基本上完成了runner的配置。这里需要注意是默认的runner只能对打了标签的项目进行使用。所以需要修改一下runner的配置让对所有状态下项目使用。点击runner中编辑按钮即可跳转到下面页面。
对【运行未标记的作业】打钩即可。
这样上面的runner即可在本项目中使用了。
也可以将runner共享到本组得项目中
- 编辑流水线
点击创建流水线,可以编写 构建脚本,执行内部脚本。在【script】下面编写shell脚本或执行自己写shell脚本命令。
stages: # List of stages for jobs, and their order of execution
- build
- test
- deploy
build-job: # This job runs in the build stage, which runs first.
stage: build
script:
- echo "Compiling the code..."
- echo "Compile complete."
unit-test-job: # This job runs in the test stage.
stage: test # It only starts when the job in the build stage completes successfully.
script:
- echo "Running unit tests... This will take about 60 seconds."
- sleep 60
- echo "Code coverage is 90%"
- 触发流水线
完成上一步操作后,原则上所在流水线上的触发器,每push一次代码就会触发一下流水线。
也可以通过流水下触发器通过API调用一起使用来触发流水线。
版权归原作者 帅累累 所有, 如有侵权,请联系我们删除。