我有一個調用2個角色的可靠劇本。角色1在本地運行,其中有一個腳本,其中arg作爲文件路徑/tmp/inputfile/input.csv。該劇本的樣子:Ansible本地連接腳本參數路徑無法檢測
- hosts: "{{my_extra_var_IP}}"
connection: local
roles:
- prereq
角色任務:
- name: Copy script to local
copy:
src: files/csv_to_files.sh
dest: /tmp/input_dir/
mode: 0777
- command: ls -ltr /tmp/input_dir
- command: cat /tmp/input_dir/inputFile.csv
#- name: run csv to yml script
# script: /tmp/input_dir/csv_to_files.sh /tmp/input_dir/inputFile.csv
# become_user: niceha
的第2個任務的輸出是成功的,並作爲預期,但在第3 &第四步,我得到錯誤:
FAILED! => {"changed": true, "cmd": ["cat", "/tmp/input_dir/inputFile.csv"], "delta": "0:00:00.007141", "end": "2017-06-09 15:53:58.673450", "failed": true, "rc": 1, "start": "2017-06-09 15:53:58.666309", "stderr": "cat: /tmp/input_dir/inputFile.csv: No such file or directory", "stdout": "", "stdout_lines": [], "warnings": []}
我從使用userA的塔上運行這個工作我也試圖改變用戶,但沒有運氣。
根據您在問題中發佈的代碼,我看不出「cat/tmp/input_dir/inputFile.csv」命令有效。您不創建該文件,因此它不存在。很明顯。 – techraf