Ansible で Debian の exim4 構成を自動化しようとしています。これまでは手動で構成していましたが、通常どおり実行する段階で行き詰まっていますdpkg-reconfigure exim4-config。
これらの手順を簡単に自動化できます。
- conf ファイルを更新します。
/etc/exim4/exim4-config.conf.conf - 走る
dpkg-reconfigure --frontend noninteractive exim4-config
それらは Playbook で正常に実行されますが、問題は、対話型プロンプトに表示されるすべてのオプションがこの conf ファイルに含まれているわけではないということです。たとえば、2 番目の設定System mail nameは、conf ファイルのどこにも指定されていません。また、最後の設定でRoot and postmaster mail recipientある も、最初の構成後に対話型プロンプトに表示されなくなります (なぜですか?)
その後、一部の人々がdebconf-set-selections( heredebconf-utils ) の使用を提案しているのを見て、それを調べてみました -パッケージをインストールしてから実行しました - そこにすべてのオプションを見ましたが、今は使用せずdebconf-get-selectionsに使用する方法があるかどうか疑問に思っていますexim4に関連付けられた値を変更したいだけなので、すべての設定を一度に設定するdebconf-set-selectionsファイルを使用する必要があります。プレイブックを再度実行する必要がある場合に設定される可能性のある他の値 (exim4 に関連付けられていない) を上書きしないようにしています。
の出力をファイルに書き込んでdebconf-get-selectionsから、Ansible のlineinfile/templateモジュールを使用して変更したい値を置き換える以外に、もっと簡単な方法はありますか? この方法は避けたほうがよいでしょう。