связь или артефакты с nuget?

Я пытаюсь внедрить в свою организацию достойный справочный менеджмент. Раньше я использовал Nexus с Maven и знаю, что это намного лучше, чем метод сборки всего локально. Поскольку это магазин .Net, я хочу использовать NuGet вместо Maven. Я знаю, что бинарный репозиторий будет самым важным моментом для правильной работы, но у меня нет опыта размещения репозитория NuGet в бинарном репозитории.

Есть ли причина отдавать предпочтение Nexus или Artifactory в этой ситуации? Мы используем Jenkins с svn в качестве нашего CI, если это имеет значение.


person Aidan    schedule 05.03.2013    source источник
comment
Просто и обновите это, так как вопросам несколько лет назад, теперь есть ProGet, который начинался как менеджер пакетов NuGet, но теперь является универсальным менеджером репозитория артефактов, таким как Artifactory Jfrog. Посмотрите сравнение двух инструментов, чтобы получить дополнительную информацию: inedo.com/support/kb/1115/a-comparison-artifactory-vs-proget   -  person Karl Harnagy    schedule 27.06.2016


Ответы (2)


Вот что мы выяснили в прошлый раз, когда сравнивали поддержку NuGet в Artifactory и Nexus (отказ от ответственности — я с JFrog):

  1. В Artifactory поддержка NuGet естественным образом интегрирована в продукт, что значительно упрощает управление — просто пометьте локальный репозиторий как включенный NuGet или установите удаленный URL-адрес для удаленного репо. Несколько репозиториев NuGet можно легко объединить в одном виртуальном репозитории NuGet — тот же подход, что и с любым другим репозиторием в Artifactory; В Nexus вам нужно будет определить новый тип репозитория, настроить новую выделенную область безопасности, и если вам нужно, чтобы существующий репозиторий также отвечал на запросы NuGet, вы должны добавить к нему специальный фасад. Это общий подход в Nexus, где каждый новый тип репозитория (например, P2) требует многоуровневых изменений конфигурации.

  2. В пользовательском интерфейсе Nexus нет абсолютно никакой интеграции для пакетов NuGet. Вы даже не можете искать артефакты NUGet, что имеет решающее значение для управления и обслуживания (поэтому поиска только в Visual Studio недостаточно). В основном это связано с тем, что Nexus сильно ориентирован на Maven и макет Maven; В Artifactory вы можете искать пакеты NuGet и управлять ими, как и любые другие артефакты. Вы можете просматривать информацию из метаданных nuspec в пользовательском интерфейсе и даже детализировать заглянуть в содержимое отдельных файлов в пакете NuPkg и проверить их содержимое.

  3. Интеграция безопасности также проще в Artifactory — нет необходимости вручную генерировать специальный ключ, а ключ представляет собой просто комбинацию имени пользователя и пароля или безопасный пароль. Это замечательно, если вы хотите, чтобы пароли NuGet ваших пользователей синхронизировались с интеграцией Artifactory MS-AD/LDAP; В Nexus NuGet использует изолированную область безопасности.

  4. Artifactory реализует весь спектр поиска NuGet, в том числе более эзотерические, но полезные варианты использования, а базовая реализация использует комбинацию кэшей в памяти и постоянных, предварительно вычисляемых свойств с возможностью поиска, чтобы гарантировать, что запросы NuGet будут очень быстрыми и масштабируемыми. даже для огромного репозитория; Не уверен, что Nexus использует подобные оптимизации.

Надеюсь, это поможет.

PS. Поддержка NuGet является частью Pro-версии Artifactory и бесплатно включена в Nexus OSS с сентября 2014 года.

person Yoav Landman    schedule 08.03.2013
comment
+1: Хотя я очень ценю ваш ответ (как человек из компании, разрабатывающей Artifactory), у меня есть небольшое замечание: не сразу становится ясно, является ли поддержка NuGet бесплатной или нет. Возможно, вы могли бы изменить свой ответ, чтобы отразить это? - person carlspring; 08.03.2013
comment
Спасибо, я добавил это к своему ответу. - person Yoav Landman; 08.03.2013
comment
Верно ли, что поддержка NuGet — это только часть профессиональной версии Artifactory? Судя по books.sonatype, начиная с версии 2.9 Nexus это бесплатно. com/nexus-book/reference/_introduction_6.html - person antwarpes; 13.08.2014
comment
Поддержка NuGet по-прежнему доступна только в Artifactory Pro. К сожалению, стоимость Pro непомерно высока для небольшого магазина программного обеспечения. Мы использовали ProGet для поддержки NuGet, и он работает достаточно хорошо. Теперь, когда Nexus OSS поддерживает NuGet, мы все переключаем на Nexus OSS. Очень жаль, так как в Artifactory есть что понравиться. Я бы хотел, чтобы JFrog приняла модель лицензирования, такую ​​как TeamCity. - person David Taylor; 19.12.2014

Nexus поддерживает NuGet, и вы можете размещать или проксировать свои репозитории NuGet непосредственно в нем. Посмотрите здесь.

Я фанат Maven и Nexus, поэтому я предвзят. Я использовал Artifactory. Это хороший инструмент, но в то время Nexus был намного лучше. Я считаю, что функция NuGet также доступна в версии OSS, но вы можете перепроверить это.

Я не буду спорить, почему и лучше ли Nexus, чем Artifactory, так как это было бы несправедливо и вызвало бы только флеймовые войны. Мое собственное мнение таково: ребята из Sonatype стоят за Maven, Nexus и Maven Central. Это ставит их в центр вещей, и поэтому их знания всегда будут более глубокими в отношении внутренностей этих инструментов и их взаимодействия.

Если вы знакомы с Nexus и чувствуете себя комфортно, я, честно говоря, не вижу причин для вас переходить на него. Впрочем, вы можете решить сами. Посмотрите здесь.

person carlspring    schedule 05.03.2013
comment
Artifactory всегда предоставлял вариант хранения в файловой системе (и он всегда был рекомендуемым). Глубокая вовлеченность Sonatype в Maven на самом деле сдерживает их, когда дело доходит до поддержки различных технологий и инструментов. Например. они по-прежнему позволяют макет maven только для Gradle и Ivy! Опыт Maven — это не то, чем стоит махать, когда речь идет о поддержке NuGet. - person JBaruch; 06.03.2013
comment
@JBaruch Я не верю, что это было так. Изначально (если я правильно помню, но, пожалуйста, поправьте меня) все артефакты хранились в базе данных. Позже они изменили его. - person carlspring; 06.03.2013
comment
Я вас поправляю, вы не правы. Просто не принимайте как должное любой FUD, который вы читаете в блоге Sonatype. - person JBaruch; 06.03.2013
comment
Что ж, учитывая, что вы работаете на JFrog, я считаю, что ваш ответ правильный. Благодарю за разъяснение. - person carlspring; 06.03.2013
comment
Поддержка NuGet предусмотрена только в Nexus Professional, и вы можете просто попробовать ее с помощью пробного установщика. Я работаю с Sonatype и призываю вас попробовать оба инструмента и узнать у других организаций и групп с открытым исходным кодом, что они используют и рекомендуют в масштабе и для вариантов использования, которые вы хотите поддерживать. - person Manfred Moser; 07.03.2013
comment
Кстати, ссылка на блог Джона Смарта действительно устарела — Wakaleo Consulting (компания Джона) давно перешла на использование Artifactory Online: wakaleo.artifactoryonline.com Также обратите внимание, что в сообщении в блоге ничего не говорится о поддержке NuGet, о чем и идет речь. - person JBaruch; 08.03.2013
comment
+1 -> @JBaruch: Правда, первая ссылка - это просто устаревшее сравнение, в котором не упоминается NuGet. Однако он по-прежнему сравнивает два менеджера репозиториев. Кроме того, ссылка на матрицу функций делает гораздо более тщательное сравнение. - person carlspring; 08.03.2013
comment
@carlspring Я не уверен, насколько правильно это сравнение, когда автор теперь с радостью использует и рекомендует инструмент, против которого он пришел - weblogs.java.net/blog/johnsmart/archive/2012/10/18/. Я бы назвал это устаревшим и действительно недействительным. Хотя матрица хорошая. - person JBaruch; 08.03.2013
comment
Хорошо, из-за разногласий я удалил ссылку на страницу Джона. :) - person carlspring; 08.03.2013
comment
Вау, теперь вы должны подвергать цензуре свои сообщения в этой теме? - person Brian Fox; 09.03.2013
comment
@brian-fox Никто ничего не подвергает цензуре; ссылка на старый пост Джона сейчас не имеет особого смысла, учитывая его нынешние взгляды. В любом случае, это было единоличное решение Карлспринга, его не заставляли отменять. - person JBaruch; 11.03.2013