Несоответствующая целостность пакетов в Карафе между развертываниями - PullRequest
0 голосов
/ 26 февраля 2019

Справочная информация

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

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

Сама установкаполностью автоматизирован и работает каждый раз.Перед началом развертывания сначала останавливается Karaf, затем очищаются папки 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.Похоже, что Караф переупаковывает JAR-файлы в процессе обслуживания их с data/cache, что делает разницу в суммах SHA1.

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

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

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