Overview
The ONAP Integration team is providing a Maven plugin to help individual projects detect when their external (cross-project) dependencies have become out of date.
The version manifest CSV itself is compiled into the the plugin, so that we can identify the exact manifest version using the plugin version number.
Running the Plugin
To use the latest available Version Manifest plugin, run the following command:
mvn org.onap.integration:version-manifest:version-check
To use a specific version (e.g. 0.1.0) of the Version Manifest plugin, run the following:
mvn org.onap.integration:version-manifest:0.1.0:version-check
These assume that you have the ONAP nexus repos defined in your ~/m2/settings.xml so that Maven can download the plugin artifacts.
Interpreting the Output
Here is a sample output provided by the plugin:
[INFO] --- version-manifest:0.1.0-SNAPSHOT:version-check (default-cli) @ clds --- [INFO] Manifest version: ssh://gerrit.onap.org:29418/integration 3fdf98d67f6c8a24c535635599d380a104bd93f2 2017-09-06T11:42:50-0700 [INFO] [WARNING] The following dependencies should be updated to match the version manifest: [WARNING] org.onap.oparent:oparent 1.0.0-SNAPSHOT -> 0.1.0 [INFO] [WARNING] The following dependencies are missing in the version manifest: [WARNING] org.onap.oparent:checkstyle 1.0.0-SNAPSHOT -> ? [WARNING] org.onap.policy.common:ONAP-Logging 1.1.0 -> ? [WARNING] org.onap.policy.engine:ControlloopPolicy 1.1.0-SNAPSHOT -> ? [WARNING] org.onap.policy.engine:PolicyEngineAPI 1.1.0 -> ? [INFO]
Line 1 shows the version of the version-manifest plugin that was invoked. Here it is "0.1.0-SNAPSHOT".
Line 2 shows the git commit info of the manifest that incorporated into this specific version of the plugin.
For warnings in the first section "should be updated to match the version manifest", please change your dependency to the version declared in the manifest.
For warnings in the second section "are missing in the version manifest", please contact the upstream team to get them to release their artifacts per Independent Versioning and Release Process and update the version manifest with the updated version numbers.