Archiva / Maven как корпоративный репозиторий

Я настраиваю корпоративный репозиторий Maven с помощью Apache Archiva для своей компании. Наши требования на данный момент довольно простые - иметь внутреннее репо для наших файлов jar и управление зависимостями.

Я хочу убедиться, что Archiva не загружает какие-либо наши проприетарные файлы кода / jar в центральное репо (общедоступное), но мы хотели бы иметь возможность загружать общедоступные библиотеки из центрального репо, если это необходимо для проекта. (Наша желаемая конфигурация: IDE / Developer ‹Загрузка / выгрузка> Внутренний репозиторий‹ ТОЛЬКО ЗАГРУЗКА> Public Central Repo.)

Мой вопрос: по умолчанию Archiva загружает мои файлы jar в центральное репо, если оно настроено как прокси / зеркало? если да, как мне предотвратить публикацию в центральном / внешнем репо, сохранив при этом возможность загрузки из центрального хранилища при необходимости?

Ценю любые ответы.


person Eytan Avisror    schedule 16.02.2015    source источник


Ответы (1)


Если вы настроите локальный / управляемый репозиторий, связанный с Central, как доступный только для чтения, то никто не сможет загружать в него. Это достигается путем предоставления только роли «Наблюдатель репозитория», но не роли «Администратора репозитория» (на самом деле вы, скорее всего, добавите дополнительные роли, просто убедитесь, что ни одна из них не назначена для какого-либо разработчика одному из зеркальных репозиториев).

Кстати: вы также можете запретить повторное развертывание (или перезапись версий артефактов) для репозитория. Это вообще хорошая идея. Это делается в настройках репозитория (а не по ролям).

Еще одна вещь, на которую вы, возможно, захотите обратить внимание: если вы настроите репо только для снэпшотов, оно все равно будет принимать загрузки SNAPSHOT. Это может сбивать с толку, убедитесь, что этого никто не делает.

person eckes    schedule 16.02.2015
comment
Большое спасибо за ответ! Еще одна вещь, которую нужно прояснить - как администратор - если я добавлю файл jar для внутреннего использования в свое внутреннее репо (которое связано с центральным), будет ли он автоматически синхронизирован? Как выполняется синхронизация с центральным сервером? Просто пытаюсь понять поведение внутреннего репо по умолчанию. Спасибо еще раз! - person Eytan Avisror; 16.02.2015
comment
Синхронизация с Central - это процесс, не относящийся к Archiva. Я думаю, что Central больше не принимает отдельные источники, поэтому вам нужно выбрать одну из кузниц, которая действительно предлагает эту функцию. Я знаю, что Bintray предлагает это, но для этого требуются некоторые документы. - person eckes; 16.02.2015