私の役割の 1 つには、2 つの異なる変数型があります。1 つはパブリックです (パッケージのバージョンやその他の無害な情報など)。これらは、心配することなく SCM にコミットできます。また、いくつかのプライベート情報 (API キーやその他の秘密情報など) も必要です。ansible-vault
秘密情報を暗号化するために使用しています。私の解決策はvars/main.yaml
、pulic とvars/vault.yml
暗号化された個人情報を保持することでした。
問題に遭遇しましたが、ここでのベスト プラクティスまたは実際の解決策がわかりません。ansible はvars/main.yml
ファイルをロードするだけのようです。当然、公開情報を暗号化したくないので、解決策を探しました。これまでのところ、私が思いついた (IRC で提案された) 唯一の解決策は、group_vars/all/vault.yml
すべての変数を作成し、その前にロール名を付けることです。これは、ansible が の下のすべてを再帰的にロードするように見えるため、機能しますgroup_vars
。これは機能しますが、変数は特定の役割のためのものであり、「グローバルに普遍的に真」ではないため、組織的に正しくないようです。私も入れようとしましたが、うまくいきませんでしたinclude: vars/vault.yml
。vars/main.yml
これを行う適切な方法はありますか?