###前提・実現したいこと
初めての質問なので、情報に不備がありましたら面目ありません。
会社のWindows7環境下で、Python(3)のfabricライブラリを用いて社内サーバ(centOS)にsshによる遠隔でコマンドを渡すプログラムを書いています。
記載したソースコードで、まずはhostnameを表示させる簡単なプログラムを試すつもりが、run実行時、以下のように指定したホストに対して「そんなホストないよ!」って怒られてしまいます。
そのあと求められる再入力でインプットすれば、普通に正常稼働します。
###発生している問題・エラーメッセージ
実行時、以下のような警告文が出現し、そのあと普通にホストアドレスをインプットすれば正常稼働する。 No hosts found. Please specify (single) host string for connection:
###該当のソースコード
Python
1#coding:utf-8 2 3from fabric.api import run 4from fabric.api import env 5 6host1 = '123.45.67.89' 7 8env.hosts = [host1] 9env.user = "user" 10env.password = "pass" 11 12def testfun(): 13 run("hostname") 14 15testfun()
###試したこと
求められている型はstringでよかったはず(どのサンプルコードを見てもこんなところで躓いているケースがない)なので、どこを見直してよいのやら途方に暮れている状態です。
再入力後に普通に動作することを考えれば、userとpassはstring型で普通に受け取ってもらえていると思います。
(誤ったpassなどを与えれば再入力を求められるので、userとpassに関してはstring型で正常にインプットを受け取ってもらえているという感じです)
※3/7追記※
なお、直接env.hosts = ["123.45.67.89"]としても結果は変わりませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
Pleades環境下で作業をしています。
Pythonのバージョンは3.5.1です。