Моя цель - создать, упаковать и протестировать java-проект, созданный с помощью maven, с использованием конвейера сборки Councourse.
Настройка как таковая на месте, и все работает нормально, но время сборки слишком велико из-за низкой скорости загрузки maven из нашего нексуса.
В моем yml-файле задания сборки используется следующий ресурс в качестве основы для сборки maven:
# ...
image_resource:
type: docker-image
source:
repository: maven
tag: '3.3-jdk-8'
# ...
Я осознаю тот факт, что наличие «чистого листа» для каждой постройки - это то, что заложено в зал по задумке.
Теперь мой вопрос: что было бы хорошим способом кэшировать локальный репозиторий maven (скажем, с некоторыми базовыми вещами внутри, такими как Spring и его зависимости)?
На ум приходят следующие варианты:
- Использование образа докера, в который уже встроены зависимости
- Создание ресурса, который предоставляет мне необходимые зависимости
Насколько я понимаю, вариант 1) не уменьшит размер загрузки для сборки, поскольку собрание, похоже, не кэширует образы докеров, используемые в качестве основы для заданий сборки (или я здесь ошибаюсь?)
Прежде чем двигаться дальше, я хотел бы убедиться, что следующий вариант 2) дает мне какое-либо преимущество - используются ли образы докеров для кеширования собрания в качестве ресурсов?
Я могу что-то упустить, так как я относительно новичок в этом. Так что простите меня, если я заставлю вас заявить здесь очевидное. :)