[Vagrant] 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