Open benjaminran opened 7 years ago
Already using maven assembly plugin repository function to include the latest dcc-metadata-client and icgc-storage-client in the tar/docker image maven2 directory, but using vendored libs versions instead of maven2 versions. Should make sure release builds use release versions of the clients once we switch over.
We can also just use something like maven2/org/dcc-metadata-client/*/bin/dcc-metadata-client instead of filtering the dockerfile, but then we should make sure only 1 version is ever pulled in.
dependency:copy
would actually be a good (probably better) thing for this.
I had trouble retrieving the icgc-storage-client and dcc-metadata-client assembly:
$ mvn dependency:get -Dartifact=org.icgc.dcc:icgc-storage-client:r1.0.26-SNAPSHOT:jar:dist -DremoteRepositories=file:~/.m2/repository/ -o
...
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.8:get (default-cli) on project standalone-pom: Couldn't download artifact: Missing:
[ERROR] ----------
[ERROR] 1) org.icgc.dcc:icgc-storage-client:jar:dist:r1.0.26-SNAPSHOT
The dcc-metadata-client and icgc-storage client are currently vendored. It would be good to dynamically use the version of the dev or release builds of the clients as specified in a pom dependency. The build already pulls in the latest client artifacts via an assembly plugin repository, but these still aren't used in the resulting docker image.