Ansible: 파일 업데이트를 위한 인라인 데이터

Ansible: 파일 업데이트를 위한 인라인 데이터

Ansible 플레이북을 통해 일부 파일을 업데이트해야 합니다.

일반적으로 내 플레이북은 새 파일이 저장된 사이트에 연결하여 전송합니다.

문제는 사이트를 다운로드하지 않고도 새 파일의 내용을 플레이북에 통합하여 함께 묶을 수 있는 방법이 있는지 여부입니다.

HTML과 이미지에 대해 생각했습니다. 다른 파일을 참조하거나 Base64로 인라인으로 인코딩할 수 있습니다.

편집하다

모듈 복사가 인라인 데이터를 지원한다는 사실을 방금 발견했습니다.

- name: Creating a file with content
    copy:
      dest: "x.x"
      content: |
        line1abc  xyz
        yxz000  123
        blabla *** ...

이것은 나에게 가능한 방법처럼 보입니다. 아마도 더 좋은 것이 있을 수도 있습니다. 알려주세요.

답변1

귀하의 접근 방식은 작동하지만 ansible.builtin.copy많은 content수의 파일에 맞게 확장되지는 않습니다.

문서를 살펴보는 것이 좋습니다.ansible.posix.synchronize그리고ansible.builtin.git

동기화 모듈은 기본적으로 rsync를 둘러싼 래퍼입니다.

html 파일이나 다른 코드의 경우 파일 전송에 git을 활용할 수 있도록 git을 사용해야 합니다. -module depth-attribute는 여기서 흥미롭습니다 git. 아마도 로컬 저장소의 전체 복제가 아닌 웹 서버에서 깊이 1의 얕은 복제를 수행하고 싶을 것입니다.

관련 정보