-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implements automated release to SDKMAN #241
Conversation
Karm
commented
Mar 17, 2022
``` $ ./mandrel-release.java sdkman -m /home/karm/workspaceRH/graal/graal -s Final -f Karm/graal [jbang] Building jar... [INFO] Current version is 21.3.1.1 [INFO] New version will be 21.3.1.2 [INFO] Releasing: mandrel-java11-linux-amd64-21.3.1.1-Final.tar.gz [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r11-mandrel for LINUX_64","status":201} [INFO] Releasing: mandrel-java11-linux-aarch64-21.3.1.1-Final.tar.gz [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r11-mandrel for LINUX_ARM64","status":201} [INFO] Releasing: mandrel-java11-windows-amd64-21.3.1.1-Final.zip [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r11-mandrel for WINDOWS_64","status":201} [INFO] Releasing: mandrel-java17-linux-amd64-21.3.1.1-Final.tar.gz [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r17-mandrel for LINUX_64","status":201} [INFO] Releasing: mandrel-java17-linux-aarch64-21.3.1.1-Final.tar.gz [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r17-mandrel for LINUX_ARM64","status":201} [INFO] Releasing: mandrel-java17-windows-amd64-21.3.1.1-Final.zip [INFO] Released Response Code : 201 [INFO] Released Response Body : {"message":"Released: java 21.3.1.1.r17-mandrel for WINDOWS_64","status":201} [INFO] Promoting version 21.3.1.1.r11 [INFO] Promoted Response Code : 202 [INFO] Promoted Response Body : {"message":"Defaulted: java 21.3.1.1.r11-mandrel","status":202} [INFO] Annoncing version 21.3.1.1.r11 [INFO] Annonce Response Code : 200 [INFO] Annonce Response Body : {"status":200,"id":"623342f06344590007b7da9c","message":"java 21.3.1.1.r11-mandrel available on SDKMAN! https://github.com/graalvm/mandrel/releases/"} [INFO] Promoting version 21.3.1.1.r17 [INFO] Promoted Response Code : 202 [INFO] Promoted Response Body : {"message":"Defaulted: java 21.3.1.1.r17-mandrel","status":202} [INFO] Annoncing version 21.3.1.1.r17 [INFO] Annonce Response Code : 200 [INFO] Annonce Response Body : {"status":200,"id":"623342f16344590007b7da9d","message":"java 21.3.1.1.r17-mandrel available on SDKMAN! https://github.com/graalvm/mandrel/releases/"} ```
@zakkak IMHO implemented. The release is visible on sdkman, but, I cannot verify it atm:
The reason it GitHub is mostly down: https://www.githubstatus.com/ So let's try to check it later.... |
|
||
/** | ||
* One needs vendor credentials. Decipher those in: | ||
* gpg --decrypt sdkman-vendor.json.asc > ~/.sdkman/vendor.json |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would possibly be even better if we could get the script to do the decrypt on the fly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will this be run on one of your local machines? The only reason I sent the credentials encrypted was that we don't like sending credentials in an email.
On the other hand, if this is an automated release script, please consider storing the key and token pair in GitHub secrets instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will this be run on one of your local machines?
Yes, this will be run locally. So it's more about whether we would need to have the credentials stored in an unencrypted file (most probably on an encrypt disk though).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is a local workstation with an exclusive physical access and an encrypted drive. The file enjoys the same level of security, including filesystem permissions, as e.g. ~/.aws/credentials
or, for the matter of fact, ~/.ssh/id_rsa
.
Setting
Notice the My suspicion is that you "published" the new version while github was down and that somehow messed up the sdkman database update for the new version. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for taking care of this @Karm !
Please find my suggestions/comments inline.
@zakkak debug & dryRun:
|
TL;DR from our conversation with Marco:
|
FWIW JReleaser can perform most of thew heavy lifting you're doing with the |
Hello @marc0der, Taking your recommendation about
@zakkak
|
@marc0der ...or we can drop the topic and wait for DISCO 😃 |
Well, DISCO integration is already fully operational (we performed the JDK 18 release with this new mechanism yesterday). I'd suggest just rolling with that instead. @eddumelendez can pick it up if you like. I believe that all he needs to do is to add a few lines of config for this to start working. |
Merging as per our conversation on SDKMAN Slack. |