Answers: <p>If I need to build, run checks, tests, ... I use a node.</p>
  
  <p>If I want to open a connection to a server to deliver the built code to production for example, I use the sshCommand step from SSH Step plugin. When the code is delivered the ssh connection is closed.</p>
  
  <p>Having a node always connected to your jenkins can be unpleasant. Let's say the server you connect to belongs to a partner and he wants to audit the times you connect to put the files on the server. In that case he cannot say. Having a node always connected also means you need to maintain the connection, imagine the server is configured to disconnect you after a while or the server reboots and the connection is not relaunched.</p>
  
Answers: CC BY-SA 4.0
Answers: 2019-04-23T21:17:47.860Z
Answers: 2019-04-23T21:17:47.860Z
Answers: fredericrous
Body: <p>What are the advantages of each option? What are the disadvantages? Is there a best practice in this? I fail to see any critical differences between them.</p>
  
  <p>In my current place of employment we use nodes exclusively, however they are all in our internal network.</p>
  
  <p>I have a task that needs to be delegated to an external server. It does not need access to our GIT. Essentially, it will upload data to a file server, and does not need to access our servers, network, data, etc.</p>
  
Comments: CC BY-SA 4.0
Comments: 2018-09-06T22:45:27.627Z
Comments: Can you add more details about what you mean by "SSH site" and "node"?  I am not familiar with these terms as they relate to Jenkins.  Perhaps you are talking about communicating with nodes via JNLP vs. SSH?
Comments: jayhendren
Comments: CC BY-SA 4.0
Comments: 2018-09-07T21:03:00.517Z
Comments: He tried to choose jenkins slave (jnlp) or ssh agent (plugin).
  Do not use plugin if you can solve it natively.
Comments: Meiram Chuzhenbayev
Comments: CC BY-SA 4.0
Comments: 2018-09-12T07:58:45.777Z
Comments: @jayhendren by "SSH site" I mean using a the "Execute shell script on remote host using SSH" build step (It refers to the SSH host as an SSH site if I get it).
  By Node I mean a server that runs a Jenkins agent program and responds to the Jenkins master. Based on: https://wiki.jenkins.io/display/JENKINS/Distributed+builds.
Comments: Uberhumus
Tags: <jenkins>
Title: In Jenkins when to use SSH site and when to use a node?
UserDisplayName: Uberhumus
ThreadText: # In Jenkins when to use SSH site and when to use a node?
  
  (Asked by: username_0 on 2018-09-06)
  
  What are the advantages of each option? What are the disadvantages? Is there a best practice in this? I fail to see any critical differences between them.
  
  In my current place of employment we use nodes exclusively, however they are all in our internal network.
  
  I have a task that needs to be delegated to an external server. It does not need access to our GIT. Essentially, it will upload data to a file server, and does not need to access our servers, network, data, etc.
  
  **Tags:** jenkins
  
  > **Comments:**
  > **username_1**: Can you add more details about what you mean by "SSH site" and "node"?  I am not familiar with these terms as they relate to Jenkins.  Perhaps you are talking about communicating with nodes via JNLP vs. SSH?  
  > **username_2**: He tried to choose jenkins slave (jnlp) or ssh agent (plugin). Do not use plugin if you can solve it natively.  
  > **username_0**: @username_1 by "SSH site" I mean using a the "Execute shell script on remote host using SSH" build step (It refers to the SSH host as an SSH site if I get it). By Node I mean a server that runs a Jenkins agent program and responds to the Jenkins master. Based on: https://wiki.jenkins.io/display/JENKINS/Distributed+builds.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_3 on 2019-04-23. Score: 1
  
  If I need to build, run checks, tests, ... I use a node.
  
  If I want to open a connection to a server to deliver the built code to production for example, I use the sshCommand step from SSH Step plugin. When the code is delivered the ssh connection is closed.
  
  Having a node always connected to your jenkins can be unpleasant. Let's say the server you connect to belongs to a partner and he wants to audit the times you connect to put the files on the server. In that case he cannot say. Having a node always connected also means you need to maintain the connection, imagine the server is configured to disconnect you after a while or the server reboots and the connection is not relaunched.
  
  
  ---
  
  