2016-04-19 9 views
-1

ローカルのgitサーバに自分のリポジトリをクローンするシェルスクリプトを持つAnsibleマスタマシンを実行しています。私はPerforceからクローニングしているので、同じものにgit-p4モジュールを使用しています。git-p4が実行中にリポジトリを複製できない

#!/bin/bash 

p4port=myport 
p4user=myuser 
p4repourl=myurl 
p4path=/usr/local/bin/p4 
p4passwd=mypass 
clone_dest=/root/mycode 
gitp4=/usr/local/bin/git-p4 

export P4PORT=$p4port 
export P4USER=$p4user 
$p4path trust -y 
echo $p4passwd|$p4path login 
echo "now using git-p4 to clone repo.." 
python $gitp4 clone -v $p4repourl $clone_dest 

私のターゲットマシンは、RHEL 7を持っていると私は、ターゲットマシン上でこのシェルスクリプトを実行した場合、それが正常に動作します。しかし、私は、コマンドモジュールを使用して、私のAnsibleマスターからこれを実行する場合、それは次のようなエラーがスローされます。ansibleの下で、これはgit-P4はP4を見つけることができないながら

['git', 'config', 'git-p4.client']\nOpening pipe: ['p4', '-G', 'files', 'mydepot/...#head']\nTraceback (most recent call last):\n File \"/usr/local/bin/git-p4\", line 3657, in <module>\n main()\n File \"/usr/local/bin/git-p4\", line 3651, in main\n if not cmd.run(args):\n File \"/usr/local/bin/git-p4\", line 3525, in run\n if not P4Sync.run(self, depotPaths):\n File \"/usr/local/bin/git-p4\", line 3330, in run\n self.importHeadRevision(revision)\n File \"/usr/local/bin/git-p4\", line 3079, in importHeadRevision\n for info in p4CmdList([\"files\"] + fileArgs):\n File \"/usr/local/bin/git-p4\", line 495, in p4CmdList\n stdout=subprocess.PIPE)\n File \"/usr/lib64/python2.7/subprocess.py\", line 711, in __init__\n errread, errwrite)\n File \"/usr/lib64/python2.7/subprocess.py\", line 1308, in _execute_child\n raise child_exception\nOSError: [Errno 2] No such file or directory", "stdout": 
+0

あなたのアナフィールドプレイフックはどこですか? – ydaetskcoR

答えて

0

あなたのPATHが正しく設定されていません。

また、分かりやすくするため、\ nをエラーメッセージの改行に置き換えることをお勧めします。