トップ «前の日記(2013-08-08) 最新 次の日記(2015-05-18)» 編集

人徳ゼロ日記


2013-08-21

_ Puppetのパラメタ名、変数名など命名規則案が参考になる

Puppetで再利用性の高いモジュールを作ろうとすると、 多数のパラメタを準備して柔軟性を確保することになります。 そうすると、多数のパラメタ名が必要になってくるのですが、 名前の決め方がバラバラだと、他人が見たときに何のパラメタなのか 分かりづらくなります。

Puppet Userメーリングリストで、命名規則の案が投稿されていました。 Modules Naming Standards

数多くのPuppet Moduleを公開していて、Puppet Userメーリングリストでも活躍している Alessandro Franceschi氏(Lab42, Example42)が作成しています。

いざPuppetのModuleを作成するとなると、 確かにパラメタ名をどうつけるか迷います。 クラス名は、対象のソフト名や設定ファイル名から決まってくるのでそれほど迷いませんが、 パラメタ名は自由度が高いので迷います。特に、他人に使ってもらうことを考えるとなおさらです。

個人的に迷ったのは、各種ディレクトリ名、ファイル名を示す パラメタ名をどうするか、でした。例えば、命名規則の中で気になるのはこれです。

  • file_template テンプレートのファイル名(ファイル名のみ?フルパス?))
  • file 設置先のファイル名(ファイル名のみ?フルパス?)

まだこの命名規則では曖昧で、 フルパスか、ファイル名だけか、ディレクトリ名フルパスか、単体のディレクトリ名か、等が 迷うことなく同じ名前で決められると、誤解がなくとてもよいです。 具体的には、/etc/apache2/httpd.conf、httpd.conf、/etc/apache2、apache2の 区別がつくパラメタ名が命名規約でみんなで共有できているとうれしい。