Сбой сборки Gradle в CI при параллельном запуске для двух веток с общей папкой .gradle - PullRequest
1 голос
/ 24 марта 2020

Учитывая, что у меня есть проект Gradle с включенной оболочкой Gradle.

Содержимое gradle-wrapper.properties выглядит следующим образом:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

Когда я выполняю задачу ./gradlew clean build для 2 ветвей в CI параллельно первая сборка продолжает выполняться до завершения, а вторая сборка завершается неудачно из-за:

FAILURE: Build failed with an exception.

    * What went wrong:
    Cannot create service of type SettingsLoaderFactory using BuildScopeServices.createSettingsLoaderFactory() as there is a problem with parameter #4 of type ClassLoaderScopeRegistry.
    > Cannot create service of type ClassLoaderScopeRegistry using BuildScopeServices.createClassLoaderScopeRegistry() as there is a problem with parameter #2 of type ClassLoaderCache.

 Caused by: org.gradle.api.UncheckedIOException: Failed to create parent directory '/home/buildagent/.gradle/caches/5.6.4' when creating directory '/home/buildagent/.gradle/caches/5.6.4/generated-gradle-jars'

Почему эти сборки содержат sh?

Как сохранить кэширование загруженных зависимостей и избежать столкновений при сборке?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...