puppet サーバ上のファイルをクライアントに配布するには、file server 機能を利用するらしい。というわけで、ドキュメント File Serving Configuration から要点を抜き出してみる。
[module] path /path/to/files allow *.domain.com deny *.wireless.domain.com
こう設定すると、
/path/to/files/sudoers
というファイルを
puppet://server/module/sudoers
で取得できるようになる。
"the Puppet language" が記述される設定ファイルを manifest と呼ぶらしい。要は puppet クライアントをどう管理するか、が記述された設定ファイルですね。(上の /etc/puppet/fileserver.conf は manifest ではない。)
puppet file server 上のファイルを配布するには、以下の様な設定を manifest に記述。
# copy a remote file to /etc/sudoers file { "/etc/sudoers": mode => 440, owner => root, group => root, source => "puppet://server/module/sudoers" }
source がポイント。
詳細は File Serving Configuration を参照。