Рубрики
Без рубрики

Публикация ваших артефактов в репозитории – новый автономный менеджер репозиториев

Публикация ваших артефактов в репозитории – новый автономный менеджер репозиториев. Помеченный с открытым исходным кодом, java, maven, gradle.

Экосистема Maven – это часть жизни каждого разработчика Java. Не имеет значения, используете ли вы Maven или Gradle, Kotlin или Scala (и т.д.) , обмен артефактами осуществляется по одному и тому же протоколу – Maven protocol ✨ .

Мы можем публиковать наши публичные проекты в официальном центральном репозитории Maven, но в случае частных проектов в течение такого долгого времени мы могли использовать только:

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

Вот почему я создал Reposilite , облегченный менеджер репозиториев с открытым исходным кодом для артефактов Maven. Это простое решение для замены таких менеджеров, как Nexus, Archiva или Artifactory.

Плюсы:

  • Эффективно сократите использование ваших ресурсов даже до 10 МБ оперативной памяти вместо, например, 2 ГБ
  • Чрезвычайно прост в использовании
  • Одобрен и указан на сайте Apache
  • Открытый исходный код ❤️

Аферы:

  • Возможно, вам не хватает дополнительных функций, но вы всегда можете запросить их в разделе issues
  • Ориентированные на производительность, некоторые из тяжелых функций могут вообще не быть реализованы

Устанавливать

Примечание: Проект меняется динамически, поэтому некоторые части этой статьи, например скриншоты, могут устареть.

В данный момент (Reposilite 2.6.1) вы можете использовать автономную jar-версию Reposilite или Docker Image 🐳 . Если вы ищете всегда актуальное руководство по установке, посетите:

В этой статье мы сосредоточимся на автономной версии, которую можно загрузить со страницы релизов GitHub:

Чтобы запустить репозиторий, просто запустите архив jar:

$ java -Xmx16M -jar reposilite.jar

Вуаля, это почти все, вы только что стали владельцем нового репозитория Maven менее чем за 1 минуту ฅ ^ •• * ^ฅ Вы должны увидеть результат на локальный хост:80 :

Это было быстро, так что давайте сделаем что-нибудь еще. Начиная с версии 2.x, вместо сложной системы, основанной на разрешениях между пользователями и проектами, Reposilite использует систему токенов доступа для авторизации запросов. Чтобы полностью понять токены доступа, посетите:

Прежде всего, нам нужно сообщить Maven, куда мы хотим загрузить наш проект. Для этой цели вы должны объявить свойство управления распространением в вашем pom.xml :


    
        local-repository
        http://localhost:80/releases
    

Чтобы сгенерировать токен доступа для администратора, нам нужно использовать команду keygen в Reposilite CLI:

$ keygen / admin
| Generated new access token for admin(/)
| AW7-kaXSSXTRVL_Ip9v7ruIiqe56gh96o1XdSrqZCyTX2vUsrZU3roVOfF-YYF-y
| Stored tokens: 1

Разделитель / означает, что запросы, подписанные этим токеном, могут обращаться ко всем путям, например:

Уполномоченный /
Уполномоченный /выпуски
Уполномоченный /моментальные снимки
Уполномоченный /релизы/наш/потрясающий/проект

Теперь вам нужно добавить новую запись сервера с сгенерированным токеном в свой ~/.m2/settings.xml файл:


  
  local-repository
  admin
  AW7-kaXSSXTRVL_Ip9v7ruIiqe56gh96o1XdSrqZCyTX2vUsrZU3roVOfF-YYF-y

Чтобы опубликовать свой артефакт, просто запустите:

$ mvn deploy

Если вы все настроили правильно, вы сможете увидеть новую версию вашего артефакта в браузере репозитория! 🎉

Чтобы открыть для себя дополнительные функции Reposilite, такие как панель мониторинга или удаленный интерфейс:

Посетите Repository – Guide и GitHub – Repository .

Удачи и счастливого развертывания 🚀 , дзикойск

Оригинал: “https://dev.to/dzikoysk/publishing-your-artifacts-to-the-reposilite-a-new-self-hosted-repository-manager-3n0h”