jib
jib copied to clipboard
Publish jib via SDKMAN!
Environment: MacOS, Windows, Linux
- Jib version: 0.10.0
- Build tool: Gradle 7.3.3
- OS: MacOS
Description of the issue: Distribute jib via SDKMAN!
Expected behavior: The jib CLI ZIP file has the correct structure to be distributed by SDKMAN!

SDKMAN! is a popular tool for managing multiple versions of SDKs and CLI tools. jib would be a welcome addition!
Additional Information:
The distribution can easily be automated using JReleaser (https://jreleaser.org/). This would also open up the possiblity to automatically distribute jib via other channels, like Homebrew and many more.
I wouldn't hesitate to do the PR myself :).
This would be very useful, thank you! We'll accept the PR.
(We have duplicate request: https://github.com/GoogleContainerTools/jib/issues/3419)
I started using sdkman for Java (different version of JDK, including GraalVM distribution). Compared to Java's case, I believe jib users want to use the latest jib always. I may be wrong because I'm not a heavy Jib user.
@helpermethod Where do you see the benefit of jib versions managed in sdkman?
The benefits I see are ease of installation/discoverability, and possibly simpler upgrades. @mpeddada1 What do you think?
This sounds like a really useful idea! I just have one quick question. I'm not too familiar with how SDKMAN manages versions, but would the new version of the CLI be available as soon as it is released on github? Or would it require any manual updates?
This sounds like a really useful idea! I just have one quick question. I'm not too familiar with how SDKMAN manages versions, but would the new version of the CLI be available as soon as it is released on github? Or would it require any manual updates?
There are two options: One is performed manually and entirely community driven, i.e. if a new version is available someone has to manually perform a PR against our migrations repo.
The other option is using SDKMAN!s Vendor API. You can basically request a key, and by using the API or through some tools announce a new release on SDKMAN! in your CI pipeline.
Vendoring is the prefered way to publish / announce new releases.
BTW SDKMAN! announces its releases via the Vendor API by using JReleaser
https://github.com/sdkman/sdkman-cli/blob/master/.github/workflows/release.yml
https://jreleaser.org/guide/latest/configuration/packagers/sdkman.html
We'd be okay with adding the manual step as part of our release process, and seeing how it goes. It can be automated later.
Thanks again for proposing this! However, we're trying to focus on bug fixes and platform evolution changes. After careful consideration, while it is a good idea, it's not something we can prioritize at this time (unfortunately). Closing as not planned.