Ansible PlayBookを介して一部のファイルを更新する必要があります。
通常、私のプレイブックは新しいファイルが保存されているサイトに接続して送信します。
問題は、サイトをダウンロードせずに新しいファイルの内容をプレイブックに統合してまとめる方法があるかどうかです。
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
。おそらく、ローカルストレージのフルレプリケーションではなく、Webサーバーで深さ1の浅いレプリケーションを実行したいと思います。