2015-08-26 68 views
0

如何使用Robot Framework讓多個ssh進程運行?全部到集羣上的不同節點。我已經使用for循環,或者使用流程庫中的start process關鍵字爲每個需要的節點啓動一個。我需要檢查每個節點上的OpenSSH_版本。與機器人框架的多個併發ssh連接

我對機器人框架非常陌生。

@{nodes} Create List  1 2 3 4 5 6 7 8 
    :FOR ${node} IN @{nodes} 
    \ Open Connection ${node} 
    \ Enable SSH Logging ${output} 
    \ Run Keyword And Ignore Error  Login user pass 
    \ Log  all output:${output} 
    \ File Should not be empty  ${output} 
    \ ${version}=  Grep File  ${output} OpenSSH_ 
    \ Should contain ${version} OpenSSH_6.9 
    \ Close Connection 

回答

0

Robot框架的SSHLibrary庫支持到不同主機的多個連接。理想情況下,你將最終的東西是這樣的:用以下關鍵詞的不同SSH會話之間

:FOR ${host} IN @{hosts} 
    Open Connection ${host} 
    Comment Do something with current ${host} 
    Close Connection 
+0

我也不太知道什麼@ {}主機手段。儘管我已經使用了SSHLibrary!只是不知道它可以用於併發連接。一個接一個會太慢。 – Kepler

+0

@Kepler'@ {hosts}'在這種情況下是所有主機的列表。 – ILostMySpoon

+0

謝謝@ILostMySpoon – Kepler

0

開關:

Switch Connection index_or_alias