gpt4 book ai didi

Ansible 从变量列表创建目录

转载 作者:行者123 更新时间:2023-12-04 15:09:56 24 4
gpt4 key购买 nike

我开始学习 ansible 并尝试创建一些目录,这些目录将用于剧本中的不同任务,因此我为每个目录创建了变量。

到目前为止我的剧本。

---
- name: tests
hosts: all
vars:
dir1: /data/dir1
dir2: /mnt/dir2
tasks:
- debug:
msg: "{{ item }}"
loop:
- "{{ dir1 }}"
- "{{ dir2 }}"
- name: create directories
file:
path: "{{ item }}"
state: directory
mode: '0755'
loop:
- "{{ dir1 }}"
- "{{ dir2 }}"

调试按预期工作,但出现此错误

The task includes an option with an undefined variable. The error was: 'item' is undefined

也试过

    - name: create directories
file:
path: "{{ item }}"
state: directory
mode: '0755'
with_items:
- "{{ dir1 }}"
- "{{ dir2 }}"

在 Raspberry Pi 4 上的 Ubuntu 20.04 LTS 上使用 Ansible 2.9.6

最佳答案

问:'item' 未定义

答:loop的缩进错误(与_items相同)。修复语法

    - name: create directories
file:
path: "{{ item }}"
state: directory
mode: '0755'
loop:
- "{{ dir1 }}"
- "{{ dir2 }}"

可能 Ansible 在模块参数之前检查变量。这可能是 Ansible 失败并显示 'item' is undefined 而不是 'loop' unknown parameter of the module file 的原因。

关于Ansible 从变量列表创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65390659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com