Зависимость maven библиотеки Android от частного хранилища локального сервера gitlab - PullRequest
0 голосов
/ 13 ноября 2018

У нас есть локальный сервер Gitlab с частными репозиториями. Это доступно только внутри нашей сети.

Нам нужен способ распространения наших библиотек Android в виде зависимостей maven вместо копирования модулей, aar / jar и т. Д. *

Пример того, чего мы хотим достичь. У нас есть Android-проект A и Android-библиотека B, оба на нашем локальном сервере Gitlab, A имеет зависимость B. Это будет файл Gradle сборки приложения нашего A:

dependencies {
    ...
    implementation '...B'
}

Насколько мы понимаем, jitpack поддерживает общедоступные серверы Gitlab только для самостоятельных размещений git. https://jitpack.io/docs/PRIVATE/#self-hosted-git

1 Ответ

0 голосов
/ 19 апреля 2019

Я использовал JFrog Artifactory OSS (с открытым исходным кодом).Репозиторий, в котором вы будете хранить свои библиотеки.В моем случае, через gradle, есть и другие решения, такие как maven, nugget и т. Д., Gradle бесплатный, другие требуют оплаты.

Что вам нужно сделать, чтобы это работало:

  • Сервер для Artifacotry OSS.
  • A .gitlab-ci.yml в корневой директории вашего проекта Android.
  • A публикация Gradle Task в вашем файле библиотеки библиотеки Android .
  • Доступ к хранилищу библиотеки вашего GitLab для определения переменных.

В .gitlab-ci.yml указано, какую ветку GitLab слушать, поэтому каждый раз, когда вы делаете push в этой ветке, конвейер будет выполняться с докером настройки, указанные в .gitlab-ci.yml .Это загрузит все необходимое в докер для выполнения задачи публикация gradle в вашем файле библиотеки библиотек Android .

Artifactory OSSдокументация

GitLab CI документация

...