Несоответствующая целостность пакетов в Карафе между развертываниями

Фон

Я использую Karaf 4.2.0 на RHEL 6 с последней доступной Oracle JDK 1.8.x.

По соображениям безопасности я пытаюсь найти лучший способ проверить целостность пакетов, обслуживаемых компанией Karaf. Текущий подход, который я использую, заключается в вычислении SHA1-хэшей всех файлов bundle.jar, найденных на $KARAF_HOME/data/cache/bundle*/version0.0/ и сравните их с теми, что я развернул в другом экземпляре Карафа в другой среде.

Само развертывание полностью автоматизировано и работает каждый раз. Перед началом развертывания сначала останавливается Караф, затем data/cache, data/tmp а также data/kar папки были очищены, Karaf снова запустился, и развертывание было выполнено в два этапа:

  1. Установите толстый KAR, который охватывает все сторонние пакеты, необходимые для запуска моего приложения: kar:install

  2. Установите мои комплекты приложений через файл функций Karaf, размещенный в частном экземпляре Artifactory, вместе со ссылками на комплекты, используя: feature:repo-add -i

Эта проблема

Каждое развертывание вызывает сторонние пакеты в data/cache/ папка с разными хэшами SHA1, даже если содержимое JAR идентично (проверяется путем их распаковки и запуска рекурсивного сравнения). Более того, SHA1 не совпадает с Maven Central. Похоже, что Караф переупаковывает банки в процессе их обслуживания от data/cacheТаким образом, разница в суммах SHA1.

Для моих собственных пакетов приложений их хэши SHA1 согласованы при повторном развертывании приложений (а также при развертывании одного и того же файла функций в разных средах), но всегда отличаются от тех, которые находятся на моем частном сервере Artifactory.

Есть ли способ обойти / исправить эту проблему непоследовательной целостности для пакетов, обслуживаемых от Карафа? data/cache?

0 ответов

Другие вопросы по тегам