6.3.2. Настройка доступа к репозиторию

Основной репозиторий

При создании нового проекта в CUBA Studio вам необходимо выбрать основной репозиторий, содержащий артефакты платформы. По умолчанию имеется два таких репозитория (может быть больше если установлен приватный репозиторий):

  • https://repo.cuba-platform.com/content/groups/work - репозиторий, расположенный на сервере Haulmont. Он требует передачи общих имени и пароля, которые указываются прямо в скрипте сборки (cuba / cuba123).

  • https://dl.bintray.com/cuba-platform/main - репозиторий, находящийся в JFrog Bintray. Он предоставляет анонимный доступ.

Оба репозитория имеют идентичное содержимое для последних версий платформы, но Bintray не содержит снэпшотов. Мы предполагаем, что Bintray является более надежным для доступа из любой точки мира.

В случае Bintray, скрипт сборки сконфигурирован также для использования репозиториев Maven Central, JCenter и Vaadin Add-ons по отдельности.

Доступ к премиум-дополнениям CUBA

Если ваш проект использует премиум-дополнения, Studio добавляет еще один репозиторий:

  • В случае repo.cuba-platform.com это https://repo.cuba-platform.com/content/groups/premium

  • В случае Bintray это https://cuba-platform.bintray.com/premium

Если используется приватный репозиторий, автоматически ничего не добавляется, так как предполагается, что он проксирует все CUBA-репозитории, включая премиум.

Оба репозитория премиум-дополнений требуют указания имени пользователя и пароля, которые предоставляются по подписке на разработчика. Первая часть лицензионного ключа до тире представляет собой имя пользователя, вторая часть после тире - пароль. Например, если ваш ключ 111111222222-abcdefabcdef, то имя - 111111222222, пароль - abcdefabcdef

Studio передает Gradle параметры подключения когда запускает скрипт сборки. При сборке проекта вне Studio передайте premiumRepoUser и premiumRepoPass в командной строке в аргументах -P. В случае Bintray, к имени пользователя нужно в конце добавить @cuba-platform.

Пример сборки используя repo.cuba-platform.com:

gradlew assemble -PpremiumRepoUser=111111222222 -PpremiumRepoPass=abcdefabcdef

Пример сборки используя Bintray:

gradlew assemble -PpremiumRepoUser=111111222222@cuba-platform -PpremiumRepoPass=abcdefabcdef

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

  • Либо создать файл ~/.gradle/gradle.properties и указать параметры в нем:

premiumRepoUser=111111222222
premiumRepoPass=abcdefabcdef
  • Либо указать параметры в следующих переменных среды операционной системы:

  • CUBA_PREMIUM_USER - используется если не передан premiumRepoUser.

  • CUBA_PREMIUM_PASSWORD - используется если не передан premiumRepoPass.

Дополнительные репозитории

Проект может использовать любые дополнительные репозитории, содержащие компоненты приложения. Они должны быть вручную указаны в build.gradle после основного репозитория, например:

repositories {
    // main repository containing CUBA artifacts
    maven {
        url 'https://repo.cuba-platform.com/content/groups/work'
        credentials {
            // ...
        }
    }
    // custom repository
    maven {
        url 'http://localhost:8081/repository/maven-snapshots'
    }
}