0


搭建git runner实现自动编译

Git Runner 是指使用 Git 进行版本控制的 CI/CD 运行器(Runner),通常与 GitLab CI、GitHub Actions 或其他持续集成/持续部署工具结合使用。它的主要作用是在代码库中执行自动化构建、测试和部署等任务。下面是一些有关 Git Runner 的基本信息和如何使用它的步骤。

1. Git Runner 的基本概念

  • Runner:Git Runner 是一个独立的应用程序,可以通过 GitLab CI 或 GitHub Actions 来运行作业。它可以在本地或云环境中运行,可以与不同的环境(如 Docker、虚拟机等)集成。
  • CI/CD:持续集成 (CI) 是一种软件开发实践,通过自动化构建和测试过程,频繁地集成代码变化。持续部署 (CD) 是将代码自动部署到生产环境的一种方式。

2. GitLab Runner 和 GitHub Actions Runner

GitLab Runner

  1. 如果你使用 GitLabGitLab Runner 是一个开源项目,可以在本地机器或服务器上安装。它支持多种执行环境,包括 DockerShellSSH Kubernetes

3. 环境搭建

  1. 下面以在ubantu服务器上搭建运行Gitlab runner为例。
  2. runner/gitlab-runner - Packages · packages.gitlab.com网址中下载对应自己电脑配置的deb包,我的电脑为64位,所以下载的gitlab-runner_amd64.deb

①安装gitlab runner 的deb包

  1. 将下载的deb包复制到服务器你的安装路径下,例如我的安装路径在~/download/git_runner,将deb包放置在该路径下,执行下面的命令,./表示当前路径。
  1. sudo dpkg -i ./gitlab-runner_amd64.deb
  1. 如果执行上述命令时出现INFO: Docker installation not found, skipping clear-docker-cache ,没有安装成功,那就需要安装Docker

②安装Docker

  1. sudo apt update

安装依赖包

  1. sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common

添加 Docker 的官方 GPG 密钥:

  1. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

官方安装

  1. sudo add-apt-repository \
  2. "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  3. $(lsb_release -cs) \
  4. stable"

安装最新版本的 Docker Engine-Community

  1. sudo apt install docker-ce

到此安装完成, 可以输入 sudo docker --version 或者 sudo docker run hello-world 测试是否安装成功

安装成功后再执行①安装gitlab runner 的deb包就可以成功了。

③注册gitlab runner

gitlab-runner register -n --name my_runner -u 服务器url -r zQ-LgUyCuU5EToehUrQ9 --executor shell --builds-dir=编译路径 --cache-dir=缓存路径

--name 表示runner名称

-u 表示gitlab服务器url

-r 表示gitlab上指定仓库runner的token

--executor shell 表示编译时执行脚本的类型为shell

--builds-dir 表示runner使用的编译目录,编译后的工程存放在该路径下

--cache-dir 表示runner使用的缓存目录

没有setting这个选项表示权限不够。

④开启gitlab runner

gitlab-runner run

⑤查看gitlab runner状态

sudo gitlab-runner status

⑥上述配置完之后打开gitlab可以看到我们刚才注册的gitrunner

上述操作完之后,关闭远程控制服务器runner也会被关闭,可以在/etc/ini.d/下面写个脚本实现开机自启动,这样就可以在后台运行了,不需要再ssh连接服务器手动开启。

4. 配置

  1. .gitlab-ci.yml
  1. 在工程根目录下创建.yml文件,根据自己需求编写文件,这里简单介绍了基本用法。这样提交代码的时候就可以实现自动编译啦。在Build->Jobs中可以查看每次提交的编译结果。
  1. image:
  2. name: gitlab/gitlab-runner:latest
  3. entrypoint: ["/bin/sh", "-c"]
  4. #执行job的顺序
  5. stages:
  6. - build
  7. - test
  8. - deploy
  9. build_job:
  10. stage: build
  11. tags:
  12. - my_runner # 选择使用的runner,如果没有设置tags不会往下执行这个job
  13. only: #运行script的条件
  14. - tags
  15. - test_runner # 仅在test_runner的分支上执行
  16. script: #linux命令行
  17. - cd ~
  18. test_job:
  19. stage: test
  20. tags:
  21. - my_runner
  22. script:
  23. - echo 'tests completed'
  24. deploy_job:
  25. stage: deploy
  26. tags:
  27. - my_runner
  28. only:
  29. - master # 仅在master的分支上执行
  30. script:
  31. - echo "部署到生产环境"
  32. - ./deploy.sh
  33. - echo 'deployment success'
标签: git gitlab

本文转载自: https://blog.csdn.net/qq_53053277/article/details/143056190
版权归原作者 Cara23456 所有, 如有侵权,请联系我们删除。

“搭建git runner实现自动编译”的评论:

还没有评论