Ответ 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 в качестве решения.