diff --git a/support/packager/build.sh b/support/packager/build.sh index e889f2978..9206b4d33 100755 --- a/support/packager/build.sh +++ b/support/packager/build.sh @@ -1,48 +1,51 @@ #!/usr/bin/env bash # Build a fresh Mediawiki-Vagrant installer image +# +# Meant to be executed inside the Vagrant virtual machine +# +# Requires: +# - aptitude +# - genisoimage -VAGRANT=/srv/vagrant -CONTENTS=$VAGRANT/support/packager/output/contents +MWV=/vagrant +CONTENTS=${MWV}/support/packager/output/contents # Get latest MediaWiki-Vagrant -cd $VAGRANT +cd ${MWV} git fetch git reset --hard origin/master # Get latest MediaWiki-core -export COMPOSER_CACHE_DIR="$VAGRANT/cache/composer" -/bin/labs-vagrant git-update -cd $VAGRANT/mediawiki +export COMPOSER_CACHE_DIR="${MWV}/cache/composer" +/usr/local/bin/run-git-update +cd ${MWV}/mediawiki git reset --hard origin/master -# Run puppet to fill caches -/bin/labs-vagrant provision - # Freshen git cache sudo apt-get update sudo aptitiude dist-upgrade # Get rid of obsolete apt packages sudo aptitude autoclean # Hack some things into the build -mkdir -p $CONTENTS +mkdir -p ${CONTENTS} # Add a BUILD_INFO file so we can tell what was included in the image -BUILD_INFO=$CONTENTS/BUILD_INFO -echo "Build date: $(date +%Y-%m-%dT%H:%MZ)" >$BUILD_INFO -echo "MediaWiki-Vagrant: $(cd /vagrant; git rev-parse HEAD)" >>$BUILD_INFO -echo "MediaWiki: $(cd /vagrant/mediawiki; git rev-parse HEAD)" >>$BUILD_INFO +BUILD_INFO=${CONTENTS}/BUILD_INFO +echo "Build date: $(date +%Y-%m-%dT%H:%MZ)" >${BUILD_INFO} +echo "MediaWiki-Vagrant: $(cd ${MWV}; git rev-parse HEAD)" >>${BUILD_INFO} +echo "MediaWiki: $(cd ${MWV}/mediawiki; git rev-parse HEAD)" >>${BUILD_INFO} # Populate apt cache -mkdir -p $CONTENTS/cache/apt/partial -rm -rf $CONTENTS/cache/apt/*.deb -(cd /var/cache/apt/archives; tar cf - *.deb) | -(cd $CONTENTS/cache/apt; tar xf -) +mkdir -p ${CONTENTS}/cache/apt/partial +rm -rf ${CONTENTS}/cache/apt/*.deb +(cd /vagrant/cache/apt/archives; tar cf - *.deb) | +(cd ${CONTENTS}/cache/apt; tar xf -) # Generate installer output (directory and iso) -cd $VAGRANT/support/packager +cd ${MWV}/support/packager ruby package.rb # Compute and store a checksum for the image -cd $VAGRANT/support/packager/output +cd ${MWV}/support/packager/output sha1sum mediawiki-vagrant-installer.iso > mediawiki-vagrant-installer.iso.SHA1.txt