X-Git-Url: http://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=scripts%2Frelease_helper.sh;h=40c532d11a58084cc2bb941a18d3df9f89f8340e;hp=ce6ba6dda65e9988a9c9688b920f38be54a41802;hb=4cd65718be7890b8dec7939c0af769da9bc8e320;hpb=32627d5ab6318d09b2e1da1b0b26e06fc32f4289 diff --git a/scripts/release_helper.sh b/scripts/release_helper.sh index ce6ba6d..40c532d 100755 --- a/scripts/release_helper.sh +++ b/scripts/release_helper.sh @@ -1,6 +1,6 @@ #!/bin/bash # Filename: scripts/release_helper.sh -# Purpose: helper script to build grml-live Debian packages (WFM style though) +# Purpose: helper script to build grml-live Debian packages # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. @@ -9,11 +9,18 @@ set -e set -u +export LC_ALL=C +export LANG=C + debian_version='' script_version='' +autobuild_branch="autobuild_$(date +%Y%m%d_%H%M%S)" + if [ -n "${AUTOBUILD:-}" ] ; then - git checkout autobuild # has to exist + git checkout master + git pull + git checkout -b "$autobuild_branch" else if git status --porcelain | grep -q '^?? '; then printf "Uncommited changes in current working tree. Please commit/clean up.\n" @@ -21,17 +28,34 @@ else fi fi +printf "Building debian/changelog: " if [ -n "${AUTOBUILD:-}" ] ; then - since=$(git show -s --pretty="tformat:%h") + # since=$(git show -s --pretty="tformat:%h") + eval $(grep '^GRML_LIVE_VERSION=' grml-live) + DATE=$(date -R) + UNIXTIME=$(date +%s) + + cat > debian/changelog << EOF +grml-live (${GRML_LIVE_VERSION}+autobuild${UNIXTIME}) UNRELEASED; urgency=low + + * Automatically built package based on the state of + git repository at http://git.grml.org/?p=grml-live.git + on $DATE -> + + $(git log --format=oneline -1) + + -- grml-live Auto Build $DATE + +EOF + git add debian/changelog + git commit -m "Releasing ${GRML_LIVE_VERSION}-~autobuild${UNIXTIME} (auto build)" else since=v$(dpkg-parsechangelog | awk '/^Version:/ {print $2}') + git-dch --ignore-branch --since=$since \ + --id-length=7 --meta --multimaint-merge -S + printf "OK\n" fi -printf "Building debian/changelog: " -git-dch --ignore-branch --since=$since \ - --id-length=7 --meta --multimaint-merge -S -printf "OK\n" - if [ -z "${AUTOBUILD:-}" ] ; then if ! $EDITOR debian/changelog ; then printf "Exiting as editing debian/changelog returned an error." >&2 @@ -71,6 +95,7 @@ fi printf "Building debian packages:\n" if [ -n "${AUTOBUILD:-}" ] ; then [ -d ../grml-live.build-area ] || mkdir ../grml-live.build-area + rm -rf ../grml-live.build-area/grml-live* # otherwise we're keeping files forever... git-buildpackage --git-ignore-branch --git-ignore-new --git-export-dir=../grml-live.build-area -us -uc else git-buildpackage --git-ignore-branch --git-ignore-new $* @@ -81,10 +106,18 @@ if [ -n "${AUTOBUILD:-}" ] ; then ( cd ../grml-live.build-area dpkg-scanpackages . /dev/null > Packages + dpkg-scanpackages . /dev/null | gzip > Packages.gz ) - apt-get update + git checkout master + git branch -D ${autobuild_branch} || true + + env APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none sudo apt-get update + PACKAGES=$(dpkg --list grml-live\* | awk '/^ii/ {print $2}') - apt-get -y --allow-unauthenticated install $PACKAGES + env APT_LISTCHANGES_FRONTEND=none APT_LISTBUGS_FRONTEND=none sudo apt-get -y \ + -o DPkg::Options::=--force-confmiss \ + -o DPkg::Options::=--force-confnew \ + --allow-unauthenticated install $PACKAGES fi ## END OF FILE #################################################################