Skip to content

Use wildcard in BP_JVM_VERSION with image building #22916

@schnatterer

Description

@schnatterer

Setting a non-wildcard JVM version for an OCI image via the BP_JVM_VERSION env var in the maven or gradle plugin (as proposed in the docs) will lead to failing builds, if the the JVM version is not the most recent version.
So it might work in the beginning when setting the current version, but once a newer version is out (leading to a new builder version) the build will fail.
See paketo-buildpacks/bellsoft-liberica#8.

I would have created a PR for the docs, but I'm not quite sure what the best solution is.

Pinning the builder image would work but it's a bit cumbersome to find out a builder version.
What I came up with is this, but it's really not straightforward:

reg tags gcr.io/paketo-buildpacks/builder | grep base-platform-api

At the moment this results in gcr.io/paketo-buildpacks/builder:0.0.429-base-platform-api-0.3.
But then how to find out the matching JVM version? Again, not straightforward:

skopeo inspect docker://gcr.io/paketo-buildpacks/builder:0.0.429-base-platform-api-0.3 | grep bellsoft-liberica

And then look up JDK version in release, e.g. here: https://github.com/paketo-buildpacks/bellsoft-liberica/releases/tag/v2.13.0

So just delete the paragraph about BP_JVM_VERSION?
Any other ideas?

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions