From 6be0434f29242a59118be317d39e885c94a5cf47 Mon Sep 17 00:00:00 2001 From: Benjamin Drung Date: Wed, 8 Oct 2014 15:27:07 +0200 Subject: [PATCH] Drop extract_storage_kernel+modules_MASTERHACK.sh (changes integrated in normal script) --- extract_storage_kernel+modules_MASTERHACK.sh | 145 ------------------- 1 file changed, 145 deletions(-) delete mode 100755 extract_storage_kernel+modules_MASTERHACK.sh diff --git a/extract_storage_kernel+modules_MASTERHACK.sh b/extract_storage_kernel+modules_MASTERHACK.sh deleted file mode 100755 index d6fce33..0000000 --- a/extract_storage_kernel+modules_MASTERHACK.sh +++ /dev/null @@ -1,145 +0,0 @@ -#!/bin/bash - -# copyright 2012 Holger Levsen -# GPL2 licenced - -# Quick and dirty hack for master branch on 2014-09-12 by bdrung - -set -e -set -x -export - -# -# Define default settings -# -export DIST=squeeze -export PB_SUITE=$DISTRIBUTION -export TARGET_BASE=/srv/storage-kernels - -# get the last build number of the given target, -# parsing tarball's file name under /srv/storage-kernels/. -function get_last_target_build_no() { - TARGET_NAME=$1 - - if [ -n "$TARGET_NAME" ]; then - retval=$(find $TARGET_BASE/$TARGET_NAME -maxdepth 1 -type f \ - -name 'linux-storage*tar.xz' | grep -v "^.$" \ - | sed -e "s|$TARGET_BASE/$TARGET_NAME||g" \ - | sed -e "s|.*\/linux-storage_[0-9a-zA-Z\.]*\.\([^\.]*\).tar.xz$|\1|g" \ - | sort -n | tail -n 1) - [ -z "$retval" ] && retval="0" - else - retval="0" - fi - - echo $retval -} - -# overwrite PB_SUITE with branch name -export PB_SUITE=$(echo $GIT_BRANCH_NAME | tr '/' '-' | sed -e "s/^\(feature\|bugfix\|poc\)-/dev-\1-/g") - -case $DISTRIBUTION in - production-proposed-updates) - export TARGET_NAME=master - FEATURE_APTCMD=" - echo \"deb http://alexandria.pb.local/profitbricks-repository $DISTRIBUTION main contrib non-free\" \ - > /etc/apt/sources.list.d/profitbricks-linux-image-storage-$TARGET_NAME.list - " - ;; - pre-staging) - export TARGET_NAME=develop - FEATURE_APTCMD=" - echo \"deb http://alexandria.pb.local/profitbricks-repository $DISTRIBUTION main contrib non-free\" \ - > /etc/apt/sources.list.d/profitbricks-linux-image-storage-$TARGET_NAME.list - " - ;; - experimental|dev_feature*) - [ -n "$PB_SUITE" ] && export TARGET_NAME=$PB_SUITE || export TARGET_NAME="experimental" - LAST_DEVELOP_BUILD_NO=$(get_last_target_build_no develop) - BUILD_NUMBER="$LAST_DEVELOP_BUILD_NO.$(printf %03d $BUILD_NUMBER)" - - # kernel images must be installed from a branch-specific distribution - # under dev-repository. However, ANDBD modules must be installed from - # the pre-staging distribution, because ANDBD modules must have not - # been built into packages under a particular distribution. - FEATURE_APTCMD=" - echo \"deb http://alexandria.pb.local/dev-repository $TARGET_NAME main contrib non-free\" \ - > /etc/apt/sources.list.d/profitbricks-linux-image-storage-$TARGET_NAME.list ; \ - echo \"deb http://alexandria.pb.local/profitbricks-repository pre-staging main contrib non-free\" \ - > /etc/apt/sources.list.d/profitbricks-linux-image-storage-develop.list - " - FEATURE_VERSCMD=" - export FEATURE_VERSION=\`apt-cache showpkg profitbricks-linux-image-storage -a \ - | grep $TARGET_NAME | grep \) | sed -e \"s|\([^\.]*\)\ .*$|\1|g\"\` - " - ;; - *) - echo "DISTRIBUTION must be 'production-proposed-updates', 'pre-staging', 'experimental'," - echo "or 'dev_feature*'" - echo "exiting." - figlet "FAIL" - exit 1 - ;; -esac - -export TARGET_DIR=$TARGET_BASE/$TARGET_NAME/$BUILD_NUMBER -export JOB_HOME=$JENKINS_HOME/jobs/$JOB_NAME/builds - -SCRIPTSDIR=$(dirname $0) -BUILD_SCRIPT=$(mktemp -t ${0##*/}.XXXXXXXXXX) -cat > $BUILD_SCRIPT <<-EOF -#/bin/bash -set -e -set -x -apt-get update -# grub is needed in the postinst... -apt-get install -y grub2 -$FEATURE_VERSCMD -[ -n "###FEATURE_VERSION" ] && export FEATURE_VERSION="=###FEATURE_VERSION" -apt-get -t $DISTRIBUTION -y install profitbricks-linux-image-storage###FEATURE_VERSION || true -apt-get -y install profitbricks-andbd-modules-storage || true -mkdir -p $TARGET_DIR -export KERNEL_VERSION=###(ls /boot/vmlinu* | cut -d "-" -f2-) -export GENTOO_KERNEL_VERSION="###(ls /boot/vmlinu* | cut -d "-" -f2).$BUILD_NUMBER" -cp -v /boot/vmlinu* $TARGET_DIR/ -cp -v /boot/config* $TARGET_DIR/ -cd /lib/modules/###{KERNEL_VERSION} -/bin/tar -cJvf $TARGET_DIR/modules-###{KERNEL_VERSION}.tar.xz . -echo "Job : $JOB_NAME" > $TARGET_DIR/sources.txt -echo "Build-Nr.: $BUILD_NUMBER" >> $TARGET_DIR/sources.txt -echo "URL : http://jenkins/job/$JOB_NAME/$BUILD_NUMBER/" >> $TARGET_DIR/sources.txt -echo "Kernel: : ###KERNEL_VERSION" >> $TARGET_DIR/sources.txt -echo >> $TARGET_DIR/sources.txt -apt-cache show profitbricks-linux-image-storage >> $TARGET_DIR/sources.txt -apt-cache show profitbricks-andbd-modules-storage >> $TARGET_DIR/sources.txt -/bin/tar -cJvf $TARGET_BASE/$TARGET_NAME/linux-storage_###{GENTOO_KERNEL_VERSION}.tar.xz -C $TARGET_DIR . -EOF -chmod +x $BUILD_SCRIPT -# turn the shell call back into a shell call -sed -i -s "s|###|$|g" $BUILD_SCRIPT - -# -# run $BUILD_SCRIPT in chroot environment -# -sudo pbuilder --execute --override-config --bindmounts $TARGET_BASE -- $BUILD_SCRIPT -rm $BUILD_SCRIPT - -set +x -echo "Doing garbage collection now" -# -# cleanup $TARGET_DIR, keep as many images as jenkins keeps build logs -# -cd $TARGET_BASE/$TARGET_NAME -# loop through all results of current target -for i in $(find . -maxdepth 1 -type d|sort) ; do - # check if the jenkins build log still exists (and $i != ".") - # and if not, delete the old target as well - if [ ! -L $JOB_HOME/$i ] && [ "${i}" != "." ] ; then - echo "Deleting $TARGET_BASE/$TARGET_NAME/$i" - sudo rm -r ./$i - fi -done - -figlet "OK" - - -- 2.39.5