2017-01-09 12 views
2

blockinfile 모듈을 사용하여 파일에 몇 줄을 삽입하고 싶습니다. 작업은 다음과 같이 진행됩니다멱등환 가능한 블록 파일 모듈?

name: add some lines 
    become: true 
    blockinfile: 
     dest: /etc/sysctl.conf 
     block: | 
     mykey1={{ kernvars['my_value1'] }} 
     mykey2={{ kernvars['my_value2'] }} 
     mykey3={{ kernvars['my_value3'] }} 

확인하고 아직없는 경우에만 특정 라인을 삽입 할 수있는 모듈 방식 (또는 관련 패턴이) 거기를?

Ubuntu 16.04.01

답변

4

예에 ansible 2.0.0.2 사용. blockinfile 모듈은 기본적으로 멱등 원입니다.

지정한 콘텐츠 외에도 블록 시작 부분과 블록 끝 부분에 두 줄이 추가됩니다. 후속 실행시이 두 마커 사이의 내용을 확인하고 내용이 변경되지 않은 경우 "확인"상태를 반환하고 다시 삽입하지 않습니다.

이 줄은 주석으로 구성 파일에 삽입해야하므로 사용하는 정확한 구성 파일 형식에 따라 인수 (기본값은 #)로 주석을 표시하는 데 사용되는 문자를 사용자 정의 할 수 있습니다.

동일한 대상 파일에서 blockinfile 개의 작업을 여러 개 사용하는 경우 Anothing이 각 작업 (또는 인수에도 있음)에 고유 한 문자열을 추가해야합니다.

blockinfile에 대한 자세한 내용은 Anipal 문서를 참조하십시오.

+0

때로는 답변을 한 번만 투표 할 수있어서 너무 슬퍼합니다. @techraf doc에 빠진이 명확한 진술에 대해 대단히 감사합니다. – Aleksandar