美文网首页
gitlab runner tag

gitlab runner tag

作者: book_02 | 来源:发表于2022-01-04 15:52 被阅读0次

    为了防止某个平台编译机挂掉,导致该平台版本出不了,于是想多部署几台 runner ,使得其中某台runner 挂掉时,另外一台runner还可以工作,不影响出版本。

    想到通过tag的方式来实现,配置的时候发现有两个地方可以添加tag:

    1. 注册runner时,给runner添加tag。不同的runner设置相同的tag
    2. 在写 .gitlab-ci.yml 时,使用tag关键字来制定

    测试之后发现,其中第1种方式可以达到编译机容灾的目的。

    1. 给runner添加tag

    1. 多个runner可以使用同一个tag
    2. 一个runner可以配置多个tag

    所以使用时把多个runner配置有相同的tag可达到编译机容灾的目的。

    注册时通过设置 --tag-list 选项来配置tag:(下面是以docker来运行gitlab runner)

    docker run --rm -v /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register \
      --non-interactive \
      --executor "docker" \
      --docker-image alpine:latest \
      --url "http://10.168.1.108:8929" \
      --registration-token "aQqLxxoTVCdyin73x86t" \
      --description "gitlab-runner" \
      --tag-list "docker,localMachine" \
      --run-untagged="true" \
      --locked="false" \
      --access-level="not_protected"
    

    可以在gitlab的ci界面看到runner的tag信息如下:

    多个runner之间怎么运行代码,可能需要配置负载均衡的策略。

    2. .gitlab-ci.yml的tag

    .gitlab-ci.yml的tag另有用途:

    yml的多tag是"与"的关系,指定任务在同时有这些tag的runner上运行

    官方说明如下: (https://docs.gitlab.com/ee/ci/yaml/)

    3. 其他参考

    GitLab Runner Tags – Complete Guide for Complex Scenarios
    https://www.bitslovers.com/gitlab-runner-tags/

    相关文章

      网友评论

          本文标题:gitlab runner tag

          本文链接:https://www.haomeiwen.com/subject/zvgqcrtx.html