ksaitoの日記

日々試したことの覚え書き

puppetで必要なパッケージをインストールする

Debian/Ubuntuを初期設定するときに毎回インストールするパッケージがいくつかあります。
こうしたパッケージをpuppetで自動的にインストールするように設定してみました。
パッケージがインストールされていないと勝手にインストールされます。

class debianBase {
  package { "popularity-contest":
    name => "popularity-contest",
    ensure => installed
  }
  package { "screen":
    name => "screen",
    ensure => installed
  }
  package { "emacs":
    name => "emacs",
    ensure => installed
  }
}

node 'ubuntu' {
  include debianBase
}

packageのensureで使えるのは、下記のマニュアルによるとabsent,present(or installed), latestのみっつがあるようです。
http://puppet.reductivelabs.com/reference/typedocs.html#package
absentは、インストールされていたらアンインストールするパッケージを指定します。
telnetは、セキュアじゃないから禁止、sshを使おうという場合は、telnetをabsentというような使い方でしょうか。
installedは、必須でインストールするパッケージ、latestは、多分、最新があればアップグレードではないかと...(試していませんが)
以下は、telnetをabsentしたときの実行ログです。

続きを読む