android - Gitlab CI :- How to create the Shared Runner in Gitlab which does not depend on the any system?

标签 android gitlab apk gitlab-ci gitlab-ci-runner

我研究了Gitlab Runner这是两种类型一种是Custom Runner另一个是 Shared Runner .
我用过Custom Runner喜欢 dockerGitlab用于创建 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 RunnerGitlab

最佳答案

注册共享运行者的步骤:

Pre-requisite: Gitlab-Runner should have been installed. Follow this document for Installing Runner


  • 登录到 Gitlab。转至 管理专区 >> 概述 >> 运行者 >> 手动设置共享 Runner

  • enter image description here
  • 使用 root 用户或安装 runner 的用户(比如 gitlab-runner)登录到安装 runner 的服务器。在这里,我们使用 root 用户注册运行者。运行以下命令:gitlab-runner register
  • 根据您的设置填写以下详细信息:
  • 请输入 gitlab-ci 协调器 URL: https://example.com/gitlab/
    (在手动设置共享Runner 下的gitlab中查找url)
  • 请输入此运行者的 gitlab-ci token : jiRS-3KxGaEdkLo6tToZ
    (在手动设置共享Runner 下的gitlab中寻找token)
  • 请输入此运行器的 gitlab-ci 描述:我的第一个切丝亚军
    (输入运行者的任何名字)
  • 请输入此运行器的 gitlab-ci 标签(逗号分隔): ci-shared,ci-task
    (输入您想与运行者关联​​的任何标签)
  • 请输入执行者:docker-ssh,parallels,virtualbox,docker+machine,kubernetes,custom,docker,docker-ssh+machine,shell,ssh:外壳
    (输入您需要运行器使用的执行器,根据执行器的选择,您将获得其他选项填写。请查看executors的文件)


  • 现在,您可以看到消息运行器已注册。
    enter image description here
    您可以在 Gitlab 中进行验证。转到 Gitlab,管理区 >> 概览 >> Runners >> 手动设置共享 Runner 你可以看到运行者已经注册了名字我的第一个切丝亚军
    enter image description here
    在 Gitlab 中为项目启用 Shared Runner 的步骤:
  • 转到 Gitlab 中的项目。
  • 然后,在项目页面中,设置 >> CI/CD >> Runners >> Shared Runners
  • 然后,点击Enable shared runners .现在,您可以使用 Gitlab CI/CD 的共享运行器。
  • .gitlab-ci.yml 中使用与共享运行器关联的标签,以便作业将使用共享运行器运行。

  • enter image description here
    更改 .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/
    
    
    注册特定运行者的步骤:
  • 登录到 Gitlab。转到项目,然后 设置 >> CI/CD >> Runners >> 手动设置特定的 Runner
  • 接下来,按照上面为 给出的步骤 2 中的相同步骤进行操作。注册共享运行者

  • enter image description here

    关于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/

    相关文章:

    java - 如何从 Android Studio 中的 Webview 加载的 URL 中删除段落标签?

    permissions - Gitlab:我可以创建一个仅对某些开发人员可见的分支吗?

    android - 这里是否使用了 Android Keystore 中提供的信息?在我们签署应用程序后它是否可读?

    android - 在 Android Studio 中签署 Android apk 文件的最简单方法是什么?

    android - 如何在 Unity3d 中更改包名称

    Android Studio 3.5 - 格式化 (ctrl+Alt+L) XML 文件中的代码正在重新排列 LinearLayout 中的 View

    android - 在 android studio 0.3.1 中使用 ActionbarSherlock 的编译错误

    android - 具有嵌套共享元素的场景转换

    git - 如何从终端使用 Gitlab 的问题?

    gitlab - 如何在 gitlab-ci 中使用规则