NuGet / OpenWrap для развертываний и управления зависимостями времени выполнения - PullRequest
1 голос
/ 04 мая 2011

Я полностью понимаю, для чего NuGet / OpenWrap были в основном созданы и предназначены, и как он был принят и применен с тех пор, как был выпущен некоторое время назад.

Однако я могу видеть другие случаи, чтобы использовать его в еще одномпуть.Одна из вещей, о которой я думал, привлекает внимание к зависимостям времени выполнения.

Набор корпоративных продуктов, над которым я работаю, в основном состоит из ядра, состоящего из различных сервисов и дополнительных модулей.Эти модули подключаются правильно, чтобы сделать доступными определенные функции для формирования уникальных решений в соответствии с требованиями.Эти уникальные решения внедряются на внутренних удаленных серверах, в центрах обработки данных, в облаке, в вашем патио ... практически везде.

Нужно сказать, что развертывание обновлений для исправлений ошибок + обслуживание сложны и должны быть выполненывручную, которые оказались подвержены ошибкам и неуклюжи.Тем более что версии интерфейсов и другие компоненты должны совпадать, а для крупных развертываний обычно требуется развертывание каждого модуля.

Лично я не большой поклонник создания пакетов установщика (MSI, Web Installer и т. Д.)для каждого уникального решения, поскольку это скоро выйдет из-под контроля и не очень хорошо масштабируется.

Мне было интересно, могут ли менеджер пакетов и пользовательские каналы помочь нам упростить этот процесс.Может быть, я думаю не в том направлении и буду благодарен за комментарии и мысли.

1 Ответ

1 голос
/ 04 мая 2011

Мы сделали это успешно. OpenWrap можно просто вызывать для обновления пакетов в определенные каталоги. Развертывание приложения - это вопрос добавления нового дескриптора с пакетами, которые вы хотите увидеть развернутыми, и разрешение openwrap решить за вас.

Это работает особенно потому, что в OpenWrap есть концепция системного репозитория (для каждого пользователя), который также можно перенаправить (если вы хотите разбить несколько репозиториев, по одному на приложение или для тестирования ...).

Развертывание нового приложения - это только вопрос добавления новой папки со связанным дескриптором или добавления приложения прямо в системный репозиторий. Автообновление может быть реализовано простым запуском инструментов командной строки openwrap в пакетном задании.

Если вы хотите подняться на один уровень выше, вы можете сделать свое приложение составным, используя API OpenWrap и динамически добавляя / удаляя пакеты. У нас есть разрешение сборки во время выполнения.

...