이것은 당신이 시도 할 수있는 좋은 출력 예입니다. 다음과 같은 새 플레이 북을 만듭니다 iteration_loop.yml
.
---
- name: Change mod/own
hosts: all
tasks:
- name: show me the iterations
debug: msg={{ item.0.username }} {{ item.1.path }} then {{ item.1.permissions }} {{ item.1.path }}
with_subelements:
- users
- directories
vars:
users:
- username: bar
directories:
- path: /data
permissions: rX
- path: /js
permissions: rX
- username: foo
directories:
- path: /
permissions: rwX
그런 다음 플레이 북을 다음과 같이 실행하십시오.
ansible-playbook -i '172.16.222.131,' iteration_loop.yml
결과는 항목에 액세스하는 방법을 제공해야합니다.
PLAY [Change mod/own] *********************************************************
GATHERING FACTS ***************************************************************
ok: [172.16.222.131]
TASK: [show me the iterations] ************************************************
ok: [172.16.222.131] => (item=({'username': 'bar'}, {'path': '/data', 'permissions': 'rX'})) => {
"item": [
{
"username": "bar"
},
{
"path": "/data",
"permissions": "rX"
}
],
"msg": "bar"
}
ok: [172.16.222.131] => (item=({'username': 'bar'}, {'path': '/js', 'permissions': 'rX'})) => {
"item": [
{
"username": "bar"
},
{
"path": "/js",
"permissions": "rX"
}
],
"msg": "bar"
}
ok: [172.16.222.131] => (item=({'username': 'foo'}, {'path': '/', 'permissions': 'rwX'})) => {
"item": [
{
"username": "foo"
},
{
"path": "/",
"permissions": "rwX"
}
],
"msg": "foo"
}
PLAY RECAP ********************************************************************
172.16.222.131 : ok=2 changed=0 unreachable=0 failed=0
shell
재귀 ACL을 수행해야하고acl
모듈에서 지원하지 않기 때문에 모듈을 사용 하고 있습니다.