2017-11-13 11 views
0

いくつかのCoreOS仮想マシンでAnsibleを使用しようとしていますが、ActivePythonをインストールしました。 。私は-m rawでAnsibleのコマンドを実行した場合、それは成功し、興味深いことに可能性のあるエラー:/ bin/sh:-c:マッチするものを探しているときに予期しないEOF "

[email protected]:~$ ansible dhcp-coreos155 -m ping 
dhcp-coreos155 | FAILED! => { 
    "changed": false, 
    "failed": true, 
    "module_stderr": "Shared connection to dhcp-coreos155 closed.\r\n", 
    "module_stdout": "/bin/sh: -c: line 0: unexpected EOF while looking for matching `\"'\r\n/bin/sh: -c: line 1: syntax error: unexpected end of file\r\n", 
    "msg": "MODULE FAILURE", 
    "rc": 1 
} 

[email protected]:~$ ansible dhcp-coreos155 -m raw -a 'uptime' 
dhcp-coreos155 | SUCCESS | rc=0 >> 
20:02:21 up 1 day, 22:11, 2 users, load average: 0.00, 0.00, 0.00 
Shared connection to dhcp-coreos155 closed. 
私がテストするために組み込みAnsibleモジュール(ピング)を使用しようとすると、それは次のようなエラーがスローされます

失敗コマンドで-vvvvフラグを使用しました。 e接続状態であり、SSHがCoreOSノードに正しく接続しているようです。私はもう少し情報を収集しますが、なぜエラーが発生しているのかは不明です。コマンドAnsible実行中にアンバランスな引用符がある - あなたはどこかにPythonの実行定義に混乱しているように私に

<dhcp-coreos155> ESTABLISH SSH CONNECTION FOR USER: deploy 
<dhcp-coreos155> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o 'IdentityFile="/home/deploy/.ssh/id_rsa"' -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=deploy -o ConnectTimeout=10 -o ControlPath=/home/deploy/.ansible/cp/6852b73873 -tt dhcp-coreos155 '/bin/sh -c '"'"'sudo -H -S -n -u root /bin/sh -c '"'"'"'"'"'"'"'"'echo BECOME-SUCCESS-fisdfsesqopuqybnmnfhfdijsvkmxvoh; /home/deploy/bin/python" /home/deploy/.ansible/tmp/ansible-tmp-1510602904.61-255211842882017/ping.py; rm -rf "/home/deploy/.ansible/tmp/ansible-tmp-1510602904.61-255211842882017/" > /dev/null 2>&1'"'"'"'"'"'"'"'"' && sleep 0'"'"'' 
<dhcp-coreos155> (1, '/bin/sh: -c: line 0: unexpected EOF while looking for matching `"\'\r\n/bin/sh: -c: line 1: syntax error: unexpected end of file\r\n', 'Shared connection to dhcp-coreos155 closed.\r\n') 

答えて

0

は、それは(あなたが設定を示していない可能性が高いAnsible在庫やansible.cfgだ、)になります:

/home/deploy/bin/python" 

シェルは引用符を開きますが、それは閉じ引用符、コマンド全体が終了し、一致見つかるので、それは予期しないEOF-た例外をスローする前に。


rawモジュールはPythonを呼び出さないため、エラーはありません。

+0

ええ、以前はCoreOSにPythonをインストールするときに忘れていたアーティファクトでした。 – cmutchler