veewee で CentOS のベースBOX作成に失敗する件

veewee で CentOS 6.0 のベースBOX を作成しようとすると "vagrant basebox validate" に失敗する。OS は起動するが、gem と puppet と chef がインストールされていない。どうも puppet をパッケージでインストールしようとして失敗しているようだ。puppet を gem でインストールするように postinstall.sh などを修正すれば良さげ。

--- postinstall.sh.orig	2011-09-06 22:44:02.000000000 +0900
+++ postinstall.sh	2011-09-06 22:45:01.000000000 +0900
@@ -2,14 +2,6 @@
 
 date > /etc/vagrant_box_build_time
 
-cat > /etc/yum.repos.d/puppetlabs.repo << EOM
-[puppetlabs]
-name=puppetlabs
-baseurl=http://stahnma.fedorapeople.org/puppetlabs/6/\$basearch
-enabled=1
-gpgcheck=0
-EOM
-
 cat > /etc/yum.repos.d/epel.repo << EOM
 [epel]
 name=epel
@@ -18,12 +10,13 @@
 gpgcheck=0
 EOM
 
-yum -y install puppet facter ruby-devel rubygems
+yum -y install ruby-devel rubygems
 yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
 yum -y clean all
-rm /etc/yum.repos.d/{puppetlabs,epel}.repo
+rm /etc/yum.repos.d/epel.repo
 
 gem install --no-ri --no-rdoc chef
+gem install --no-ri --no-rdoc puppet
 
 # Installing vagrant keys
 mkdir /home/vagrant/.ssh

これで、"vagrant basebox validate" で確認してみたらうまくいった。
ベースBOX作成までの一連の流れを示す。

 $ vagrant basebox define centos6 CentOS-6.0-x86_64
 (definitions/centos6/postinstall.sh を修正)
 $ vagrant basebox build centos6
 $ vagrant basebox validate centos6
 $ vagrant basebox export centos6