Android GitLab CI. Повторное использование скомпилированных файлов по этапамAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Android GitLab CI. Повторное использование скомпилированных файлов по этапам

Сообщение Anonymous »

Я ищу решение для оптимизации выполнения конвейера путем повторного использования скомпилированных файлов с предыдущих этапов.
Давайте сузим его. до двух этапов: компиляция-тест. предоставит доступ к своей папке сборки для тестирования.
До сих пор я пробовал ключевое слово «зависимости». Но Gradle, похоже, не использует повторно файлы, что бы я ни делал.
Подтверждение концепции
Доказательство концепции достижимо локально, в Android-студия:

Код: Выделить всё

./gradlew clean
./gradlew compileReleaseKotlin compileReleaseJavaWithJavac
./gradlew --console=plain app: testReleaseUnitTest
Я вижу все АКТУАЛЬНЫЕ журналы рядом с задачами компиляции, ksp и т. д. при выполнении тестовой команды.Попытка 1
Но когда конвейер запускается с ними, я вижу, что gradle снова выполняет все задачи.

Код: Выделить всё

compile:
stage: compile
script:
- ./gradlew --console=plain compileReleaseKotlin compileReleaseJavaWithJavac
artifacts:
paths:
- app/build/
expire_in: 1 days

tests_release:
stage: tests
dependencies:
- compile
script:
- ./gradlew --console=plain app:testReleaseUnitTest
Попытка 2
Я даже пытался удалить некоторые команды вручную, вот так

Код: Выделить всё

- ./gradlew --console=plain app:testReleaseUnitTest -x :app:compileGmsReleaseKotlin -x :app:kspGmsReleaseKotlin
Но тогда это терпит неудачу с

Код: Выделить всё

Execution failed for task ':app:processGmsReleaseJavaRes'.
> Querying the mapped value of provider(java.util.Set) before task ':app:compileGmsReleaseKotlin' has completed is not supported
Попытка 3
Я также попробовал загрузить артефакты и поместить их в свои локальные файлы. И вроде частично работает. Так может быть проблема в том, что мне нужно как-то применить эти файлы?
TL;DR
Как повторно использовать скомпилированные файлы (папка модуля/сборки) ) для последующих этапов CI в одном конвейере?

Подробнее здесь: https://stackoverflow.com/questions/789 ... ugh-stages
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»