JEP draft posted: WebSocket Services

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

JEP draft posted: WebSocket Services

Jesse Glick-4
Should have sent a message about this on Friday but Gmail was being
cranky. Anyway:

https://github.com/jenkinsci/jep/pull/250

tl;dr: This lets “inbound” agents (`JNLPLauncher`) make a Remoting
connection to the master via a WebSocket upgrade on the HTTP port
rather than using the TCP port, to simplify Jenkins setup in special
network topologies (including basically any Kubernetes installation).
Currently working at a prototype level.

Comments welcome on either the JEP or the linked draft implementation PRs.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr3kAyx0oqVSTGEkf8PRA84i803VBKw5pUe9oT0RqJ1XLg%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: JEP draft posted: WebSocket Services

Kohsuke Kawaguchi
Administrator
Yay, something I've long been advocating for!! Super exciting.

On Mon, Nov 25, 2019 at 9:06 AM Jesse Glick <[hidden email]> wrote:
Should have sent a message about this on Friday but Gmail was being
cranky. Anyway:

https://github.com/jenkinsci/jep/pull/250

tl;dr: This lets “inbound” agents (`JNLPLauncher`) make a Remoting
connection to the master via a WebSocket upgrade on the HTTP port
rather than using the TCP port, to simplify Jenkins setup in special
network topologies (including basically any Kubernetes installation).
Currently working at a prototype level.

Comments welcome on either the JEP or the linked draft implementation PRs.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr3kAyx0oqVSTGEkf8PRA84i803VBKw5pUe9oT0RqJ1XLg%40mail.gmail.com.


--
Kohsuke Kawaguchi

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CAN4CQ4zxwFvRfQHbntgUmkKHet3n5F2-L0EFFWa%3DSMF2B_8-JQ%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: JEP draft posted: WebSocket Services

Jeff Thompson
In reply to this post by Jesse Glick-4
The JEP is nicely done and very explanatory for anyone who wants to
learn about this new, upcoming capability. I've done a preliminary
review of the four linked draft implementation PRs. They look good so
far. Looks like we should be able to get this feature in nicely without
disrupting anything.

This will be a great connection mechanism to have.

Jeff Thompson

On 11/25/19 10:00 AM, Jesse Glick wrote:

> Should have sent a message about this on Friday but Gmail was being
> cranky. Anyway:
>
> https://github.com/jenkinsci/jep/pull/250
>
> tl;dr: This lets “inbound” agents (`JNLPLauncher`) make a Remoting
> connection to the master via a WebSocket upgrade on the HTTP port
> rather than using the TCP port, to simplify Jenkins setup in special
> network topologies (including basically any Kubernetes installation).
> Currently working at a prototype level.
>
> Comments welcome on either the JEP or the linked draft implementation PRs.
>

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/ad3d25e1-4af9-389f-6326-42727f829f0f%40cloudbees.com.
Reply | Threaded
Open this post in threaded view
|

Re: JEP draft posted: WebSocket Services

Jesse Glick-4
The JEP was accepted as draft:

https://github.com/jenkinsci/jep/blob/master/jep/222/README.adoc

though there are still pending edits:

https://github.com/jenkinsci/jep/pull/255

Since the JEP draft was filed, there have been a number of fixes, but
the major addition is a WebSocket-based CLI transport, which should be
welcome news for anyone who struggled to get the old “full-duplex
HTTP” CLI transport to work through a reverse proxy. Also the agent
code was reworked to integrate with some APIs which permit usage from
shared agents in CloudBees Core, and perhaps other scenarios.

Everything is working at this point that I know of, though there are
still a couple of test issues, and without Incrementals working it is
tricky to check CI status:

https://github.com/jenkinsci/winstone/pull/79
https://github.com/jenkinsci/jenkins-test-harness/pull/183
https://github.com/jenkinsci/remoting/pull/357
https://github.com/jenkinsci/jenkins/pull/4369
https://github.com/jenkinsci/docker-jnlp-slave/pull/130
https://github.com/jenkinsci/kubernetes-plugin/pull/661

Please take a look and build from sources if you are interested. In
the new year I will try to polish things up and prepare for merge if
there are no obstacles.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr34fiXGJhvEwRias4b7Et09OhLsaDXppfO-K4VnzuCgAQ%40mail.gmail.com.