연재 시리즈

Ansible playbook 실패 제어

악분 2024. 1. 19. 23:10
반응형

playbook이 중간에 실패하면?

playbook은 실행한 taks결과가 실패라면 다음 task를 실행하지 않습니다.

 

아래 예제에서는 ls명령어로 존재하지 않는 경로를 조회하는 task가 있습니다.

- name: Failed Example
  hosts: localhost

  tasks:
    - name: Echo start
      ansible.builtin.debug:
        msg: "start"

    - name: List files
      ansible.builtin.command:
        cmd: "ls /tmp/doest_not_exist"

    - name: Echo end
      ansible.builtin.debug:
        msg: "end"

 

ls명령어는 실행을 실패하기 때문에 “Echo end” task는 실행되지 않습니다.

 

실패해도 계속 실행하게 하려면?

task를 실패해도 다음 task를 실행하려면, 실패를 무시하는 ignore_error를 활성화 합니다.

 

설정 방법은 task에 ignore_error필드를 yes로 설정합니다.

- name: Failed Example
  hosts: localhost

  tasks:
    - name: List files
      ansible.builtin.command:
        cmd: "ls /tmp/doest_not_exist"
      ignore_errors: yes

 

ignore_error필드를 설정하면 playbook실행 결과에서 ignored로 기록됩니다.

반응형

'연재 시리즈' 카테고리의 다른 글

Ansible playbook 파일을 사용하여 변수 정의  (0) 2024.01.20
Ansible playbook 변수  (0) 2024.01.20
Ansible vault  (0) 2024.01.14
Ansible playbook  (0) 2024.01.14
Ansible 사용방법  (0) 2024.01.12