Ansible 을 사용할때에 특정 동작에 대해서 대기한 후에 진행하도록 해야할 필요가 있다. 대표적인 것이 Tomcat 과 같은 경우인데, Tomcat 이 시작을 하게 되면 애플리케이션이 동작하기까지 몇 초의 시간이 더 걸린다. 웹 애플리케이션이 정상적으로 접속을 받기 전에 또 다른 작업을 하게 될 경우에 문제가 된다.
wait_for
Ansible 에서는 위와같은 경우를 위해서 wait_for 라는 것을 지원한다. 예제를 보면 단번에 이해할 수 있다.
| 1 2 3 4 5 6 7 8 9 10 | # roles/apache/tasks/restart.yml - name: Restart webserver   service:     name: httpd     state: restarted - name: Wait for webserver to start   wait_for:     port: 80     delay: 10 | 
포트 80 을 체크해 10초동안 딜레이를 가진다.
다음 예제를 보자.
| 1 2 3 4 | tasks:   - name: Tomcat pid check     wait_for:       path: /opt/tomcat/tmp/tomcat.pid | 
tomcat.pid 파일이 생성되면 다음 스텝으로 진행 된다.
또 다음 예제를 보자.
| 1 2 3 4 5 | tasks:   - name: Tomcat pid check     wait_for:       path: /opt/tomcat/tmp/tomcat.pid       state: absent | 
tomcat.pid 파일이 삭제되면 다음을 진행한다.
위 예제2,3을 활용하면 Tomcat 웹 애플리케이션을 배포할때에 활용가능하다.