私は、実行可能なスクリプトからPythonスクリプトを実行しようとしています。私はこれが簡単なことだと思いますが、私はそれを理解することはできません。私は(release.ymlで使用される役割である)main.ymlにタスク内でmypythonscript.py実行しようとしている実行中のPythonスクリプトを実行する
playbook-folder
roles
stagecode
files
mypythonscript.py
tasks
main.yml
release.yml
:私はこのようなプロジェクト構造を持っています。ここに仕事があります:
- name: run my script!
command: ./roles/stagecode/files/mypythonscript.py
args:
chdir: /dir/to/be/run/in
delegate_to: 127.0.0.1
run_once: true
私はまた../files/mypythonscript.pyを試しました。私は、無能な人のための道は、プレイブックとの相対的なものだと思ったが、私はそう思わないだろうか?
私はスクリプトの途中でどこにいるのか把握するためにデバッグを試みましたが、そこには運がありません。
- name: figure out where we are
stat: path=.
delegate_to: 127.0.0.1
run_once: true
register: righthere
- name: print where we are
debug: msg="{{righthere.stat.path}}"
delegate_to: 127.0.0.1
run_once: true
ちょうど "。"が表示されます。役に立つ...
私はpythonスクリプトを実行する予定の私のディレクトリを台無しにするだろうが、私はpythonスクリプトにparamとして渡すことができると思います。ありがとう! – CorayThan
Pythonスクリプトを特定のパスから実行する必要がある場合は 'command行を' command:./ "{{role_path}}"/files/mypythonscript.py'に変更してください( 'chdir' arg – ydaetskcoR