-
-
Notifications
You must be signed in to change notification settings - Fork 489
Host Geonetwork artifacts on repo.osgeo.org (Nexus Artifactory Repo)
Date | 2020-04-20 | Contacts | Marco Lechner, German Federal Office for Radiation Protection, Germany Jody Garnett, GeoCat |
Status | Approved | Release | All active |
Ticket # | 4618 | ||
Funding | GeoCat / OSGeo SAC |
The Buildstack of GeoNetwork Releases should be extended to publish Geonetwork Artifacts in a maven Repo hosted by OSGeo (https://repo.osgeo.org/).
Hosting the GeoNetwork artifacts on a publicly available Server makes it possible to build the jar-Files of own Metadata-Schemas (like those on Metadata101 - https://github.com/metadata101) without having to build whole Geonetwork locally. This may increase acceptance of custom inherited Schemas and make Geonetwork more flexible.
Add deployment of artifacts on Release builds to publish them on repo.osgeo.org:
- OSGeo would provide project specific deployment of artifacts geonetwork-releases and geonetwork-snapshots
- This replaces core-maven-repo https://raw.githubusercontent.com/geonetwork/core-maven-repo/master
- Cache The Seasar Foundation Maven2 Repository http://maven.seasar.org/maven2 used by geonetwork build, or we can deploy these third-party dependencies to our geonetwork-releases repository
- Cache Developer k-int repository http://maven.k-int.com/content/repositories/releases/ used by geonetwork build, or we can deploy these third-party dependencies to our geonetwork-releases repository.
- Cache mapfish-print https://packages.georchestra.org/artifactory/mapfish-print used by geonetwork build, or we can deploy these third-party dependencies to our geonetwork-releases repository
- Downstream projects use osgeo-release and osgeo-snapshot group repos for increased build times (as only a single repository is checked)
Making these changes will result in a significant reduction in geonetwork build time and allow downstream application, distributions, and docker images to be composed using maven dependencies.
The repository geonetwork/core-maven-repo
dependencies need to be migrated to geonetwork-releases
.
Many of the above "one off" dependencies are used to get a single dependency:
-
marc4j/marc4j:2.3.1
is obtained from k-int repository. The project is now on central asorg.marc4j/marc4j 2.7.1
onward (see github) -
net.arnx.jsonic/jsonic:1.2.0
is obtained from seasar repository. The project is now on central as ofnet.arnx.jsonic/jsonic:1.2.7
onward. -
Third-party dependencies to manage by hand:
-
org.mapfish.print/print-lib:2.1.6
only available from mapfish repo -
net.sf.saxon:saxon:jar:9.1.0.8b-patch
available on core-maven-repo, open source "home edition" available on central (see search results ).
-
-
Blocker: Third-party dependencies from
geonetwork/core-maven-repo
that refuse to upload:globus:cog-jglobus:jar:1.2-060802
xml-resolver:xml-resolver-patched:jar:1.2.1
- Update: Because of the above blocker I have setup
geonetwork-cache
as a temporary measure.
Repositories change to:
<repositories>
<!-- maven central assumed -->
<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>
Distribution management section added:
<distributionManagement>
<repository>
<id>osgeo</id>
<name>OSGeo GeoNetwork Release Repository</name>
<url>https://repo.osgeo.org/repository/geonetwork-releases/</url>
</repository>
<snapshotRepository>
<id> osgeo </id>
<name>OSGeo GeoNetwork Snapshot Repository</name>
<url>https://repo.osgeo.org/repository/geonetwork-snapshots/</url>
</snapshotRepository>
</distributionManagement>
References:
- SAC:Repo (OSGeo Wiki)
- #2443 geonetwork maven repository (OSGeo Trac)
- https://github.com/geonetwork/core-geonetwork/pull/4700
- Type: Idea
- Module: modules and schemas
- Vote Proposed: 2020-04-20
- Francois +1
- Jose +1
- Jo +1
If you have some comments, start a discussion, raise an issue or use one of our other communication channels to talk to us.