問題タブ [ansible-template]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
16379 参照

ansible - Ansible テンプレートをファクト変数にレンダリングする

Ansible テンプレートをファクトにレンダリングする方法はありますか? 解決策を見つけようとしましたが、一時ファイルが唯一の方法であるようです。

0 投票する
1 に答える
30971 参照

ansible - Ansible テンプレートは、テンプレートの配列に「u」を追加します

私はvars私のansibleプレイブックの中に次のものを持っています。私は次の構造を得ました

そして、私の内部に次のものを持っていますconf.j2

VM に入ってファイルを見ると、次のようになります。

出力

配列内のuに注意してください。sans

期待される出力

なぜこれが起こっているのですか、どうすれば修正できますか?

0 投票する
2 に答える
11556 参照

ansible - Ansible タスクで変数を登録し、テンプレートで使用する

Ansible タスクで、テンプレートのチェック ステートメントとして使用できるように変数を登録する方法。タスクは次のとおりです。

vhost のテンプレートでlisten 80は、常に利用可能であり、証明書が利用可能な場合にのみブロックを追加したいlisten 443:

上記のケースを実行すると、2 番目のサーバー ブロックが実行されません。これは、vhost 構成にサーバー listen 80 のみが出力されることを意味します。

ただし、True for ステートメントを削除してテンプレートにif追加すると、エラーが発生します。stat.exists

エラーは "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'stat'、変数を登録する前に stat モジュールを使用したにもかかわらずです。

Ansible タスクで定義された変数を渡し、Jinja2 テンプレートで使用する他の方法はありますか?

- debug: var=ssl_cert_checkの前にタスクによって表示される値Create vhost from templateは次のとおりです。

0 投票する
2 に答える
88317 参照

ansible - Ansibleのセットアップモジュールの出力からリストの最初の要素を取得する方法は?

セットアップ モジュールから次のデータを受け取りました。

ansible_processorの最初の値を取得して、Jinja2 テンプレートで使用したいと考えています。

を使用する{{ ansible_processor }}と、両方の値が得られます。

しかし、私は最初のものだけが欲しいです。

0 投票する
5 に答える
21356 参照

ansible - テンプレート モジュールは複数のテンプレート/ディレクトリを処理できますか?

私は、Ansibleコピー モジュールが大量の「ファイル」を取り、それらを 1 回のヒットでコピーできると信じています。これは、ディレクトリを再帰的にコピーすることで実現できると思います。

Ansibleテンプレート モジュールは、大量の「テンプレート」を取得して、それらを 1 回のヒットでデプロイできますか? テンプレートのフォルダーを展開して再帰的に適用するようなことはありますか?

0 投票する
1 に答える
1258 参照

ansible - glob パターンを持つファイルを単一の値として連結する方法は?

authorized_keysAnsible で特定のユーザーのエントリを作成するかなり単純なプレイブックがあります。

そのディレクトリには約 6 つの公開鍵ファイルがあります。改行で区切られたすべてのキーを使用して、単一のファイルコンテンツをフォーマットしようとしています。

これは、Ansible docs で提案されているものです:

エクスクルーシブ

他のすべての指定されていないキーをauthorized_keysファイルから削除するかどうか。複数のキーを改行で区切ることにより、単一のキー文字列値に複数のキーを指定できます。このオプションはループに対応していないため、 を使用するwith_と、ループの反復ごとに排他的になります。ファイルに複数のキーが必要な場合は、key上記のように単一のバッチでそれらすべてを渡す必要があります。

ファイルグロブを使用して、public_keys/*.pubここで一致するすべてのファイルを単一のキーに連結して、排他性を維持し、必要に応じてキーを適切に削除するにはどうすればよいですか?

0 投票する
1 に答える
536 参照

ansible - 条件に基づいて Ansible テンプレートで連結文字列変数を設定する方法

ホスト間で変更できるテンプレートに文字列を作成する必要があり、次の形式にする必要があります: "cores": "0,1,2,3"

この例で文字列が「0,1,2,3」になっているのは、ホストに 4 つのプロセッサ コアがあるためです。

そのため、複雑すぎると思われる何かに行き詰まり、テンプレートファイルでこの core_count 変数を使用する方法さえわかりません。