web-dev-qa-db-ja.com

SaltStackを使用してファイルに単一行を追加する

環境全体のすべての/ etc/sudoersファイルに次の行を追加したいと思います。

# Administrators LDAP Group
%Administrators   ALL=(ALL)       ALL

ただし、各サーバーには異なる/ etc/sudoersファイルがあり、それらすべてを1つの場所から調達することは現実的ではありません。

Saltには、ファイル全体を管理するのではなく、ファイルに単一の行(または行のグループ)が存在することを確認する方法がありますか?

5
Soviero

あなたはおそらく file.append を探しています。

File.appendはファイル全体を検索し、テキストが見つからない場合は、ファイルの末尾に追加します。/etc/sudoersファイル内の一般的なテキスト構造を知らないので、テキストを置き換えるためにfile.sedのようなものを使用できないと想定しています。

サンプルコード:

/etc/sudoers:
  file.append:
    - text: 
      - "# Administrators LDAP Group"
      - "%Administrators   ALL=(ALL)       ALL"

注:使用する前にサンプルコードをテストする必要があります。

10
Jason Zhu