diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2011-12-20 21:26:26 +0100 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2011-12-20 21:26:26 +0100 |
commit | baf582456e485e2e4272c0b888f9ccdb10cde499 (patch) | |
tree | 029cf372e26399b49e9b922539090528fb403d61 /bin | |
parent | 2533ac9afb98f8e5b236fec73f1b985ab94f8ff6 (diff) | |
download | buildscripts-baf582456e485e2e4272c0b888f9ccdb10cde499.tar.gz buildscripts-baf582456e485e2e4272c0b888f9ccdb10cde499.tar.bz2 buildscripts-baf582456e485e2e4272c0b888f9ccdb10cde499.zip |
reworked buildscripts completely, so that they can be used for several projects
Diffstat (limited to 'bin')
l--------- | bin/build+upload-all-packages | 1 | ||||
l--------- | bin/build+upload-package | 1 | ||||
-rwxr-xr-x | bin/build-all-packages | 59 | ||||
-rwxr-xr-x | bin/build-package (renamed from bin/nwt-build-package) | 166 | ||||
-rwxr-xr-x | bin/gitcreate | 25 | ||||
-rwxr-xr-x | bin/gitrevno (renamed from bin/nwt-gitrevno) | 0 | ||||
l--------- | bin/nwt-build+upload-all-packages | 1 | ||||
l--------- | bin/nwt-build+upload-package | 1 | ||||
-rwxr-xr-x | bin/nwt-build-all-packages | 60 | ||||
-rwxr-xr-x | bin/nwt-gitcreate | 17 | ||||
l--------- | bin/nwt-upload-all-packages | 1 | ||||
l--------- | bin/nwt-upload-package | 1 | ||||
-rwxr-xr-x | bin/pkgneedsbuild (renamed from bin/nwt-pkgneedsbuild) | 0 | ||||
-rwxr-xr-x | bin/tarballrelease (renamed from bin/nwt-tarballrelease) | 0 | ||||
-rwxr-xr-x | bin/updatebuildmain (renamed from bin/nwt-updatebuildmain) | 0 | ||||
l--------- | bin/upload-all-packages | 1 | ||||
l--------- | bin/upload-package | 1 |
17 files changed, 176 insertions, 159 deletions
diff --git a/bin/build+upload-all-packages b/bin/build+upload-all-packages new file mode 120000 index 0000000..b8c12b0 --- /dev/null +++ b/bin/build+upload-all-packages @@ -0,0 +1 @@ +build-all-packages
\ No newline at end of file diff --git a/bin/build+upload-package b/bin/build+upload-package new file mode 120000 index 0000000..2b48fdc --- /dev/null +++ b/bin/build+upload-package @@ -0,0 +1 @@ +build-package
\ No newline at end of file diff --git a/bin/build-all-packages b/bin/build-all-packages new file mode 100755 index 0000000..3757c4b --- /dev/null +++ b/bin/build-all-packages @@ -0,0 +1,59 @@ +#!/bin/bash + +# Copyright (C) 2011 by Mike Gabriel <mike.gabriel@das-netzwerkteam.de> +# +# This is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the +# Free Software Foundation, Inc., +# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +COMPONENT_MAIN="main" +COMPONENT_NIGHTLY="nightly" + +LIB_PACKAGES_NIGHTLY= +LIB_PACKAGES_MAIN= +APP_PACKAGES_NIGHTLY= +APP_PACKAGES_MAIN= + +PREFIX=$(echo $0 | cut -d"-" -f1) +test -f ~/.buildscripts/$PREFIX.conf && . ~/.buildscripts/$PREFIX.conf || { echo "$0 has no valid context prefix..."; exit -1; } + +test -z $1 && { echo "usage: $(basename $0) [{$COMPONENT_MAIN,$COMPONENT_NIGHTLY}]"; exit -1; } + +COMPONENT=${1:-""} + +# build the newest code... (nightly-builds) +[ "x$COMPONENT" = "x$COMPONENT_NIGHTLY" ] || [ -z $COMPONENT ] && { + echo -e $LIB_PACKAGES_NIGHTLY $APP_PACKAGES_NIGHTLY | while read pkg comp checkout; do + if [ "x$(basename $0)" = "x$PREFIX-build-all-packages" ]; then + $PREFIX-build-package $pkg $comp $checkout + elif [ "x$(basename $0)" = "x$PREFIX-upload-all-packages" ]; then + $PREFIX-upload-package $pkg $comp $checkout + elif [ "x$(basename $0)" = "x$PREFIX-build+upload-all-packages" ]; then + $PREFIX-build-package $pkg $comp $checkout && $PREFIX-upload-package $pkg $comp $checkout + fi + done +} + +# build all packages tagged as build-main +[ "x$COMPONENT" = "x$COMPONENT_MAIN" ] || [ -z $COMPONENT ] && { + echo -e $LIB_PACKAGES_MAIN $APP_PACKAGES_MAIN | while read pkg comp checkout; do + if [ "x$(basename $0)" = "x$PREFIX-build-all-packages" ]; then + $PREFIX-build-package $pkg $comp $checkout + elif [ "x$(basename $0)" = "x$PREFIX-upload-all-packages" ]; then + $PREFIX-upload-package $pkg $comp $checkout + elif [ "x$(basename $0)" = "x$PREFIX-build+upload-all-packages" ]; then + $PREFIX-build-package $pkg $comp $checkout && $PREFIX-upload-package $pkg $comp $checkout + fi + done +} diff --git a/bin/nwt-build-package b/bin/build-package index 7531b15..f9c1648 100755 --- a/bin/nwt-build-package +++ b/bin/build-package @@ -17,15 +17,28 @@ # Free Software Foundation, Inc., # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. -test -z $1 && { echo "usage: <nwt-git-project> {main,main/<codename>,nightly,nightly/<codename>} [<git-checkout>]"; exit -1; } +GIT_USER="gituser" +GIT_HOSTNAME="git.mydomain.org" -set -ex +DEBEMAIL="firstname.lastname@mydomain.org" +DEBFULLNAME="Firstname Lastname" +GPG_KEY= +DISTS_SUPPORTED="debian ubuntu" +BUILDS_FOR="\ +debian: squeeze wheezy sid\n\ +ubuntu: lucid precise\n\ +" + +COMPONENT_MAIN="main" +COMPONENT_NIGHTLY="nightly" +REPOS_SERVER="packages.mydomain.org" + +test -z $1 && { echo "usage: $(basename $0) [<subpath>/]<git-project> {main,main/<codename>,nightly,nightly/<codename>} [<git-checkout>]"; exit -1; } + +PREFIX=$(echo $0 | cut -d"-" -f1) +test -f ~/.buildscripts/$PREFIX.conf && . ~/.buildscripts/$PREFIX.conf || { echo "$0 has no valid context prefix..."; exit -1; } -export GIT_SERVER="code.das-netzwerkteam.de" -export DEBEMAIL=debian@das-netzwerkteam.de -export DEBFULLNAME="NWT Packages" -export GPG_KEY="4DC41CF116990FF8" -export DIST_SUPPORTED="debian ubuntu" +set -ex set_vars() { USE_SUDO="yes" @@ -35,29 +48,30 @@ set_vars() { chmod 2770 "$TEMP_BASE" # first argv is the name of the Git project - PROJECT=$(basename $1) - PROJECT_PATH=$1 + PROJECT_PATH="$1" + PROJECT_PATH=${PROJECT_PATH/%.git/} + PROJECT="$(basename $PROJECT_PATH)" # grab repository component area from command line (2nd argv) or guess it - ARGV2_COMPONENT=$(echo "$2/" | cut -d"/" -f1) - ARGV2_CODENAME=$(echo "$2/" | cut -d"/" -f2) - COMPONENT=${ARGV2_COMPONENT:-${COMPONENT:-nightly}} - CODENAMES=${ARGV2_CODENAME:-${CODENAMES}} + ARGV2_COMPONENT="$(echo "$2/" | cut -d"/" -f1)" + ARGV2_CODENAME="$(echo "$2/" | cut -d"/" -f2)" + COMPONENT="${ARGV2_COMPONENT:-${COMPONENT:-$COMPONENT_NIGHTLY}}" + CODENAMES="${ARGV2_CODENAME:-${CODENAMES}}" [ -n "$ARGV2_CODENAME" ] && FORCE_BUILD=0 || FORCE_BUILD=-1 - if [ "x$COMPONENT" = "xmain" ]; then - CHECKOUT=${3:-build-main} - elif [ "x$COMPONENT" = "xnightly" ]; then - CHECKOUT=${3:-master} + if [ "x$COMPONENT" = "x$COMPONENT_MAIN" ]; then + CHECKOUT="${3:-build-main}" + elif [ "x$COMPONENT" = "x$COMPONENT_NIGHTLY" ]; then + CHECKOUT="${3:-master}" DATE="~${DATE:-$(date +%Y%m%d)}" else - echo "error: no such package component area for NWT packages. Aborting..." + echo "error: no such package component area for this Git project. Aborting..." exit -1 fi # the DATE might be given as ,,today'' from the command line [ "x$DATE" = "xtoday" ] && DATE="~$(date +%Y%m%d)" # setting paths - PROJECT_DIR=$HOME/build/$COMPONENT/$PROJECT + PROJECT_DIR="$HOME/build/$COMPONENT/$PROJECT" PKGDIST="$HOME/pkg-dist/$COMPONENT/$PROJECT" # build for other architectures than amd64/i386 @@ -66,8 +80,8 @@ set_vars() { # creating paths mkdir -p "$TEMP_BASE" - mkdir -p $PROJECT_DIR - mkdir -p $PKGDIST + mkdir -p "$PROJECT_DIR" + mkdir -p "$PKGDIST" return 0 } @@ -75,30 +89,30 @@ set_vars() { clear_pkgdist() { # pkgdist directory cleanup - cat $PROJECT_DIR/BUILDS_FOR | egrep -v '(^$|^#.*$)' | while read line; do - l_DIST=$(echo $line | cut -d":" -f1 | tr [A-Z] [a-z]) - CODENAMES=${CODENAMES:-$(echo $line | cut -d":" -f2- | tr [A-Z] [a#-z])} - echo "$DIST_SUPPORTED" | grep $l_DIST >/dev/null && { + cat "$PROJECT_DIR/BUILDS_FOR" | egrep -v '(^$|^#.*$)' | while read line; do + l_DIST="$(echo $line | cut -d":" -f1 | tr [A-Z] [a-z])" + CODENAMES="${CODENAMES:-$(echo $line | cut -d":" -f2- | tr [A-Z] [a#-z])}" + echo "$DISTS_SUPPORTED" | grep $l_DIST >/dev/null && { for l_CODENAME in $CODENAMES; do if [ "x$EXTRA_ARCHS_ONLY" = "x" ]; then for l_ARCH in amd64 i386; do - mkdir -p $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.changes - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.upload - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.build - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.dsc - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.tar.gz - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/*.deb + mkdir -p "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.changes" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.upload" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.build" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.dsc" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/$PROJECT_*.tar.gz" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/*.deb" done fi for l_EXTRA_ARCH in $EXTRA_ARCHS; do - mkdir -p $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.changes - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.upload - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.build - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.dsc - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.tar.gz - rm -f $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/*.deb + mkdir -p "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.changes" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.upload" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.build" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.dsc" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/$PROJECT_*.tar.gz" + rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH/*.deb" done done } @@ -108,46 +122,43 @@ clear_pkgdist() { prepare_workspace() { # in any case remove the BUILDS_FOR file - rm -f $PROJECT_DIR/BUILDS_FOR + rm -f "$PROJECT_DIR/BUILDS_FOR" # make sure our local working copy is up to date... - if [ -d $PROJECT_DIR/.git ]; then - cd $PROJECT_DIR && git reset --hard + if [ -d "$PROJECT_DIR/.git" ]; then + cd "$PROJECT_DIR" && git reset --hard git checkout --force $CHECKOUT || git checkout --force -b $CHECKOUT git pull origin $CHECKOUT # and again, get the $CHECKOUT refspec in pure state git reset --hard else - cd $(dirname $PROJECT_DIR) - git clone git://$GIT_SERVER/$PROJECT_PATH.git - cd $PROJECT + cd "$(dirname $PROJECT_DIR)" + git clone git://$GIT_HOSTNAME/$PROJECT_PATH.git + cd "$PROJECT" git checkout --force $CHECKOUT || git checkout --force -b $CHECKOUT; fi - cd $PROJECT_DIR + cd "$PROJECT_DIR" # by default we build for all current debian versions - test -f BUILDS_FOR || cat > BUILDS_FOR <<EOF -debian: lenny squeeze wheezy sid -ubuntu: lucid precise -EOF + test -f BUILDS_FOR || echo -e "$BUILDS_FOR" > BUILDS_FOR return 0 } build_packages() { # use pbuilder for building all variants of this package - cat $PROJECT_DIR/BUILDS_FOR | egrep -v '(^$|^#.*$)' | while read line; do - l_DIST=$(echo $line | cut -d":" -f1 | tr [A-Z] [a-z]) - CODENAMES=${CODENAMES:-$(echo $line | cut -d":" -f2- | tr [A-Z] [a-z])} - echo "$DIST_SUPPORTED" | grep $l_DIST >/dev/null && { + cat "$PROJECT_DIR/BUILDS_FOR" | egrep -v '(^$|^#.*$)' | while read line; do + l_DIST="$(echo $line | cut -d":" -f1 | tr [A-Z] [a-z])" + CODENAMES="${CODENAMES:-$(echo $line | cut -d":" -f2- | tr [A-Z] [a-z])}" + echo "$DISTS_SUPPORTED" | grep $l_DIST >/dev/null && { for l_CODENAME in $CODENAMES; do TEMP_DIR="$(mktemp -d --tmpdir=$TEMP_BASE)" - mkdir -p $TEMP_DIR/$PROJECT + mkdir -p "$TEMP_DIR/$PROJECT" chmod 2770 "$TEMP_DIR" -Rf - git clone --local $PROJECT_DIR $TEMP_DIR/$PROJECT/ - cd $TEMP_DIR/$PROJECT + git clone --local "$PROJECT_DIR" "$TEMP_DIR/$PROJECT/" + cd "$TEMP_DIR/$PROJECT" git checkout $CHECKOUT || git checkout master - GITREV=$(nwt-gitrevno) + GITREV=$(gitrevno) # we always build native packages for our repos test -f debian/source/format && cat debian/source/format | egrep '^3.0.*\(quilt\)$' >/dev/null && { echo "3.0 (native)" > debian/source/format @@ -159,29 +170,28 @@ build_packages() { [ "x$l_CODENAME" = "xlenny" ] && VERSION=oldstable # modify the section for non-main package builds - [ "x$COMPONENT" = "xmain" ] || { + [ "x$COMPONENT" != "xmain" ] || { mv debian/control debian/control.tmp cat debian/control.tmp | sed "s#Section:[\ ]*\(.*\)#Section: $COMPONENT/\1#g" > debian/control } # modify changelog for this build - dch --distribution $VERSION --force-distribution -l "+$l_CODENAME~$COMPONENT$DATE~$GITREV~build" "Auto-built $l_DIST $l_CODENAME package for packages.das-netzwerkteam.de repository." + dch --distribution $VERSION --force-distribution -l "+$l_CODENAME~$COMPONENT$DATE~$GITREV~build" "Auto-built $l_DIST $l_CODENAME package for $REPOS_SERVER repository." mkdir -p $PKGDIST/$l_DIST/$l_CODENAME/{amd64,i386} - #OTHERMIRROR="deb http://packages.das-netzwerkteam.de/debian $l_CODENAME $COMPONENT" - OTHERMIRROR="" + OTHERMIRROR="deb http://$REPOS_SERVER/$l_DIST $l_CODENAME $COMPONENT" [ "x$USE_SUDO" != "xyes" ] && { [ "x$EXTRA_ARCHS_ONLY" = "x" ] && { cat debian/control | egrep 'Architecture.*(all|any|amd64)' >/dev/null && { - DIST=$l_DIST CODENAME=$l_CODENAME ARCH=amd64 $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult $PKGDIST/$l_DIST/$l_CODENAME/amd64 + DIST=$l_DIST CODENAME=$l_CODENAME ARCH=amd64 $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult "$PKGDIST/$l_DIST/$l_CODENAME/amd64" } cat debian/control | egrep 'Architecture.*(any|i386)' >/dev/null && { - DIST=$l_DIST CODENAME=$l_CODENAME ARCH=i386 $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult $PKGDIST/$l_DIST/$l_CODENAME/i386 -- --binary-arch + DIST=$l_DIST CODENAME=$l_CODENAME ARCH=i386 $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult "$PKGDIST/$l_DIST/$l_CODENAME/i386" -- --binary-arch } } for extra_arch in $EXTRA_ARCHS; do - mkdir -p $PKGDIST/$l_DIST/$l_CODENAME/$extra_arch + mkdir -p "$PKGDIST/$l_DIST/$l_CODENAME/$extra_arch" cat debian/control | egrep "Architecture.*(any|$extra_arch)" >/dev/null && { - DIST=$l_DIST CODENAME=$l_CODENAME ARCH=$extra_arch $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult $PKGDIST/$l_DIST/$l_CODENAME/$extra_arch -- --binary-arch + DIST=$l_DIST CODENAME=$l_CODENAME ARCH=$extra_arch $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult "$PKGDIST/$l_DIST/$l_CODENAME/$extra_arch" -- --binary-arch } done } @@ -195,14 +205,14 @@ build_packages() { } } for extra_arch in $EXTRA_ARCHS; do - mkdir -p $PKGDIST/$l_DIST/$l_CODENAME/$extra_arch + mkdir -p "$PKGDIST/$l_DIST/$l_CODENAME/$extra_arch" cat debian/control | egrep "Architecture.*(any|$extra_arch)" >/dev/null && { - sudo DIST=$l_DIST CODENAME=$l_CODENAME ARCH=$extra_arch OTHERMIRROR="$OTHERMIRROR" $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult $PKGDIST/$l_DIST/$l_CODENAME/$extra_arch -- --binary-arch + sudo DIST=$l_DIST CODENAME=$l_CODENAME ARCH=$extra_arch OTHERMIRROR="$OTHERMIRROR" $PDEBUILD --auto-debsign --debsign-k $GPG_KEY --buildresult "$PKGDIST/$l_DIST/$l_CODENAME/$extra_arch" -- --binary-arch } done } cd - - rm -Rf $TEMP_DIR + rm -Rf "$TEMP_DIR" done echo } @@ -214,21 +224,21 @@ build_packages() { upload_packages() { # dupload the new packages to the reprepro repository - cd $PKGDIST - cat $PROJECT_DIR/BUILDS_FOR | egrep -v '(^$|^#.*$)' | while read line; do + cd "$PKGDIST" + cat "$PROJECT_DIR/BUILDS_FOR" | egrep -v '(^$|^#.*$)' | while read line; do l_DIST=$(echo $line | cut -d":" -f1 | tr [A-Z] [a-z]) CODENAMES=${CODENAMES:-$(echo $line | cut -d":" -f2- | tr [A-Z] [a-z])} for l_CODENAME in $CODENAMES; do if [ "x$EXTRA_ARCHS_ONLY" = "x" ]; then for l_ARCH in amd64 i386; do - cd $PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH - ls $PROJECT_*.changes &>/dev/null && dupload --to nwt-$l_DIST-$l_CODENAME $PROJECT_*.changes + cd "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH" + ls "$PROJECT_*.changes" &>/dev/null && dupload --to $PREFIX-$l_DIST-$l_CODENAME "$PROJECT_*.changes" cd - done fi for l_EXTRA_ARCH in $EXTRA_ARCHS; do - cd $PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH - ls $PROJECT_*.changes &>/dev/null && dupload --to nwt-$l_DIST-$l_CODENAME $PROJECT_*.changes + cd "$PKGDIST/$l_DIST/$l_CODENAME/$l_EXTRA_ARCH" + ls "$PROJECT_*.changes" &>/dev/null && dupload --to $PREFIX-$l_DIST-$l_CODENAME "$PROJECT_*.changes" cd - done done @@ -239,15 +249,15 @@ upload_packages() { ### MAIN ### set_vars $@ && { - if [ "x$(basename $0)" = "xnwt-build-package" ] || [ "x$(basename $0)" = "xnwt-build+upload-package" ]; then - cd $PROJECT_DIR && nwt-pkgneedsbuild $CHECKOUT || [ "$FORCE_BUILD" -eq 0 ] && { + if [ "x$(basename $0)" = "x$PREFIX-build-package" ] || [ "x$(basename $0)" = "x$PREFIX-build+upload-package" ]; then + cd $PROJECT_DIR && pkgneedsbuild $CHECKOUT || [ "$FORCE_BUILD" -eq 0 ] && { clear_pkgdist prepare_workspace && { build_packages } } fi - if [ "x$(basename $0)" = "xnwt-upload-package" ] || [ "x$(basename $0)" = "xnwt-build+upload-package" ]; then + if [ "x$(basename $0)" = "x$PREFIX-upload-package" ] || [ "x$(basename $0)" = "x$PREFIX-build+upload-package" ]; then upload_packages fi } diff --git a/bin/gitcreate b/bin/gitcreate new file mode 100755 index 0000000..612173b --- /dev/null +++ b/bin/gitcreate @@ -0,0 +1,25 @@ +#!/bin/bash + +set -xe + +GIT_USER= +GIT_HOSTNAME= +GIT_SSH_PORT=22 + +PREFIX=$(echo $0 | cut -d"-" -f1) +. ~/.buildscripts/$PREFIX.conf + + +for pkg in "$@"; do + subdir=$(dirname $pkg)/ + pkg=$(basename $pkg) + ssh -l$GIT_USER $GIT_HOSTNAME "cd ~/git && ./setup-repository ${subdir}${pkg} '$pkg upstream project'" + ssh -l$GIT_USER $GIT_HOSTNAME "cd ~/git && ./update-repository-posixacls ${subdir}${pkg}" + test -d "$pkg" && cd "$pkg" + echo "$pkg: MASTER BRANCH" && git push ssh://$GIT_USER@$GIT_HOSTNAME:$GIT_SSH_PORT/~/git/${subdir}${pkg} master + git branch | grep upstream &>/dev/null && echo "$pkg: RELEASE BRANCH" && git push ssh://$GIT_USER@$GIT_HOSTNAME:$GIT_SSH_PORT/~/git/${subdir}${pkg} upstream + git branch | grep pristine-tar &>/dev/null && echo "$pkg: PRISTINE-TAR" && git push ssh://$GIT_USER@$GIT_HOSTNAME:$GIT_SSH_PORT/~/git/${subdir}${pkg} pristine-tar + echo "$pkg: PUSHING TAGS" && git push --tags ssh://$GIT_USER@$GIT_HOSTNAME:$GIT_SSH_PORT/~/git/${subdir}${pkg} + git remote add origin ssh://$GIT_USER@$GIT_HOSTNAME:$GIT_SSH_PORT/~/git/${subdir}${pkg} + cd .. +done diff --git a/bin/nwt-gitrevno b/bin/gitrevno index 2f121ff..2f121ff 100755 --- a/bin/nwt-gitrevno +++ b/bin/gitrevno diff --git a/bin/nwt-build+upload-all-packages b/bin/nwt-build+upload-all-packages deleted file mode 120000 index 21d6658..0000000 --- a/bin/nwt-build+upload-all-packages +++ /dev/null @@ -1 +0,0 @@ -nwt-build-all-packages
\ No newline at end of file diff --git a/bin/nwt-build+upload-package b/bin/nwt-build+upload-package deleted file mode 120000 index ce08442..0000000 --- a/bin/nwt-build+upload-package +++ /dev/null @@ -1 +0,0 @@ -nwt-build-package
\ No newline at end of file diff --git a/bin/nwt-build-all-packages b/bin/nwt-build-all-packages deleted file mode 100755 index 35320f4..0000000 --- a/bin/nwt-build-all-packages +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash - -# Copyright (C) 2011 by Mike Gabriel <mike.gabriel@das-netzwerkteam.de> -# -# This is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the -# Free Software Foundation, Inc., -# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. - -LIB_PACKAGES_NIGHTLY="\ -nwt-keyring nightly master -" -LIB_PACKAGES_MAIN="\ -nwt-keyring main build-main -" - -APP_PACKAGES_NIGHTLY="\ -nwt-hostconfig nightly master -" -APP_PACKAGES_MAIN="\ -nwt-hostconfig main build-main -" - -COMPONENT=${1:-""} - -# build the newest code... (nightly-builds) -[ "x$COMPONENT" = "xnightly" ] || [ -z $COMPONENT ] && { - echo -e $LIB_PACKAGES_NIGHTLY $APP_PACKAGES_NIGHTLY | while read pkg comp checkout; do - if [ "x$(basename $0)" = "xnwt-build-all-packages" ]; then - nwt-build-package $pkg $comp $checkout - elif [ "x$(basename $0)" = "xnwt-upload-all-packages" ]; then - nwt-upload-package $pkg $comp $checkout - elif [ "x$(basename $0)" = "xnwt-build+upload-all-packages" ]; then - nwt-build-package $pkg $comp $checkout && nwt-upload-package $pkg $comp $checkout - fi - done -} - -# build all packages tagged as build-main -[ "x$COMPONENT" = "xmain" ] || [ -z $COMPONENT ] && { - echo -e $LIB_PACKAGES_MAIN $APP_PACKAGES_MAIN | while read pkg comp checkout; do - if [ "x$(basename $0)" = "xnwt-build-all-packages" ]; then - nwt-build-package $pkg $comp $checkout - elif [ "x$(basename $0)" = "xnwt-upload-all-packages" ]; then - nwt-upload-package $pkg $comp $checkout - elif [ "x$(basename $0)" = "xnwt-build+upload-all-packages" ]; then - nwt-build-package $pkg $comp $checkout && nwt-upload-package $pkg $comp $checkout - fi - done -} diff --git a/bin/nwt-gitcreate b/bin/nwt-gitcreate deleted file mode 100755 index 27f4885..0000000 --- a/bin/nwt-gitcreate +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -set -xe - -for pkg in "$@"; do - subdir=$(dirname $pkg)/ - pkg=$(basename $pkg) - ssh -lnwt code.das-netzwerkteam.de "cd ~/git && ./setup-repository ${subdir}${pkg} '$pkg upstream project'" - ssh -lnwt code.das-netzwerkteam.de "cd ~/git && ./update-repository-posixacls ${subdir}${pkg}" - test -d "$pkg" && cd "$pkg" - echo "$pkg: MASTER BRANCH" && git push ssh://nwt@code.das-netzwerkteam.de:32032/~/git/${subdir}${pkg} master - git branch | grep upstream &>/dev/null && echo "$pkg: RELEASE BRANCH" && git push ssh://nwt@code.das-netzwerkteam.de:32032/~/git/${subdir}${pkg} upstream - git branch | grep pristine-tar &>/dev/null && echo "$pkg: PRISTINE-TAR" && git push ssh://nwt@code.das-netzwerkteam.de:32032/~/git/${subdir}${pkg} pristine-tar - echo "$pkg: PUSHING TAGS" && git push --tags ssh://nwt@code.das-netzwerkteam.de:32032/~/git/${subdir}${pkg} - git remote add origin ssh://nwt@code.das-netzwerkteam.de:32032/~/git/${subdir}${pkg} - cd .. -done diff --git a/bin/nwt-upload-all-packages b/bin/nwt-upload-all-packages deleted file mode 120000 index 21d6658..0000000 --- a/bin/nwt-upload-all-packages +++ /dev/null @@ -1 +0,0 @@ -nwt-build-all-packages
\ No newline at end of file diff --git a/bin/nwt-upload-package b/bin/nwt-upload-package deleted file mode 120000 index ce08442..0000000 --- a/bin/nwt-upload-package +++ /dev/null @@ -1 +0,0 @@ -nwt-build-package
\ No newline at end of file diff --git a/bin/nwt-pkgneedsbuild b/bin/pkgneedsbuild index 2a192eb..2a192eb 100755 --- a/bin/nwt-pkgneedsbuild +++ b/bin/pkgneedsbuild diff --git a/bin/nwt-tarballrelease b/bin/tarballrelease index 1b58077..1b58077 100755 --- a/bin/nwt-tarballrelease +++ b/bin/tarballrelease diff --git a/bin/nwt-updatebuildmain b/bin/updatebuildmain index f4f4917..f4f4917 100755 --- a/bin/nwt-updatebuildmain +++ b/bin/updatebuildmain diff --git a/bin/upload-all-packages b/bin/upload-all-packages new file mode 120000 index 0000000..b8c12b0 --- /dev/null +++ b/bin/upload-all-packages @@ -0,0 +1 @@ +build-all-packages
\ No newline at end of file diff --git a/bin/upload-package b/bin/upload-package new file mode 120000 index 0000000..2b48fdc --- /dev/null +++ b/bin/upload-package @@ -0,0 +1 @@ +build-package
\ No newline at end of file |