2009-09-06 3 views
3

У нас есть разработчики, работающие в разных географических точках, и мы хотим настроить Archiva для каждого из этих географических местоположений (просто чтобы убедиться, что путешествие в обе стороны при получении артефактов меньше).Maven - Archiva - Настройка Archiva для разных географических местоположений

Возможно ли, что всякий раз, когда артефакт загружен/удален из Archiva на месте G1 то же самое изменение получает толкнул Archiva управляемого хранилища на месте G2, G3 и так далее?

+0

У кого есть идеи по этому вопросу? – peakit

ответ

2

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

Вы можете установить Archiva на прокси-серверы с помощью proxy connectors. Используя этот механизм, вы можете настроить G2 на наличие прокси-сервера G1, это означает, что когда любой артефакт развернут в G1, он будет доступен в G2 через механизм прокси.

Из документации:

разъем используется прокси-сервер, чтобы связать управляемый репозиторий (хранится на Archiva машине) в удаленном хранилище (доступ через URL). Это будет означать, что когда запрос получен управляемым репозиторием, коннектор контактирует, чтобы решить, должен ли он запрашивать ресурс из удаленного репозитория (и потенциально кэшировать результат локально для будущих запросов).

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

Базовая конфигурация прокси-сервера просто связывает удаленный репозиторий с управляемым репозиторием (с дополнительным сетевым прокси для доступа через межсетевой экран). Однако поведение различных типов артефактов и путей может быть специально управляется прокси-коннекторами для более гибкого управления доступом к удаленным репозиториям.


Если прокси-разъемы не будут работать для вас, вы можете посмотреть на альтернативные подходы репликации. Я бы передумал, хотя, поскольку любое доморощенное решение, вероятно, представит проблемы, поскольку пользователи изменяют содержимое репозитория.

  • Пока вы разрешаете развертывание только на одном из узлов, вы можете использовать rsync или robocopy для репликации места хранения между узлами.
  • Вы можете написать custom plugin, который прослушивает события получения и удаления и запускает соответствующее событие другому узлу.
+0

Я ценю Богатый .. Но я ищу .., что я могу просто загрузить/удалить артефакт из одного хранилища, а другой просто отражает то же самое. Возможно ли это? – peakit

+0

+1 для быстрого и точного ответа (как всегда на Maven, Rich!). Я чувствую, что peakit теперь может применить ваш ответ, чтобы получить реальное решение. Я запомню ваше предложение также, когда мне это нужно ;-) – KLE

Смежные вопросы