Tec*_*ain 8 ansible ansible-facts ansible-inventory
如何传递相对路径,以便 Ansible 可以从node/keys服务器复制文件并将其复制到服务器?
剧本是ansible/playbook。
我的目录结构是:
??? ansible
? ??? inventory
? ??? playbook
??? node
? ??? keys
? ??? index.js
? ??? node_modules
? ??? package-lock.json
? ??? utils
??? shell
??? data.json
??? create-data.sh
??? destory.sh
??? firewall-rules.sh
Run Code Online (Sandbox Code Playgroud)
下面是剧本:
- hosts: all
vars:
source: "{{ source }}"
destination: /home/ubuntu
tasks:
- name: Copy files
copy:
src: "{{ source }}"
dest: "{{ destination }}"
Run Code Online (Sandbox Code Playgroud)
这就是我运行的方式:
ansible-playbook -i inventory/inventory.yaml playbook/crypto-generate.yaml
--extra-vars "source=../node/keys"
Run Code Online (Sandbox Code Playgroud)
我正在尝试传递相对路径。
ozk*_*nur 17
我正在使用{{ playbook_dir }}构建完整路径,请参阅
特殊的 ansible 变量
- name: Copy files
copy:
src: "{{ playbook_dir }}/../../node/keys"
dest: "{{ destination }}"
Run Code Online (Sandbox Code Playgroud)
Ist*_*van -6
您可以在 src 中使用绝对路径,以避免不知道根文件夹在哪里的问题。
要复制到远程服务器的文件的本地路径。这可以是绝对的或相对的。如果path是目录,则递归复制。在这种情况下,如果路径以“/”结尾,则仅将该目录的内部内容复制到目标。否则,如果它不以“/”结尾,则复制目录本身及其所有内容。此行为类似于 rsync 命令行工具。
https://docs.ansible.com/ansible/latest/modules/copy_module.html
| 归档时间: |
|
| 查看次数: |
5311 次 |
| 最近记录: |