質問: os.path.expanduser(module.params['src']) if not os.path.exists(src): module.fail_json(msg="Source %s not found" % (src)) ``` 上のコードはplaybookで指定されたsrcパラメータを os.path.expanduserに渡したものを os.path.existsで存在チェックしているだけです。 copyモジュールのsrcパラメータは * Vagrantの ansible local provisioner を使った場合 * playbookでconnection: local を指定した場合 いずれの場合でもきちんと動作しているように思えます。 それと同様の処理を自作のモジュールでも行っているつもりなのですが、何故か動作しません。 --- 以上、何卒よろしくお願いいたします。 情報が足りなければ追記いたしますので、お申し付けください。
回答: 自己解決しました。 http://stackoverflow.com/questions/40021547/i-have-copied-the-ansible-copy-module-to-the-project-but-the-copied-module-doe moduleはtargetで実行されるためmasterにあるファイルを見つけることができないようです。 copy モジュールなんかでは action pluginを使っています。 action pluginはmoduleと違ってmasterで実行されるため、masterにあるファイルにもアクセスできます。