我研究了Gitlab Runner
这是两种类型一种是Custom Runner
另一个是 Shared Runner
.
我用过Custom Runner
喜欢 docker
在 Gitlab
用于创建 apk
的 Android
.它工作正常并创建所需的构建。但通过这种方式,我得到了一个 问题 是它取决于我的系统意味着当我的系统打开时我的Custom Runner
工作正常,但是当我的系统关闭时,Gitlab
无法执行操作,因为它取决于我的系统运行程序。
我已经阅读了Shared Runner
它不依赖任何东西并执行操作。我已经阅读了文档,但没有得到正确的方法来实现它。
请查看我的 .gitlab-ci.yml
下面的文件
image: jangrewe/gitlab-ci-android
stages:
- build
before_script:
- export GRADLE_USER_HOME=$(pwd)/.gradle
- chmod +x ./gradlew
cache:
key: ${CI_PROJECT_ID}
paths:
- .gradle/
build:
stage: build
tags:
- dev-ci
script:
- ./gradlew assembleDevelopment assembleProduction assembleStaging
artifacts:
paths:
- app/build/outputs/
请帮助我 Shared Runner
的Gitlab
最佳答案
注册共享运行者的步骤:
Pre-requisite: Gitlab-Runner should have been installed. Follow this document for Installing Runner
gitlab-runner register
(在手动设置共享Runner 下的gitlab中查找url)
(在手动设置共享Runner 下的gitlab中寻找token)
(输入运行者的任何名字)
(输入您想与运行者关联的任何标签)
(输入您需要运行器使用的执行器,根据执行器的选择,您将获得其他选项填写。请查看executors的文件)
现在,您可以看到消息运行器已注册。
您可以在 Gitlab 中进行验证。转到 Gitlab,管理区 >> 概览 >> Runners >> 手动设置共享 Runner 你可以看到运行者已经注册了名字我的第一个切丝亚军
在 Gitlab 中为项目启用 Shared Runner 的步骤:
Enable shared runners
.现在,您可以使用 Gitlab CI/CD 的共享运行器。 .gitlab-ci.yml
中使用与共享运行器关联的标签,以便作业将使用共享运行器运行。 更改
.gitlab-ci.yml
中的标签image: jangrewe/gitlab-ci-android
stages:
- build
before_script:
- export GRADLE_USER_HOME=$(pwd)/.gradle
- chmod +x ./gradlew
cache:
key: ${CI_PROJECT_ID}
paths:
- .gradle/
build:
stage: build
tags:
- ci-shared
script:
- ./gradlew assembleDevelopment assembleProduction assembleStaging
artifacts:
paths:
- app/build/outputs/
注册特定运行者的步骤:关于android - Gitlab CI :- How to create the Shared Runner in Gitlab which does not depend on the any system?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64675170/