1 回答

TA貢獻(xiàn)1784條經(jīng)驗 獲得超8個贊
正如模塊script文檔中所解釋的:path中的本地腳本將被傳輸?shù)竭h(yuǎn)程節(jié)點(diǎn)然后執(zhí)行。
腳本中的任何導(dǎo)入文件都不會,您必須先使用 module 將它們復(fù)制到遠(yuǎn)程copy。
示例(根據(jù)需要調(diào)整訪問模式和路徑):
- hosts: "{{ host }}"
gather_facts: yes
become: yes
vars:
ansible_python_interpreter: /usr/bin/python3
tasks:
- name: Create directory
copy:
path: /tmp/python1
state: directory
mode: 0755
- name: Copy scripts
copy:
src: ../python1
dest: /tmp/python1
- name: Connect to MongoDB
script: ../python1/script1.py
args:
chdir: /tmp/python1
executable: python3
然而,通常最好編寫 Ansible 模塊而不是推送腳本。
您的腳本在本地運(yùn)行,因為所有需要的導(dǎo)入文件都已存在
添加回答
舉報