Почему maven зависимость: дерево внезапно покинуло Kubernetes? - PullRequest
0 голосов
/ 12 октября 2018

Я использую gitlab (размещен) и использую средство запуска докера с образом сборки maven3.5.4-jdk10 для CI.Я пытаюсь перенести эту настройку в работающий кластер Kubernetes в Azure, используя предоставленные gitlab диаграммы руля плюс Minio для кэширования.Все работает нормально, раннер зарегистрирован, модули развернуты, сборка начинается,

$ mvn --settings .m2/settings.xml --batch-mode --errors --show-version -X -T 1C dependency:tree

идет загрузка артефактов.Теперь каждый раз после того, как количество загруженных файлов x останавливается, сборщик заархивирует кеш и завершается как «успешный».Даже при включенной отладке Maven нет ни одного сообщения, указывающего на какую-либо проблему.

Повторение вышеупомянутого процесса несколько раз, из-за кэширования, все больше и больше файлов загружаются, пока, наконец, сборка не сможет достичь компиляциифаза.Та же проблема наблюдается при изменении образа сборки на maven 3.3.9 и та же проблема после перестройки кластера.

Есть ли какая-либо известная причина, по которой mvn dependency:tree должен останавливаться в середине того, что он делает безкакие-либо указания?

1 Ответ

0 голосов
/ 12 октября 2018

Не совсем, со стороны Kubernetes.

Однако работа в Kubernetes отличается от работы на ноутбуке, поскольку вы делите ресурсы сервера с другими модулями и рабочими нагрузками.Трудно сказать, если вы не поделитесь тем, что работает в вашем кластере, но может случиться так, что у вас просто нет ресурсов в вашем кластере, и если размер вашего кэша увеличивается, тогда maven требует больше процессора, памяти и т. Д.

Вы можете попробовать настроить Resource and Limits для ваших модулей, чтобы у вас были гарантии в отношении того, когда вы запускаете maven в кластере.Вы также можете попробовать очистить кеш перед началом любого нового задания / сборки.

...