私は次のPuppetの設定を試しました。ルートパスワードを無効にする:
class users {
user { 'root':
password => '*',
}
}
ただし、申請後は警告やエラーメッセージは表示されません。su -
以前のパスワードを引き続き使用できます。その理由は、デバッグ出力を調べた後に明確になりました。
# puppet apply --debug --modulepath modules manifests/host.pp
[...]
Debug: Failed to load library 'shadow' for feature 'libshadow'
[...]
ワット。私はこの問題を解決する方法を知っていますが(sudo pacman --sync --needed --refresh ruby-shadow
)、それはポイントではありません。自分の設定を適用できなかった場合にPuppetがクラッシュして焼くようにするにはどうすればよいですか?、少なくともゼロ以外の終了コードを提供することによって?--detailed-exitcodes
役に立ちません。
回避策:以下は実行時にのみ機能します。二重- 最初の実行時にuser
ディレクトリコンパイル時にそのエントリを無視します。
class users {
package { 'ruby-shadow':
ensure => present,
}
user { 'root':
password => '*',
require => Package['ruby-shadow'],
}
}
答え1
を使用すると、利用puppet apply --help
可能なすべてのオプションを表示できます。あなたの興味は次のとおりです。
* --detailed-exitcodes:
Provide transaction information via exit codes. If this is enabled, an exit
code of '2' means there were changes, an exit code of '4' means there were
failures during the transaction, and an exit code of '6' means there were both
changes and failures.
あなたの具体的な場合:
# puppet apply --detailed-exitcodes --debug --modulepath modules manifests/host.pp