Puppet内のグループ内のすべてのユーザーの配列を事実または何かとして列挙して、このようなことを実行できるようにする方法はありますか?
$users = enumusers('wheel')
each($users) |$user| {
dostuff{"stuff:$user":
user=>$user
}
}
ユーザーはLDAPを介して管理されますが、PuppetにLDAPユーザーを取得させ、すべてのユーザーに一貫性を持たせることができます。
この種の厄介ですが、すべてのユーザーを列挙し、各ユーザーに対してuser_USERNAME
ファクトを作成する外部ファクトジェネレーターを使用することもできます。次に、これをPuppetマニフェストの条件ステートメントで使用できます。
if $user_lars {
file { '/home/lars':
ensure => directory,
owner => lars,
group => lars,
mode => 0700,
}
}
書く 外部の事実 は簡単です。使い慣れた言語なら何でも使用でき、次のように簡単に使用できます。
#!/bin/sh
getent passwd | cut -f1 -d:
...環境によって異なります。
これを見ると罪悪感を覚えますが、今思いつくのは最高です。