Elastic Path Commerce Development

Maven Repository Specifications

Maven Repository Specifications

Note: Role: DevOps
Dependent on By Documentation
Maven repository manager server provisioning IT Operations Infrastructure Specifications

Overview

This section provides details on the Maven Repository Manager. The Maven Repository Manager is an essential component for team development of Maven based projects. The Maven Project site explains why and provides a list of available Repository Managers.

The release package does not contain all of the Maven artifacts that Elastic Path products depend on. The additional artifacts are available in Elastic Path's Maven Repository.
Important: Your Maven Repository Manager must be installed and running before you can complete the following steps.

Proxy External Repositories

This section provides the proxy information for external Maven repositories.

Warning:

The repository order is important and should match the table below. Using a different repository sequence can result in build errors.

Repository Provider Policy URL Credentials Required
Maven Central Maven2 Release http://central.maven.org/maven2/ No
Elastic Path Public Maven2 Release https://repository.elasticpath.com/nexus/content/repositories/public/ Yes
Elastic Path Cortex Maven2 Release https://repository.elasticpath.com/nexus/content/repositories/cortex/ Yes
Elastic Path Commerce Engine Maven2 Release https://repository.elasticpath.com/nexus/content/repositories/commerce-engine/ Yes
Elastic Path Accelerators Maven2 Release https://repository.elasticpath.com/nexus/content/repositories/accelerators/ Yes
Java Net Repository For Maven Maven2 Release https://maven.java.net/content/repositories/releases/ No
Sonatype Maven2 Release https://repository.sonatype.org/content/groups/forge No
Springsource Bundles Maven2 Release http://repository.springsource.com/maven/bundles/external No
Springsource Milestone Maven2 Release http://maven.springframework.org/milestone/ No
Groovy Repository For Maven Maven2 Release https://dl.bintray.com/groovy/maven No
Note: Maven credentials are required to access the Elastic Path Maven repository.

Your Elastic Path Support Portal page lists your Maven credentials. If you do not have these credentials, submit a ticket on the page.

Configuring Local Repositories and Groups

This section provides instructions to create local repositories and groups and build the repository hierarchy, after you configure all external proxies.

  1. Create a hosted repository (e.g. <project> EP Snapshots) with a "snapshot" policy.
  2. Create a hosted repository (e.g. <project> EP Releases) with a "release" policy.
  3. Create an External Proxy Repository Group. Add all external proxies to it in the order defined in the Proxy external respositories section.
  4. Create a <project> EP Repository Group. Add the hosted repositories and the External Proxy Repository Group to it.

Manual Uploads

This section provides information on manually uploading artifacts to your Maven repository. Some artifacts cannot be obtained from public Maven repositories because of licensing restrictions. You must upload these artifacts manually to your Maven repository.

Artifact Source Elastic Path Commerce Dependency
MySQL JDBC driver Download platform independent version 5.1.44 from https://dev.mysql.com/downloads/connector/j/
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.44</version>                       

User Accounts

A user account with Maven deployment privileges must be created for use by the continuous integration server to deploy build artifacts.

Deliverables

  • A fully functional Maven repository server