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의 얕은 복제를 수행하고 싶을 것입니다.