A continuous integration environment is a mixed bag of machines, platforms, build toolchains and operating systems.
Ideally, you want as much flexibility as possible in managing these environments.
You want your build machines to be interchangeable and you don’t want to tie your builds to a particular machine.
Using containers as build agents is an effective way to get the flexibility you need to create applications faster...
I am happy to report that JEP-222 has landed in Jenkins weeklies,
starting in 2.217.
This improvement brings experimental WebSocket support to Jenkins,
available when connecting inbound agents or when running the CLI.
The WebSocket protocol allows bidirectional, streaming communication over an HTTP(S) port.
While many users of Jenkins could benefit,
implementing this system was particularly important for CloudBees
because of how CloudBees Core on modern cloud platforms
(i.e., running on Kubernetes)...
Updated on Jan 10, 2019: The deprecated protocols were removed in Remoting 3.40+ and Jenkins 2.214+.
See JENKINS-60381: Remove old for more information and links.
There are upcoming changes in Jenkins "core" which may require extra steps
when upgrading Jenkins. If you use configuration management for Jenkins
agents, please read this announcement carefully.
If you have ever seen messages like "Channel is already closed" or "Remote call failed"...