-
-
Notifications
You must be signed in to change notification settings - Fork 8.8k
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
[JENKINS-51820] Removing Java Web Start support #6543
Conversation
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.
Very nice! Presumably https://github.com/jenkinsci/netx can be archived once this PR is merged. I also created #6545 and jenkinsci/extras-executable-war#52 with some additional JNLP-related cleanup.
I would go ahead and delete this now. |
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.
I am strongly in favor of this improvement. I tried a couple of times previously to push this removal through, but wasn't able then to overcome the resistance. There really is no reason to continue supporting JWS, especially as we move forward with Java versions.
This PR covers all of the different areas related to JWS that I can recall. It looks like it handles the changes correctly.
This PR is now ready for merge, after ~24 hours, we will merge it if there's no negative feedback. Thanks! |
See JENKINS-51820.
Amends #3766.
Preparation for dropping Java 8 support, since we did not support JWS on newer Java versions anyway.
jenkins-agent.jnlp
which were interpreted by the realjavaws
but ignored by thejava -jar agent.jar -jnlpUrl …
parser.jenkins/core/src/main/resources/hudson/slaves/JNLPLauncher/help-vmargs.html
Lines 2 to 4 in db4d8b4
jenkins/core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly
Line 41 in db4d8b4
vmargs
field would have been as a “note to self” field where you can write down arguments you would want to pass next time you connect, if you are having a hard time remembering them or something. (Previously it actually controlled what JVM argsjavaws
would pass to the agent. We cannot do that when you runjava -jar agent.jar
because the JVM is already started.)Sanity tested on Linux using inbound TCP and WebSocket agents running simple builds, with and without security enabled, with both Java 8 and 11 for both controller and agent.
Proposed changelog entries
Proposed upgrade guidelines
Jenkins no longer supports attaching a static inbound agent by clicking the ☕ Launch button from an agent machine’s web browser when running the controller on Java 8, as Java Web Start has been removed from newer versions of most distributions. You should instead download the agent JAR file from the provided link and run the supplied command (
java -jar agent.jar -jnlpUrl …
) on the agent machine. The JVM options field was removed from inbound launcher configuration as it would no longer have any effect other than adjusting the suggested command.The control window displayed when using a Java Web Start agent is also removed. Its main function was to be closed (now done by simply terminating the shell process). It also offered a menu with platform-specific agent installers that would offer to create system services to make the agent permanent; you can accomplish something similar in many ways without this GUI, according to your operating system.
Maintainer checklist
Before the changes are marked as
ready-for-merge
:Proposed changelog entries
are accurate, human-readable, and in the imperative moodupgrade-guide-needed
label is set and there is aProposed upgrade guidelines
section in the PR title. (example)lts-candidate
to be considered (see query).