6.3.2. Configuring Access to Repository
- Main Repository
-
When you create a new project, you have to select a main repository containing CUBA artifacts. By default, there are two options (and you can have more if you set up a private repository):
-
https://repo.cuba-platform.com/content/groups/work
- a repository located at Haulmont’s server. It requires common credentials which are specified right in the build script (cuba
/cuba123
). -
https://dl.bintray.com/cuba-platform/main
- a repository hosted at JFrog Bintray. It has anonymous access.
Both repositories have identical contents for the latest platform versions, but Bintray does not contain snapshots. We assume that Bintray is more reliable for worldwide access.
In case of Bintray, the build script of the new project is also configured to use Maven Central, JCenter and Vaadin Add-ons repositories separately.
-
- Access to CUBA Premium Add-ons
-
If your project uses CUBA Premium Add-ons, Studio adds one more repository:
-
In case of
repo.cuba-platform.com
it ishttps://repo.cuba-platform.com/content/groups/premium
-
In case of Bintray it is
https://cuba-platform.bintray.com/premium
If you use a private repository, nothing is added automatically, because it is assumed that it proxies all CUBA repositories including premium ones.
Both Premium Add-ons repositories require a user name and a password which are provided by per-developer subscription. The first part of your license key before dash is the repository user name, the part after dash is the password. For example, if your key is
111111222222-abcdefabcdef
, then the user name is111111222222
and the password isabcdefabcdef
.When you build the project from Studio, it passes repository credentials to Gradle automatically. If you want to build the project outside Studio, you can pass
premiumRepoUser
andpremiumRepoPass
in the command line arguments with-P
prefix. In case of Bintray, the user name must be followed by@cuba-platform
.Example of building with
repo.cuba-platform.com
:gradlew assemble -PpremiumRepoUser=111111222222 -PpremiumRepoPass=abcdefabcdef
Example of building with Bintray:
gradlew assemble -PpremiumRepoUser=111111222222@cuba-platform -PpremiumRepoPass=abcdefabcdef
Instead of passing credentials each time you build the project from the command line, you can once set the following environment variables:
-
CUBA_PREMIUM_USER
- will be used ifpremiumRepoUser
is not passed. -
CUBA_PREMIUM_PASSWORD
- will be used ifpremiumRepoPass
is not passed.
-
- Custom Repositories
-
Your project can use any number of custom repositories containing application components. They should be specified in
build.gradle
manually after the main repository, for example: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' } }