주어진 사용자가 항상 시스템에 존재하는지 확인하고 존재하지 않는 경우에만 생성하십시오.
내 현재 작업은 다음과 같습니다
- name: Create default user
action: user name={{ user }} groups={{ group }} state=present
그러나 사용자가 이미 존재하면 오류가 발생하므로 사용자 계정이 이미 존재할 때 오류를 피하는 방법은 무엇입니까?
답변
모듈, 따라서 표시하는 것과 같은 플레이 북은 dem 등원이어야 사용 가능합니다.
플레이 북과 온라인에서 동일한 작업을 여러 번 반복해도 예상대로 오류가 발생하지 않습니다.
$ ansible 10.0.0.2 -u dawud -m user -a "name=sysadm group=1000 state=present"
10.0.0.2 | success >> {
"append": false,
"changed": false,
"comment": "System Administrator,,,",
"group": 1000,
"home": "/home/sysadm",
"name": "sysadm",
"shell": "/bin/bash-static",
"state": "present",
"uid": 1000
}
$ ansible-playbook ansible/sample.yml -u dawud -K
sudo password:
PLAY [10.0.0.2] *********************
GATHERING FACTS *********************
ok: [10.0.0.2]
TASK: [create admin user] *********************
ok: [10.0.0.2]
PLAY RECAP *********************
10.0.0.2 : ok=2 changed=0 unreachable=0 failed=0
내가 사용한 플레이 북 :
$ cat ansible/sample.yml
- hosts: 10.0.0.2
sudo: yes
tasks:
- name: create admin user
action: user name=sysadm group=1000 state=present
답변
아니면 그냥 속이고 추가 할 수 있습니다
ignore_errors: yes
action: user
선 아래