Search code examples
jenkinshudsonmaster-slave

How are the jobs/instructions from master to the slave trasmitted in Jenkins?


I am trying to understand the excat mean of communciation between master and slave in jenkins. How does the jobs/instructions from master to the slave is being trasmitted?

I am aware that a TCP/IP bi-deirectional link is established.

Is there any document that explains in details (not just overall) mean of communication between master and slave?

Also, what are the packages in the source code that are invloved in the communication?

So far I know it's getTCPslaveAgentListener, getSlaveagentPort(), SetSlaveAgentPort, and CheckTaskLisnter


Solution

  • Jenkins uses a library it calls remoting, which takes care of establishing a channel, sending closures and automatically loading the required Java classes on the remote machine.

    There's some documentation on how it works here (PDF).