ansible 플레이 북 내에서 2 개 이상의 가능한 경로에서 파일 경로를 감지하는 올바른 방법은 무엇입니까?

Itai Ganot

회사에서 사용하는 일부 모니터링 시스템의 에이전트를 설치하고 구성 할 Ansible 플레이 북을 작성 중입니다. 에이전트를 성공적으로 구성하는 데 필요한 단계 중 하나는 nagios.cfg파일에 특정 지시문을 구성하는 것 입니다.

nagios.cfg는 설치된 방식 (패키지 관리자 / 소스에서)에 따라 두 개의 다른 경로에 상주 할 수 있습니다.

두 가지 관련 경로는 다음과 같습니다.

/usr/local/nagios/etc/nagios.cfg
/etc/nagios3/nagios.cfg

Ansible이 원하는 것은 올바른 경로를 찾은 다음 다음 구성 단계에서 사용할 수있는 변수에 삽입하는 것입니다.

나는 이것으로 시작했다 :

- stat: path=/usr/local/nagios/etc/nagios.cfg
  register: nag_conf_usrlocal
  when: nag_conf_usrlocal.stat.exists

나는 첫 번째 위치에 파일을 지정하는 것에 대해 생각하고 거기에 파일이 있는지 이해하고 그렇다면 변수에 삽입하고 거기에 없으면 다음 경로가 표시되어야하며 파일이 거기에 있으면 변수가 파일이있는 올바른 경로.

어떻게 할 수 있습니까?

shaps

당신이 한 일은 잘못된 것이 아닙니다.

- stat: path=/usr/local/nagios/etc/nagios.cfg
  register: nag_conf_usrlocal

- stat: path=/etc/nagios3/nagios.cfg
  register: nag_conf_etc
  when: nag_conf_usrlocal.stat.exists

- set_fact: 
     nagios_path: "/usr/local/nagios/etc/nagios.cfg"
  when: nag_conf_usrlocal.stat.exists

- set_fact: 
     nagios_path: "/etc/nagios3/nagios.cfg"
  when: nag_conf_etc.stat.exists

이것은 아마도 최선의 해결책은 아니지만 이것이 어떻게 달성 될 수 있는지에 대한 개요를 제공하기위한 것입니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관