Подтвердить что ты не робот

Самообслуживание NuGet

Я смотрел на самостоятельный хостинг NuGet, с трудом понимая, как его настроить и как это поможет поддержать наш процесс разработки.

Есть ли у кого-нибудь рекомендации по использованию, настройке?

Или мне нужно просто использовать размещенную службу?

4b9b3361

Ответ 1

Осмотрев различные решения - самообслуживание и хостинг, мы решили пойти с ProGet.

Обзор ProGet

ProGet имеет стандартную "бесплатную" лицензию и номинальную лицензионную плату (однолетний и вечный) для версии предприятия. В настоящее время мы используем стандартную "бесплатную" версию и не имеем никаких реальных жалоб. Вы можете создать столько каналов, сколько хотите, добавить столько пользователей, сколько захотите, и т.д. (Мы создали ленты "Тестирование", "Стадия" и "Производство", чтобы быть частью нашего процесса обеспечения качества.) Единственный реальный предел в бесплатной версии есть неспособность фильтровать внешние каналы для определенных пакетов, которые вы хотите включить в свои каналы ProGet. Эта функция фильтрации управляется с помощью "разъемов". С корпоративной версией - при создании фида вы можете дополнительно добавить "коннектор" для загрузки пакетов из других каналов (внешних или внутренних).

ProGet с управлением и созданием пакетов Nuget

Шаги по созданию самого пакета nuget я оставлю в популярном блоге Дэвида Эббо, http://blog.davidebbo.com/2011/04/easy-way-to-publish-nuget-packages-with.html. Однако, знайте, что для загрузки пакетов вы можете загрузить через веб-интерфейс администрирования пакетов ProGet, командной строки nuget.exe или Nuget Package Explorer.

Установка, настройка и активация ProGet

Установка, настройка и активация ProGet была наименее интуитивной частью. Он может быть установлен под управлением обычной базы данных SQL Server или SQL Server Express db. Кроме того, он также может быть самостоятельным приложением или работать под IIS. Если вам нужно выполнить автономную активацию или хотите запросить разные ключи лицензии, перейдите в my.inedo.com и создайте учетную запись, и вы сможете делать все оттуда.

Контроль качества Proget и CI

CI с TeamCity - это то, что нам нужно, поэтому мы рассматриваем создание процесса сборки пакета nuget с использованием сервера TeamCity Nuget. Вот как это сделать для создания пакетов, которые я опубликую в комментарии. Следующим шагом будет автоматическое опубликование созданных TeamCity пакетов nuget для соответствующих каналов ProGet (например, "Тестирование", "Стадия", "Производство" ), возможно, с использованием командной строки Nuget с ключом API.

Дополнительная информация

Мы смотрели на MyGet как на хостинг-сервис, но, похоже, он работал на простых сценариях, таких как добавление другого участника/пользователя. Он также подскочил довольно дорого, когда ему нужно больше, чем только два счета вкладчика. Если ProGet вы получаете неограниченные учетные записи пользователей только с бесплатной версией.

Еще одно примечание: для публикации проектов/пакетов типа OSS я бы рассмотрел Chocolatey в качестве решения.

Ответ 2

Другим вариантом для самостоятельного хостинга является использование пакета NuGet.Server и создание веб-сайта IIS для его размещения в вашей внутренней сети, хотя он не будет масштабироваться очень хорошо, если вы планируете опубликовать больше, чем несколько пакетов.

Я создал вилку NuGet.Server, которая использует индекс Lucene.Net для исправления этих проблем с производительностью. Загрузки можно получить в https://github.com/themotleyfool/Klondike/releases.

Ответ 3

Чтобы обновить этот поток, Visual Studio Team Services также имеет менеджер пакетов в режиме предварительного просмотра. Посмотрите на рынке: Управление пакетами

Ответ 4

Вы можете создать пустое веб-приложение Asp.Net и установить Nuget.Server из галереи Nuget. Это бесплатный вариант самостоятельного размещения собственных пакетов Nuget в IIS. Проверьте документация