This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository buildscripts. from 0f2fe28 bin/generate-nsis-version.pl: consolidate date to always use YYYY.MM.DD, simplify hash append for nightly builds. new d7089b9 bin/build-nsis-package.sh: do not spawn new copies of the same processes for no good reason. new fea2238 bin/build-nsis-package.sh: quoting and misc. whitespace changes. new 306c91d bin/build-{rpm,deb}-package: port minor changes from last commit. new 7ed5995 bin/{build-deb-package,build-nsis-package.sh}: add contributors to copyright headers. The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: bin/build-deb-package | 5 +- bin/build-nsis-package.sh | 234 +++++++++++++++++++++++++-------------------- bin/build-rpm-package | 4 +- 3 files changed, 135 insertions(+), 108 deletions(-) -- Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository buildscripts. commit d7089b98468f15a1931553ed848adad6aea678e7 Author: Mihai Moldovan <ionic@ionic.de> Date: Sun May 10 03:12:09 2015 +0200 bin/build-nsis-package.sh: do not spawn new copies of the same processes for no good reason. Will be harmful when trying to edit global variables. --- bin/build-nsis-package.sh | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/bin/build-nsis-package.sh b/bin/build-nsis-package.sh index 0bae4e3..80de031 100755 --- a/bin/build-nsis-package.sh +++ b/bin/build-nsis-package.sh @@ -136,14 +136,24 @@ prepare_workspace() { return 0 } +# Cleans up the pkgdist directory used for building packages. +# Does not take parameters. +# Does not "return" anything. clear_pkgdist() { - # pkgdist directory cleanup - echo "$NSIS_BUILD_FOR" | sed -e 's/ /\n/g' | while read line; do + # Do NOT spawn a subshell here. + # Allow changing global variables in the main process. + typeset -a nsis_build_for_arr + typeset OLDIFS="${IFS}" + IFS=" " + read -a nsis_build_for_arr <<< "${NSIS_BUILD_FOR}" + IFS="${OLDIFS}" + + typeset line="" + for line in "${nsis_build_for_arr[@]}"; do l_DIST="$(echo ${line/: /:} | cut -d":" -f1 | tr [:upper:] [:lower:])" l_CODENAMES="${CODENAMES:-$(echo ${line/: /:} | cut -d":" -f2- | sed -e 's/,/ /g' | tr [:upper:] [:lower:])}" echo "$NSIS_DISTS_SUPPORTED" | grep $l_DIST >/dev/null && { for l_CODENAME in $l_CODENAMES; do - # in case we build a special CODENAME (squeeze, wheezy, lucid, ...) do skip # the wrong distribution here... test -z $CODENAMES || echo $line | grep $CODENAMES || break @@ -213,8 +223,17 @@ build_packages() { upload_packages() { # dupload the new packages to the reprepro repository - echo "$NSIS_BUILD_FOR" | sed -e 's/ /\n/g' | while read line; do + # Do NOT spawn a subshell here. + # Allow changing global variables in the main process. + typeset -a nsis_build_for_arr + typeset OLDIFS="${IFS}" + IFS=" " + read -a nsis_build_for_arr <<< "${NSIS_BUILD_FOR}" + IFS="${OLDIFS}" + + typeset line="" + for line in "${nsis_build_for_arr[@]}"; do # FIXME: this should be handled at the beginning of this script!!! MINGW_REPOS_BASE=/srv/sites/x2go.org/code/releases/binary-win32/x2goclient/heuler/ -- Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository buildscripts. commit fea2238f5f85dd115629f3a69d7ab6d0b806a332 Author: Mihai Moldovan <ionic@ionic.de> Date: Sun May 10 03:13:42 2015 +0200 bin/build-nsis-package.sh: quoting and misc. whitespace changes. --- bin/build-nsis-package.sh | 205 +++++++++++++++++++++++---------------------- 1 file changed, 105 insertions(+), 100 deletions(-) diff --git a/bin/build-nsis-package.sh b/bin/build-nsis-package.sh index 80de031..f51641d 100755 --- a/bin/build-nsis-package.sh +++ b/bin/build-nsis-package.sh @@ -25,12 +25,12 @@ set -ex -export PATH=~/bin:/cygdrive/d/Build/buildscripts/bin:$PATH +export PATH="${HOME}/bin:/cygdrive/d/Build/buildscripts/bin:${PATH}" GIT_USER="x2go" GIT_HOSTNAME="code.x2go.org" -GPG_KEY= +GPG_KEY="" NSIS_DISTS_SUPPORTED="mingw32-4.4,mingw32-4.8" MINGW_DISTROS="qt-4.8" @@ -39,65 +39,70 @@ COMPONENT_NIGHTLY="heuler" COMPONENT_BUNDLES="baikal" REPOS_SERVER="code.x2go.org" -GNUPGHOME=$HOME/.gnupg +GNUPGHOME="${HOME}/.gnupg" -test -z $1 && { echo "usage: [PROJECT_DIR=/cygwin/path/] $(basename $0) [<subpath>/]<git-project> {main,main/<codename>,nightly,nightly/<codename>} [<git-checkout>]"; exit 1; } +test -z "${1}" && { + exec >&2 + echo "usage: [PROJECT_DIR=/cygwin/path/] $(basename "${0}") [<subpath>/]<git-project> {main,main/<codename>,nightly,nightly/<codename>} [<git-checkout>]" + exit 1 +} -NO_DELAY=${NO_DELAY:-"no"} -FORCE_BUILD=${FORCE_BUILD:-"yes"} +: ${NO_DELAY:="no"} +: ${FORCE_BUILD:="yes"} echo ${NSIS_BUILD_FOR} -l_DIST=$(echo ${NSIS_BUILD_FOR} | cut -d":" -f1 | tr [:upper:] [:lower:]) -l_CODENAME=$(echo ${NSIS_BUILD_FOR} | cut -d":" -f2- | sed -e 's/,/ /g' | tr [:upper:] [:lower:]) +l_DIST="$(cut -d":" -f1 <<< "${NSIS_BUILD_FOR}" | tr [:upper:] [:lower:])" +l_CODENAME="$(cut -d":" -f2- <<< "${NSIS_BUILD_FOR}" | sed -e 's/,/ /g' | tr [:upper:] [:lower:])" set_vars() { USE_SUDO="no" PDEBUILD="pdebuild --pbuilder qemubuilder" TEMP_BASE="/cygdrive/d/Build/tmp" - mkdir -p "$TEMP_BASE" - chmod 2770 "$TEMP_BASE" + mkdir -p "${TEMP_BASE}" + chmod 2770 "${TEMP_BASE}" # first argv is the name of the Git project - PROJECT_PATH="$1" - PROJECT_PATH=${PROJECT_PATH/%.git/} - PROJECT="$(basename $PROJECT_PATH)" + 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)" + ARGV2_COMPONENT="$(cut -d"/" -f1 <<< "${2}/")" + ARGV2_CODENAME="$(cut -d"/" -f2 <<< "${2}/")" COMPONENT="${ARGV2_COMPONENT:-${COMPONENT:-$COMPONENT_NIGHTLY}}" CODENAMES="${ARGV2_CODENAME:-${CODENAMES}}" - [ -n "$ARGV2_CODENAME" ] && FORCE_BUILD="yes" || true + [ -n "${ARGV2_CODENAME}" ] && FORCE_BUILD="yes" || true DATE="${DATE:-$(date +%Y%m%d)}" - if [ "x$COMPONENT" = "x$COMPONENT_MAIN" ]; then + if [ "x${COMPONENT}" = "x${COMPONENT_MAIN}" ]; then CHECKOUT="${3:-build-main}" - elif echo "$COMPONENT_RELEASES" | grep "$COMPONENT" >/dev/null; then - CHECKOUT="${3:-build-$COMPONENT}" - elif [ "x$COMPONENT" = "x$COMPONENT_NIGHTLY" ]; then + elif grep -qs "${COMPONENT}" <<< "${COMPONENT_RELEASES}"; then + CHECKOUT="${3:-build-${COMPONENT}}" + elif [ "x${COMPONENT}" = "x${COMPONENT_NIGHTLY}" ]; then CHECKOUT="${3:-master}" else + exec >&2 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)" + [ "x${DATE}" = "xtoday" ] && DATE="$(date +%Y%m%d)" # setting paths - : ${PROJECT_DIR:="/cygdrive/d/Build/GIT/nightly/$l_DIST/$l_CODENAME/x2goclient"} - PKGDIST="/cygdrive/d/Build/pkg-dist/nightly/$l_DIST/$l_CODENAME/x2goclient" + : ${PROJECT_DIR:="/cygdrive/d/Build/GIT/nightly/${l_DIST}/${l_CODENAME}/x2goclient"} + PKGDIST="/cygdrive/d/Build/pkg-dist/nightly/${l_DIST}/${l_CODENAME}/x2goclient" # build for other architectures than amd64/i386 EXTRA_ARCHS="${EXTRA_ARCHS:-}" EXTRA_ARCHS_ONLY="${EXTRA_ARCHS_ONLY:-}" # lock file - LOCK_FILE=$PROJECT_DIR/../.$PROJECT.lock + LOCK_FILE="${PROJECT_DIR}/../.${PROJECT}.lock" # creating paths - mkdir -p "$TEMP_BASE" - mkdir -p "$PROJECT_DIR" -# mkdir -p "$PKGDIST" + mkdir -p "${TEMP_BASE}" + mkdir -p "${PROJECT_DIR}" +# mkdir -p "${PKGDIST}" return 0 } @@ -105,32 +110,32 @@ set_vars() { prepare_workspace() { # make sure our local working copy is up to date... - 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 + 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}" git fetch origin upstream:upstream || true git fetch origin pristine-tar:pristine-tar || true - # and again, get the $CHECKOUT refspec in pure state + # and again, get the ${CHECKOUT} refspec in pure state git reset --hard git clean -df else - cd "$(dirname $PROJECT_DIR)" - git clone git://$GIT_HOSTNAME/$PROJECT_PATH.git - cd "$PROJECT" - git checkout --force $CHECKOUT || git checkout --force -b $CHECKOUT; + cd "$(dirname "${PROJECT_DIR}")" + git clone "git://${GIT_HOSTNAME}/${PROJECT_PATH}.git" + cd "${PROJECT}" + git checkout --force "${CHECKOUT}" || git checkout --force -b "${CHECKOUT}" git fetch origin upstream:upstream git fetch origin pristine-tar:pristine-tar || true git clean -df fi GIT_OBJECT_ID="$(git rev-parse --verify HEAD)" - cd "$PROJECT_DIR" + cd "${PROJECT_DIR}" # by default we build for all current debian versions - if [ "x$ARGV2_CODENAME" != "x" ]; then - if echo "$MINGW_DISTROS" | grep $ARGV2_CODENAME >/dev/null; then - NSIS_BUILD_FOR="mingw32-4.4:$ARGV2_CODENAME" + if [ "x${ARGV2_CODENAME}" != "x" ]; then + if grep -qs "${ARGV2_CODENAME}" <<< "${MINGW_DISTROS}"; then + NSIS_BUILD_FOR="mingw32-4.4:${ARGV2_CODENAME}" fi fi return 0 @@ -150,37 +155,37 @@ clear_pkgdist() { typeset line="" for line in "${nsis_build_for_arr[@]}"; do - l_DIST="$(echo ${line/: /:} | cut -d":" -f1 | tr [:upper:] [:lower:])" - l_CODENAMES="${CODENAMES:-$(echo ${line/: /:} | cut -d":" -f2- | sed -e 's/,/ /g' | tr [:upper:] [:lower:])}" - echo "$NSIS_DISTS_SUPPORTED" | grep $l_DIST >/dev/null && { - for l_CODENAME in $l_CODENAMES; do + l_DIST="$(cut -d":" -f1 <<< "${line/: /:}" | tr [:upper:] [:lower:])" + l_CODENAMES="${CODENAMES:-"$(cut -d":" -f2- <<< "${line/: /:}" | sed -e 's/,/ /g' | tr [:upper:] [:lower:])"}" + grep -qs "${l_DIST}" <<< "${NSIS_DISTS_SUPPORTED}" && { + for l_CODENAME in "${l_CODENAMES}"; do # in case we build a special CODENAME (squeeze, wheezy, lucid, ...) do skip # the wrong distribution here... - test -z $CODENAMES || echo $line | grep $CODENAMES || break + test -z "${CODENAMES}" || grep "${CODENAMES}" <<< "${line}" || break - if [ "x$EXTRA_ARCHS_ONLY" = "x" ]; then + if [ "x${EXTRA_ARCHS_ONLY}" = "x" ]; then for l_ARCH in amd64 i386; do - [ "x$SKIP_ARCH" != "x$l_ARCH" ] && { - mkdir -p "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH" - rm -f "$PKGDIST/$l_DIST/$l_CODENAME/$l_ARCH/dupload.conf" - 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 + [ "x${SKIP_ARCH}" != "x${l_ARCH}" ] && { + mkdir -p "${PKGDIST}/${l_DIST}/${l_CODENAME}/${l_ARCH}" + rm -f "${PKGDIST}/${l_DIST}/${l_CODENAME}/${l_ARCH}/dupload.conf" + 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/dupload.conf" - 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 + 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}/dupload.conf" + 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 } @@ -189,34 +194,33 @@ clear_pkgdist() { } build_packages() { + TEMP_DIR="$(mktemp -d --tmpdir="${TEMP_BASE}")" + mkdir -p "${TEMP_DIR}/${PROJECT}" + chmod 2770 "${TEMP_DIR}" -Rf - TEMP_DIR="$(mktemp -d --tmpdir=$TEMP_BASE)" - mkdir -p "$TEMP_DIR/$PROJECT" - chmod 2770 "$TEMP_DIR" -Rf - - cd "$PROJECT_DIR" - git clone --local "$PROJECT_DIR" "$TEMP_DIR/$PROJECT/" - cd "$TEMP_DIR/$PROJECT" - git checkout $CHECKOUT || git checkout master - find $PROJECT_DIR/../ -type f -maxdepth 0 -mindepth 0 | grep $PROJECT_*.orig.tar.gz &>/dev/null && cp $PROJECT_DIR/../$PROJECT_*.orig.tar.gz .. - GITREV=$(gitrevno) + cd "${PROJECT_DIR}" + git clone --local "${PROJECT_DIR}" "${TEMP_DIR}/${PROJECT}/" + cd "${TEMP_DIR}/${PROJECT}" + git checkout "${CHECKOUT}" || git checkout master + find "${PROJECT_DIR}/../" -type f -maxdepth 0 -mindepth 0 | grep -qs "${PROJECT}_"*.orig.tar.gz && cp "${PROJECT_DIR}/../${PROJECT}_"*.orig.tar.gz .. + GITREV="$(gitrevno)" # TODO: Improve generate-nsis-version.pl so that it can be run from another dir - cd /cygdrive/d/Build/buildscripts/bin/ - ./generate-nsis-version.pl $PROJECT_DIR + cd "/cygdrive/d/Build/buildscripts/bin/" + ./generate-nsis-version.pl "${PROJECT_DIR}" - cd $PROJECT_DIR - cp -a --no-preserve=ownership debian/changelog res/txt/ + cd "${PROJECT_DIR}" + cp -a --no-preserve=ownership "debian/changelog" "res/txt/" # create git changelog immediately prior to building the SRPM package - git --no-pager log --since "2 years ago" --format="%ai %aN (%h) %n%n%x09*%w(68,0,10) %s%d%n" > ChangeLog.gitlog - cp ChangeLog.gitlog res/txt/git-info + git --no-pager log --since "2 years ago" --format="%ai %aN (%h) %n%n%x09*%w(68,0,10) %s%d%n" > "ChangeLog.gitlog" + cp "ChangeLog.gitlog" "res/txt/git-info" - cd /cygdrive/d/Build/buildscripts/bin/ + cd "/cygdrive/d/Build/buildscripts/bin/" - nice /cygdrive/d/Build/buildscripts/bin/nsis-builder.bat "${l_DIST}" "${l_CODENAME}" + nice "/cygdrive/d/Build/buildscripts/bin/nsis-builder.bat" "${l_DIST}" "${l_CODENAME}" - rm -Rf "$TEMP_DIR" + rm -Rf "${TEMP_DIR}" return 0 } @@ -235,35 +239,36 @@ upload_packages() { typeset line="" for line in "${nsis_build_for_arr[@]}"; do # FIXME: this should be handled at the beginning of this script!!! - MINGW_REPOS_BASE=/srv/sites/x2go.org/code/releases/binary-win32/x2goclient/heuler/ + MINGW_REPOS_BASE="/srv/sites/x2go.org/code/releases/binary-win32/x2goclient/heuler/" # create remote directories in archive - 0</dev/null ssh $REPOS_SERVER mkdir -p $MINGW_REPOS_BASE/$l_DIST/$l_CODENAME/ + 0</dev/null ssh "${REPOS_SERVER}" mkdir -p "${MINGW_REPOS_BASE}/${l_DIST}/${l_CODENAME}/" # remove installer packages that are older than 30 days - 0</dev/null ssh $REPOS_SERVER "find \"$MINGW_REPOS_BASE/$l_DIST/$l_CODENAME/*\" -mtime +30 -name \"x2goclient-*-setup.exe\" 2>/dev/null | while read installer; do rm -f "$installer"; done" + 0</dev/null ssh "${REPOS_SERVER}" "find \"${MINGW_REPOS_BASE}/${l_DIST}/${l_CODENAME}/*\" -mtime +30 -name \"x2goclient-*-setup.exe\" -exec rm -f \"{}\" \";\"" # Ensure that the package is world-readable before being uploaded to an HTTP/HTTPS server. # Otherwise, sometimes cygwin sftp/scp uploads files with 000 permissions. - # What probably happens is that Cygwin is enumerates the windows permissions as a bunch of ACLs, and sets the octal permissions to 000. + # What probably happens is that Cygwin is enumerates the windows permissions as a bunch of ACLs, and sets the octal permissions to 000. # # 2014-07-13 # Commenting this out because for some reason, it could not find the files, thus causing the build to fail. # Furthermore, the permissions on the uploaded builds are fine right now. # The file not found error was: # chmod: Zugriff auf »/cygdrive/d/Build/GIT/nightly/x2goclient/nsis/x2goclient-*-setup.exe“ nicht möglich: Datei oder Verzeichnis nicht gefunden - chmod 755 /cygdrive/d/Build/GIT/nightly/$l_DIST/$l_CODENAME/$PROJECT/nsis/$PROJECT-*-setup.exe + chmod 755 "/cygdrive/d/Build/GIT/nightly/${l_DIST}/${l_CODENAME}/${PROJECT}/nsis/${PROJECT}-"*"-setup.exe" # copy new installer to download location - scp /cygdrive/d/Build/GIT/nightly/$l_DIST/$l_CODENAME/$PROJECT/nsis/$PROJECT-*-setup.exe $REPOS_SERVER:"$MINGW_REPOS_BASE/$l_DIST/$l_CODENAME/" + scp "/cygdrive/d/Build/GIT/nightly/${l_DIST}/${l_CODENAME}/${PROJECT}/nsis/${PROJECT}-"*"-setup.exe" "${REPOS_SERVER}:${MINGW_REPOS_BASE}/${l_DIST}/${l_CODENAME}/" done return 0 } wait_for_lock() { - while [ -f $LOCK_FILE ]; do - pid=$(head -n1 $LOCK_FILE) - if ! ps $pid 1>/dev/null; then rm -f $LOCK_FILE + while [ -f "${LOCK_FILE}" ]; do + pid="$(head -n1 "${LOCK_FILE}")" + if ! ps "${pid}" 1>/dev/null; then + rm -f "${LOCK_FILE}" else echo "PROJECT directory is locked, sleeping for 10 seconds..." sleep 10 @@ -273,23 +278,23 @@ wait_for_lock() { lock_workspace() { wait_for_lock - echo $$ > $LOCK_FILE + echo "${$}" > "${LOCK_FILE}" } unlock_workspace() { - rm -f $LOCK_FILE + rm -f "${LOCK_FILE}" } delay_build() { - sleep $[ ( $RANDOM % 30 ) + 1 ]s + sleep $[ ( ${RANDOM} % 30 ) + 1 ]s } ### MAIN ### -set_vars "$@" && { - if [ "x$(basename $0)" = "xbuild-nsis-package.sh" ] || [ "x$(basename $0)" = "xbuild+upload-nsis-package.sh" ]; then +set_vars "${@}" && { + if [ "x$(basename "${0}")" = "xbuild-nsis-package.sh" ] || [ "x$(basename ${0})" = "xbuild+upload-nsis-package.sh" ]; then # Treat any value other than "no" and "0" as true. - cd $PROJECT_DIR && pkgneedsbuild $CHECKOUT || ( [ "x$FORCE_BUILD" != "xno" ] && [ "x$FORCE_BUILD" != "x0" ] ) && { - if [ "x$FORCE_BUILD" != "xno" ] && [ "x$FORCE_BUILD" != "x0" ] && ( [ "x$NO_DELAY" = "xno" ] || [ "x$NO_DELAY" = "x0" ] ); then + cd "${PROJECT_DIR}" && pkgneedsbuild "${CHECKOUT}" || ( [ "x${FORCE_BUILD}" != "xno" ] && [ "x${FORCE_BUILD}" != "x0" ] ) && { + if [ "x${FORCE_BUILD}" != "xno" ] && [ "x${FORCE_BUILD}" != "x0" ] && ( [ "x${NO_DELAY}" = "xno" ] || [ "x${NO_DELAY}" = "x0" ] ); then delay_build fi lock_workspace @@ -301,7 +306,7 @@ set_vars "$@" && { unlock_workspace } fi - if [ "x$(basename $0)" = "xupload-nsis-package.sh" ] || [ "x$(basename $0)" = "xbuild+upload-nsis-package.sh" ]; then + if [ "x$(basename "${0}")" = "xupload-nsis-package.sh" ] || [ "x$(basename "${0}")" = "xbuild+upload-nsis-package.sh" ]; then upload_packages fi } -- Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository buildscripts. commit 306c91dc56b2b53a8f61c51d1b6ffc895f8daec4 Author: Mihai Moldovan <ionic@ionic.de> Date: Sun May 10 03:14:18 2015 +0200 bin/build-{rpm,deb}-package: port minor changes from last commit. --- bin/build-deb-package | 4 ++-- bin/build-rpm-package | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/build-deb-package b/bin/build-deb-package index 4dd07e8..984b6db 100755 --- a/bin/build-deb-package +++ b/bin/build-deb-package @@ -386,11 +386,11 @@ unlock_workspace() { } delay_build() { - sleep $[ ( $RANDOM % 30 ) + 1 ]s + sleep $[ ( ${RANDOM} % 30 ) + 1 ]s } ### MAIN ### -set_vars "$@" && { +set_vars "${@}" && { if [ "x$(basename "${0}")" = "x${PREFIX}-build-deb-package" ] || [ "x$(basename "${0}")" = "x${PREFIX}-build+upload-deb-package" ]; then # Treat any value other than "no" and "0" as true. cd "${PROJECT_DIR}" && pkgneedsbuild "${CHECKOUT}" || ( [ "x${FORCE_BUILD}" != "xno" ] && [ "x${FORCE_BUILD}" != "x0" ] ) && { diff --git a/bin/build-rpm-package b/bin/build-rpm-package index 1af3503..0ed0526 100755 --- a/bin/build-rpm-package +++ b/bin/build-rpm-package @@ -929,12 +929,12 @@ unlock_workspace() { } delay_build() { - sleep $[ ( ( $RANDOM % 10 ) + 1 ) * 10 ]s + sleep $[ ( ( ${RANDOM} % 10 ) + 1 ) * 10 ]s } ### MAIN ### -set_vars "$@" && { +set_vars "${@}" && { if [ "x$(basename "${0}")" = "x${PREFIX}-build-rpm-package" ] || [ "x$(basename "${0}")" = "x${PREFIX}-build+upload-rpm-package" ]; then FORCE_BUILD="$(make_boolean "${FORCE_BUILD}")" NO_DELAY="$(make_boolean "${NO_DELAY}")" -- Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository buildscripts. commit 7ed5995c62cd2b76b968bf340629444213516f4a Author: Mihai Moldovan <ionic@ionic.de> Date: Sun May 10 03:15:19 2015 +0200 bin/{build-deb-package,build-nsis-package.sh}: add contributors to copyright headers. --- bin/build-deb-package | 1 + bin/build-nsis-package.sh | 2 ++ 2 files changed, 3 insertions(+) diff --git a/bin/build-deb-package b/bin/build-deb-package index 984b6db..2d3e763 100755 --- a/bin/build-deb-package +++ b/bin/build-deb-package @@ -1,6 +1,7 @@ #!/bin/bash # Copyright (C) 2011-2013 by Mike Gabriel <mike.gabriel@das-netzwerkteam.de> +# Copyright (C) 2015 by Mihai Moldovan <ionic@ionic.de> # # This programme is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by diff --git a/bin/build-nsis-package.sh b/bin/build-nsis-package.sh index f51641d..d74115f 100755 --- a/bin/build-nsis-package.sh +++ b/bin/build-nsis-package.sh @@ -1,6 +1,8 @@ #!/bin/bash # Copyright (C) 2011-2013 by Mike Gabriel <mike.gabriel@das-netzwerkteam.de> +# Copyright (C) 2014-2015 by Mike DePaulo <mikedep333@gmail.com> +# Copyright (C) 2015 by Mihai Moldovan <ionic@ionic.de> # # This programme is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -- Alioth's /srv/git/code.x2go.org/buildscripts.git//..//_hooks_/post-receive-email on /srv/git/code.x2go.org/buildscripts.git