1. 程式人生 > >Android 專案配置 gitlab-ci 持續整合

Android 專案配置 gitlab-ci 持續整合

一、專案根目錄下建立一個 .gitlab-ci.yml 檔案

然後在 .gitlab-ci.yml 中配置持續整合的指令碼:

指令碼配置詳細可以看:

 

Configuration of your jobs with .gitlab-ci.yml

Setting up GitLab CI for Android projects

二、為專案配置 gitlab-runner

我用的 windows 電腦,可以看這篇配置   : Windows 下 docker 部署 gitlab ci

三、說明

紅框中有兩個對勾,說明有兩個 job,順序與 檔案中定義的順序一致。

檔案內容:

image: openjdk:8-jdk

variables:
  ANDROID_COMPILE_SDK: "28"
  ANDROID_BUILD_TOOLS: "28.0.2"
  ANDROID_SDK_TOOLS:   "4333796"

before_script:
  - apt-get --quiet update --yes
  - apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
  - wget --quiet --output-document=android-sdk.zip https:
//dl.google.com/android/repository/sdk-tools-linux-${ANDROID_SDK_TOOLS}.zip - unzip -d android-sdk-linux android-sdk.zip - echo y | android-sdk-linux/tools/bin/sdkmanager "platforms;android-${ANDROID_COMPILE_SDK}" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager "platform-tools" >/dev/null - echo y | android-sdk-linux/tools/bin/sdkmanager
"build-tools;${ANDROID_BUILD_TOOLS}" >/dev/null - export ANDROID_HOME=$PWD/android-sdk-linux - export PATH=$PATH:$PWD/android-sdk-linux/platform-tools/ - chmod +x ./gradlew # temporarily disable checking for EPIPE error and use yes to accept all licenses - set +o pipefail - yes | android-sdk-linux/tools/bin/sdkmanager --licenses - set -o pipefail stages: - build - test lintDebug: stage: build script: - ./gradlew -Pci --console=plain :app:lintDebug -PbuildDir=lint assembleDebug: stage: build script: - ./gradlew assembleDebug artifacts: paths: - app/build/outputs/ debugTests: stage: test script: - ./gradlew -Pci --console=plain :app:testDebug

如果整合中出現錯誤:

可以點選進去檢視錯誤原因,解決之後重新載入一遍: