Repository navigation
Conversation
VicarIO is now open source (NASA-AMMOS/vicario) and published to Maven Central as gov.nasa.jpl.ammos.ids:vicario. Replace the committed 17 MB vicario.jar (an unreleased 2.7.0b0-SNAPSHOT fat jar) with a Dockerfile stage that resolves vicario 2.7.2 and its runtime dependencies from the version pinned in docker/vicario/pom.xml. - The wrapper runs jpl.mipl.io.jConvertIIO on /usr/local/lib/vicario/*. - The bundled jar's only functional change was setting com.sun.media.jai.disableMediaLib=true in main(); the wrapper now passes it as a -D option. - The runtime moves from Java 11 to Java 17: vicario 2.7.2's pds4-jparser dependency is compiled for Java 17. - Docs and build-opensource-image.sh no longer refer to vicario.jar.
|
Project Requirements: PASSPR #46 replaces the bundled vicario.jar with vicario resolved from Maven Central (pinned in docker/vicario/pom.xml) and moves the image to Java 17. Documentation parity: pass, because all relevant vicario, image and architecture docs were updated and the stale 'not yet public' text was removed. Broad deployability: pass, because a public open-source artifact replaces an opaque binary; the only friction is that builds now need Maven Central/OSGeo access. Test coverage: concern, because existing CI image tests cover 2-argument PNG/JPEG conversion, but the changed keyword pass-through branch, TIFF output, the Java version, the pinned vicario version and error handling are untested.
3. Test coverage
Automated pre-check hints
Evaluated at Criteria: |



Purpose
TIG shipped a committed, prebuilt
vicario.jar: an unreleased2.7.0b0-SNAPSHOTfat jar, 17 MB, whose docs said VicarIO source was "not yet public". VicarIO is now open source at NASA-AMMOS/vicario and published to Maven Central. This PR builds the image from the published release instead.Changes
terrain-intelligence-generator/docker/vicario.jar.docker/vicario/pom.xml, which pinsgov.nasa.jpl.ammos.ids:vicario:2.7.2.vicariostage (maven:3.9.9-eclipse-temurin-17) copies vicario and its runtime dependencies to/usr/local/lib/vicario.jpl.mipl.io.jConvertIIOon that classpath. Its CLI behavior is the same as before.pds4-jparserdependency is compiled for Java 17.-Dcom.sun.media.jai.disableMediaLib=trueis now passed by the wrapper. Comparing bytecode, this was the only functional change in the bundled "modified" jar: itsmain()set the property. The other two differing classes are a Swing viewer and a CSV error message.VICARIO.md,docs/reference/vicario.md,docs/architecture/components.md, the image README) andbuild-opensource-image.shno longer refer tovicario.jar.Every dependency resolves from public repositories (Central, OSGeo, imageio-ext), so CI needs no new secrets. CI's build context is
terrain-intelligence-generator/docker, which contains the new POM.Testing
oraclelinux:8with the sameoform=byte rescale=truearguments the wrapper uses.build-opensource-image.shsucceeds locally (linux/amd64).test-docker-image.sh: wrappers, gen, list, copy, stretch, vicario PNG and JPEG, docker exec, MARS commands and MPI all pass.copyandstretch, which don't use vicario, so it looks like a Docker Desktop bind-mount issue on this machine.gen+vicario(PNG, TIFF) into a bind-mounted directory under$HOMEproduced valid files on the host.