使用Gitlab CI生成Android构建

时间:2014-07-24 19:51:08

标签: android gitlab-ci

我刚刚安装了Gitlab作为我的项目的存储库,我想利用他们的Gitlab CI系统。我希望在每次提交后自动生成分发并调试Apk。我用Google搜索,但我没有找到任何教程或类似案例。如果有人能以某种方式指导我,那就太棒了。

谢谢!

2 个答案:

答案 0 :(得分:13)

我刚刚在how to setup Android builds in Gitlab CI using shared runners上写了一篇博文。

最快捷的方法是让.gitlab-ci.yml具有以下内容:

image: openjdk:8-jdk

variables:
  ANDROID_TARGET_SDK: "24"
  ANDROID_BUILD_TOOLS: "24.0.0"
  ANDROID_SDK_TOOLS: "24.4.1"

before_script:
  - apt-get --quiet update --yes
  - apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
  - wget --quiet --output-document=android-sdk.tgz https://dl.google.com/android/android-sdk_r${ANDROID_SDK_TOOLS}-linux.tgz
  - tar --extract --gzip --file=android-sdk.tgz
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter android-${ANDROID_TARGET_SDK}
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter platform-tools
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter build-tools-${ANDROID_BUILD_TOOLS}
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter extra-android-m2repository
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter extra-google-google_play_services
  - echo y | android-sdk-linux/tools/android --silent update sdk --no-ui --all --filter extra-google-m2repository
  - export ANDROID_HOME=$PWD/android-sdk-linux
  - chmod +x ./gradlew

build:
  script:
    - ./gradlew assembleDebug
  artifacts:
    paths:
    - app/build/outputs/

这开始使用Java 8 Docker镜像,然后在构建运行之前继续下载并安装必要的Android SDK。我的帖子还详细介绍了如何将其构建为Docker镜像并将其托管在Gitlab上。

希望这有帮助!

更新 - 4/10/2017

我写了一篇规范的博客文章,用于在11月份在Gitlab CI中设置Android版本,并在官方Gitlab博客中使用#16; 16。包括有关如何运行测试等的详细信息。链接到这里。

https://about.gitlab.com/2016/11/30/setting-up-gitlab-ci-for-android-projects/

答案 1 :(得分:3)

您可以在GitLab CI项目中添加构建步骤,如下所示。

gradle assemble

enter image description here

这将生成推送的调试和发布APK:

/build/outputs/apk/

然后,您可以编写脚本来存档生成的APK,但是您需要。