diff options
Diffstat (limited to 'classes/Net/SSH/Multi.html')
-rw-r--r-- | classes/Net/SSH/Multi.html | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/classes/Net/SSH/Multi.html b/classes/Net/SSH/Multi.html index c9ae8ee..0e96808 100644 --- a/classes/Net/SSH/Multi.html +++ b/classes/Net/SSH/Multi.html @@ -88,7 +88,7 @@ parallel, and allows commands to be executed on subsets of servers (defined by groups).</p> - <pre class="ruby"><span class="ruby-identifier">require</span> <span class="ruby-string">'net/ssh/multi'</span>

<span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Multi</span>.<span class="ruby-identifier">start</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">session</span><span class="ruby-operator">|</span>
 <span class="ruby-comment"># access servers via a gateway</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">via</span> <span class="ruby-string">'gateway'</span>, <span class="ruby-string">'gateway-user'</span>

 <span class="ruby-comment"># define the servers we want to use</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">use</span> <span class="ruby-string">'user1@host1'</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">use</span> <span class="ruby-string">'user2@host2'</span>

 <span class="ruby-comment"># define servers in groups for more granular access</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">group</span> :<span class="ruby-identifier">app</span> <span class="ruby-keyword">do</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">use</span> <span class="ruby-string">'user@app1'</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">use</span> <span class="ruby-string">'user@app2'</span>
 <span class="ruby-keyword">end</span>

 <span class="ruby-comment"># execute commands on all servers</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">exec</span> <span class="ruby-string">"uptime"</span>

 <span class="ruby-comment"># execute commands on a subset of servers</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">with</span>(:<span class="ruby-identifier">app</span>).<span class="ruby-identifier">exec</span> <span class="ruby-string">"hostname"</span>

 <span class="ruby-comment"># run the aggregated event loop</span>
 <span class="ruby-identifier">session</span>.<span class="ruby-identifier">loop</span>
<span class="ruby-keyword">end</span></pre> + <pre>require 'net/ssh/multi'
Net::SSH::Multi.start do |session|
 # access servers via a gateway
 session.via 'gateway', 'gateway-user'

 # define the servers we want to use
 session.use 'user1@host1'
 session.use 'user2@host2'

 # define servers in groups for more granular access
 session.group :app do
 session.use 'user@app1'
 session.use 'user@app2'
 end

 # execute commands on all servers
 session.exec "uptime"

 # execute commands on a subset of servers
 session.with(:app).exec "hostname"

 # run the aggregated event loop
 session.loop
end</pre> <p>See <a href="Multi/Session.html">Net::SSH::Multi::Session</a> for more documentation.</p> @@ -135,7 +135,7 @@ href="Multi/Session.html#method-i-close">Net::SSH::Multi::Session#close</a>) when the block finishes. Otherwise, the new session will be returned.</p> - <pre class="ruby"><span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Multi</span>.<span class="ruby-identifier">start</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">session</span><span class="ruby-operator">|</span>
 <span class="ruby-comment"># ...</span>
<span class="ruby-keyword">end</span>

<span class="ruby-identifier">session</span> = <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Multi</span>.<span class="ruby-identifier">start</span>
<span class="ruby-comment"># ...</span>
<span class="ruby-identifier">session</span>.<span class="ruby-identifier">close</span></pre> + <pre>Net::SSH::Multi.start do |session|
 # ...
end
session = Net::SSH::Multi.start
# ...
session.close</pre> <p>Any options are passed directly to <a href="Multi/Session.html#method-c-new">Net::SSH::Multi::Session.new</a> |