web-dev-qa-db-ja.com

Gitlab CI内でGradleの依存関係をキャッシュする方法

Androidプロジェクトのgitlab-ci.ymlファイル内にキャッシュプロパティを追加します。

cache:
  paths:
    - .gradle/wrapper
    - .gradle/caches

しかし、各パイプラインで./gradlew assembleを実行すると、ビルド時間が遅くなるすべてのGradle依存関係がダウンロードされます。

13
Адриан

Gitlabランナーはプロジェクトディレクトリ(例:./gradleフォルダー)外のファイルをキャッシュしないため、プロジェクトディレクトリ内のすべての依存関係をキャッシュする必要があります。

Gradleユーザーのホームディレクトリを指定する-gコマンドを使用できます。

たとえば、./gradlew -g /cache assembleを呼び出して、依存関係を/cacheフォルダにキャッシュできます。

6
Saeed Masoumi

私はこのようにしています

before_script:
  - export GRADLE_USER_HOME=`pwd`/.gradle

cache:
  paths:
    - .gradle/wrapper
    - .gradle/caches
16
Martin Gerhardy