-
-
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-60381] Remove old, deprecated agent protocols. #4387
[JENKINS-60381] Remove old, deprecated agent protocols. #4387
Conversation
Should we post an announcement in the jenkins.io blog ahead of the release
date? Maybe even an admin monitor?
…On Thu, Dec 5, 2019, 17:04 Jeff Thompson ***@***.***> wrote:
Remove old, deprecated agent protocols that haven't been supported for a
couple of years.
This should be paired with a new Remoting version containing
jenkinsci/remoting#359 <jenkinsci/remoting#359>,
though it's not strictly required.
See JENKINS-60381 <https://issues.jenkins-ci.org/browse/JENKINS-60381>.
Proposed changelog entries
- Remove old, deprecated, unsupported agent protocols JNLP1-connect,
JNLP2-connect, and JNLP3-connect. (issue 60381
<https://issues.jenkins-ci.org/browse/JENKINS-60381>)
Submitter checklist
- JIRA issue is well described
- Changelog entry appropriate for the audience affected by the change
(users or developer, depending on the change). Examples
<https://github.com/jenkins-infra/jenkins.io/blob/master/content/_data/changelogs/weekly.yml>
* Use the Internal: prefix if the change has no user-visible impact
(API, test frameworks, etc.)
- Appropriate autotests or explanation to why this change has no tests
No tests needed for removed functionality.
- For dependency updates: links to external changelogs and, if
possible, full diffs
------------------------------
You can view, comment on, or merge this pull request online at:
#4387
Commit Summary
- Remove deprecated agent protocols.
File Changes
- *M* core/src/main/java/jenkins/slaves/DefaultJnlpSlaveReceiver.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-0> (2)
- *D*
core/src/main/java/jenkins/slaves/DeprecatedAgentProtocolMonitor.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-1> (94)
- *M* core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-2> (40)
- *D* core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol2.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-3> (67)
- *D* core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-4> (64)
- *D*
core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-5> (7)
- *D*
core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-6> (5)
- *D*
core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-7> (35)
- *D*
core/src/main/resources/jenkins/slaves/DeprecatedAgentProtocolMonitor/message_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-8> (28)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-9> (4)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-10> (2)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-11> (26)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/deprecationCause_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-12> (24)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-13> (4)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-14> (2)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-15> (30)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_de.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-16> (24)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-17> (24)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol/description_sr.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-18> (3)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-19> (5)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-20> (3)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-21> (30)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/deprecationCause_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-22> (26)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-23> (4)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-24> (3)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-25> (33)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_de.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-26> (23)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-27> (25)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol2/description_sr.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-28> (3)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-29> (5)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-30> (1)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-31> (26)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/deprecationCause_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-32> (24)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.jelly
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-33> (4)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-34> (1)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_bg.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-35> (35)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_de.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-36> (23)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_it.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-37> (23)
- *D*
core/src/main/resources/jenkins/slaves/JnlpSlaveAgentProtocol3/description_sr.properties
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-38> (3)
- *D* test/src/test/java/jenkins/AgentProtocolTest.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-39> (148)
- *M* test/src/test/java/jenkins/install/SetupWizardTest.java
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-40> (12)
- *M*
test/src/test/resources/hudson/model/QueueTest/load_queue_xml/config.xml
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-41> (4)
- *D*
test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotDisableProtocolsForMigratedInstances/config.xml
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-42> (39)
- *D*
test/src/test/resources/jenkins/AgentProtocolTest/testShouldNotOverrideUserConfiguration/config.xml
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-43> (47)
- *M*
test/src/test/resources/jenkins/model/JenkinsBuildsAndWorkspacesDirectoriesTest/fromPreviousCustomSetup/config.xml
<https://github.com/jenkinsci/jenkins/pull/4387/files#diff-44> (4)
Patch Links:
- https://github.com/jenkinsci/jenkins/pull/4387.patch
- https://github.com/jenkinsci/jenkins/pull/4387.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#4387?email_source=notifications&email_token=AAW4RIHF7SN7F5D4RRHHYI3QXEYCDA5CNFSM4JV4W6D2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4H6MH33A>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAW4RIFMVWTEPRKMDECJ6VTQXEYCDANCNFSM4JV4W6DQ>
.
|
We should post on the blog about this. Not sure if it should be before or concurrent with making the change. What do you think? I don't know what the admin monitor would do. |
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.
LGTM so far. I'll note that I tend to use SSH agents rather than JNLP, so I might not be the target audience, though.
Try the build again? |
Build failed because |
Please use the labels used on the UI for the changelog. |
I'm not sure what to call it. Bug fix? Enhancement? WDYT? |
Some of the repositories that use release drafter have a |
To clarify, I'm asking for "Inbound Agent Protocol/3" or whatever it is called in favor of "JNLP3-connect". |
Ah, that clarifies. I'll use the current naming. |
Remove anything unnecessary. Move SLAVE_SECRET to JnlpAgentReceiver and alias it for existing usages.
Can anyone share information about the process for updating the upgrade guide? Do I just create a new file in a PR here: https://github.com/jenkins-infra/jenkins.io/tree/master/content/_data/upgrades ? |
Thanks for reviewing, Jesse! I hadn't gotten around to finishing this one up after completing the Remoting side. I incorporated your suggestions so this should be ready to go once I get a good build. |
Remove old, deprecated agent protocols that haven't been supported for a couple of years.
See JENKINS-60381.
This also includes the Remoting release 3.40. See the Remoting changelog. This mostly involves removing the protocols from the Remoting library. It also includes a few other maintenance chores.
Proposed changelog entries
Proposed upgrade guidelines
==== Remove unsupported agent protocols
https://issues.jenkins-ci.org/browse/JENKINS-60381[JENKINS-60381]
Old, long deprecated, unsupported agent protocols have been removed from Jenkins. These are agent-initiated protocols, where the connection is launched on the agent. The protocols are currently called Inbound TCP Agent Protocol/1, Inbound TCP Agent Protocol/2, and Inbound TCP Agent Protocol/3. In other documents and times they have also been known as JNLP1-connect, JNLP2-connect, and JNLP3-connect.
The Inbound TCP Agent Protocol/4 (JNLP4-connect) was introduced in October 2016 to provide a more secure, stable, and scalable mechanism for agent-initiated connections. The prior protocols were deprecated and unsupported less than a year later as this protocol was proven superior. Since that time there has been an administrative monitor and UI warning against their use. This release removes the earlier protocols and the administrative monitor.
If you are still using an unsupported protocol you must manually upgrade to a supported connection mechanism. To continue using agent-initiated connections TCP Agent Protocol/4 is recommended. Agents using one of the unsupported protocols will not work until reconfigured.
Submitter checklist
* Use the
Internal:
prefix if the change has no user-visible impact (API, test frameworks, etc.)No tests needed for removed functionality.