Change from webdav to nexus repository
- Contact: jodygarnett
- Tracker: GEOT-2425
- TLDR: Change from webdav to nexus repository
- Branch: all
Retiring our webdav maven repository to make use of repo.osgeo.org. This also removes repo.boundlessgeo.com as our snapshot build server.
Downstream applications can now use:
<repositories>
<repository>
<id>osgeo</id>
<name>OSGeo Release Repository</name>
<url>https://repo.osgeo.org/repository/release/</url>
<snapshots><enabled>false</enabled></snapshots>
<releases><enabled>true</enabled></releases>
</repository>
<repository>
<id>osgeo-snapshot</id>
<name>OSGeo Snapshot Repository</name>
<url>https://repo.osgeo.org/repository/snapshot/</url>
<snapshots><enabled>true</enabled></snapshots>
<releases><enabled>false</enabled></releases>
</repository>
</repositories>
To allow old builds to work unmodified, use settings.xml to define a mirror:
<mirrors>
<mirror>
<id>osgeo-release</id>
<name>OSGeo Repository</name>
<url>https://repo.osgeo.org/repository/geotools-releases/</url>
<mirrorOf>osgeo</mirrorOf> <!-- previously http://download.osgeo.org/webdav/geotools/ -->
</mirror>
<mirror>
<id>geoserver-releases</id>
<name>Boundless Repository</name>
<url>https://repo.osgeo.org/repository/Geoserver-releases/</url>
<mirrorOf>boundless</mirrorOf> <!-- previously http://repo.boundlessgeo.com/main/ -->
</mirror>
</mirrors>
The Nexus is setup for:
-
repo.osgeo.org/repository/release/ - release group containing
- repo.osgeo.org/repository/geotools-releases
- repo.osgeo.org/repository/Geoserver-releases
-
repo.osgeo.org/repository/snapshot/ - release group containing
- repo.osgeo.org/repository/geotools-snapshots
- repo.osgeo.org/repository/geoserver-snapshots
- repo.osgeo.org/repository/geosolutions-cache
- repo.osgeo.org/repository/ucar-cache
- (the repo maven.restlet.org is no longer republished)
References:
This is an infrastructure change affected all branches.
We should be able to redirect to continue to allow downstream applications to build.
Choose one of:
- Under Discussion
- In Progress
- Completed
- Rejected,
- Deferred
Voting:
- Andrea Aime
- Ian Turton
- Jody Garnett +1
- Nuno Oliveira
- Simone Giannecchini
- Torben Barsballe +1
-
Coordination Nexus setup is on #2410 artifact manager to replace download.osgeo.org/webdav/geotools
- transfer repo.boundlessgeo.com
- transfer webdav
- setup https://repo.osgeo.org/repository/release/ group
- setup https://repo.osgeo.org/repository/snapshot/ group
-
Update pom.xml configuration
- See #2863
-
Documentation changes
- Update tutorials
- Update developers guide websites list
- Update Update page
This changes build infrastructure only (and does not result in an API change to the library.)
However downstream applications are asked to update their build as outlined below.
The GeoTools release repository has changed as outlined below:
Before:
<repositories>
<repository>
<id>central.maven.org</id>
<name>Central Maven repository</name>
<url>https://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<!-- contained above -->
<!--
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>geosolutions</id>
<name>geosolutions repository</name>
<url>http://maven.geo-solutions.it/</url>
</repository>
-->
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>osgeo</id>
<name>Open Source Geospatial Foundation Repository</name>
<url>http://download.osgeo.org/webdav/geotools/</url>
</repository>
<repository>
<!-- Contains snapshot and release (including third-party-dependencies) -->
<!-- Restlet maven Repository (http://maven.restlet.org) -->
<!-- ucar (https://artifacts.unidata.ucar.edu/content/repositories/unidata-releases) -->
<!-- geosolutions (http://maven.geo-solutions.it/) -->
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
<id>boundless</id>
<name>Boundless Maven Repository</name>
<url>https://repo.boundlessgeo.com/main/</url>
</repository>
</repositories>
After:
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>osgeo-release</id>
<name>Open Source Geospatial Foundation Repository</name>
<url>https://repo.osgeo.org/repository/release/</url>
</repository>
<repository>
<!-- Contains snapshot and release (including third-party-dependencies) -->
<!-- Restlet maven Repository (http://maven.restlet.org) -->
<!-- ucar (https://artifacts.unidata.ucar.edu/content/repositories/unidata-releases) -->
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>osgeo-snapshot</id>
<name>Open Source Geospatial Foundation Build Repository</name>
<url>https://repo.osgeo.org/repository/snapshot/</url>
</repository>
</repositories>
Distribution management outlines different repositories for releases and snapshots (use of id nexus
is used to provide build server a single target to manage settings.xml credentials).
Before:
<distributionManagement>
<repository>
<uniqueVersion>false</uniqueVersion>
<id>osgeo</id>
<name>Open Source Geospatial Foundation - WebDAV upload</name>
<url>dav:http://download.osgeo.org/upload/geotools/</url>
</repository>
<snapshotRepository>
<id>boundless</id>
<uniqueVersion>false</uniqueVersion>
<name>Boundless Snapshot Repository</name>
<url>https://repo.boundlessgeo.com/snapshot/</url>
</snapshotRepository>
</distributionManagement>
After:
<distributionManagement>
<repository>
<uniqueVersion>false</uniqueVersion>
<id>nexus</id>
<name>Open Source Geospatial Foundation - GeoTools</name>
<url>https://repo.osgeo.org/repository/geotools-releases/</url>
</repository>
<snapshotRepository>
<id>nexus</id>
<uniqueVersion>false</uniqueVersion>
<name>Open Source Geospatial Foundation - GeoTools Build</name>
<url>https://repo.osgeo.org/repository/geotools-snapshots/</url>
</snapshotRepository>
</distributionManagement>