Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Silbe <silbe@buildslave-debian-squeeze-64bit.sugarlabs.org>2010-06-12 19:38:09 (GMT)
committer Sascha Silbe <silbe@buildslave-debian-squeeze-64bit.sugarlabs.org>2010-06-12 19:38:09 (GMT)
commit212ae1ae71f86f9120d48905fbc4c7e92871c5ea (patch)
tree0065682688315e50f8fb42c78e43e9bf22d97e88
initial version (apparently working)
-rwxr-xr-xbuild-snapshots64
-rw-r--r--pbuilderrc4
-rwxr-xr-xsetup-cowbuilder8
-rwxr-xr-xsetup-snapshots17
-rwxr-xr-xupdate-cowbuilder6
5 files changed, 99 insertions, 0 deletions
diff --git a/build-snapshots b/build-snapshots
new file mode 100755
index 0000000..d01fcba
--- /dev/null
+++ b/build-snapshots
@@ -0,0 +1,64 @@
+#!/bin/bash
+repo_clean() {
+ git reset --hard
+ git clean -d -f -q -x
+}
+
+repo_update() {
+ git checkout upstream
+ git pull upstream master
+ git checkout master
+ git pull origin master
+ git pull . upstream
+}
+
+version_set() {
+ local version="$(git tag|grep ^v|tr -d v|sort -t . -n|tail -n 1)"
+ local commit="$(git rev-parse upstream)"
+ dch -v "${version}-git$(date +%Y%m%d)-1" "Nightly snapshot build. Last commit ${commit}."
+# git-dch --snapshot --auto
+ git commit -m "Add changelog entry for nightly snapshot build (commit ${commit})" debian/changelog
+}
+
+gen_and_import_tarball() {
+ local package="${1}"
+ git checkout upstream
+ ./autogen.sh
+ make dist-gzip
+ local version="$(grep '^VERSION = ' Makefile |sed -e 's/^VERSION = //')"
+ mv "${package}-${version}".tar.gz ../tarballs/"${package}-${version}~git$(date +%Y%m%d).tar.gz"
+ repo_clean
+ git-import-orig "${package}-${version}".tar.gz
+}
+
+build() {
+ git-buildpackage --git-builder="pdebuild --configfile ${MYDIR}/pbuilderrc --debbuildopts '-I.git -i\.git'" --git-cleaner="fakeroot debian/rules clean" --git-no-pristine-tar --git-export-dir=../build
+}
+
+upload_all() {
+ rsync -av -e "ssh -o IdentitiesOnly=yes -i \"${MYDIR}\"/id_rsa-sunjammer-snaphots" cowbuilder/result/ silbe@sunjammer.sugarlabs.org::debian-snapshots/pool/${DISTRIBUTION}/main/
+}
+
+package_apply() {
+ local package="${1}"
+ shift
+ ( set -e ; cd "${package}" ; "$@" )
+}
+
+MYDIR="$(readlink -f "$(dirname "${0}")")"
+export COWBUILDERBASE="${MYDIR}/cowbuilder"
+export DISTRIBUTION="$(tr -cd A-Za-z0-9._- < "${MYDIR}"/config.distro)"
+
+for package in sugar sugar-artwork sugar-base sugar-datastore sugar-presence-service sugar-toolkit; do
+#for package in sugar; do
+ (
+ set -e
+ package_apply "${package}" repo_clean
+ package_apply "${package}" repo_update
+ package_apply "${package}" version_set
+ package_apply "${package}" build
+# package_apply "${package}" upload
+ )
+done
+
+upload_all
diff --git a/pbuilderrc b/pbuilderrc
new file mode 100644
index 0000000..4e58954
--- /dev/null
+++ b/pbuilderrc
@@ -0,0 +1,4 @@
+DISTRIBUTION="${DISTRIBUTION:-sid}"
+BUILDRESULT="${COWBUILDERBASE}"/result
+BASEPATH="${COWBUILDERBASE}"/base.cow
+PDEBUILD_PBUILDER=cowbuilder
diff --git a/setup-cowbuilder b/setup-cowbuilder
new file mode 100755
index 0000000..5a19f79
--- /dev/null
+++ b/setup-cowbuilder
@@ -0,0 +1,8 @@
+#!/bin/sh
+set -e
+MYDIR="$(readlink -f "$(dirname "${0}")")"
+export COWBUILDERBASE="${MYDIR}/cowbuilder"
+export DISTRIBUTION="$(tr -cd A-Za-z0-9._- < "${MYDIR}"/config.distro)"
+
+mkdir "${COWBUILDERBASE}"
+cowbuilder --create --configfile "${MYDIR}/pbuilderrc"
diff --git a/setup-snapshots b/setup-snapshots
new file mode 100755
index 0000000..11eb408
--- /dev/null
+++ b/setup-snapshots
@@ -0,0 +1,17 @@
+#!/bin/sh
+set -e
+
+for package in sugar sugar-artwork sugar-base sugar-datastore sugar-presence-service sugar-toolkit; do
+#for package in sugar; do
+ git clone -q git://git.debian.org/git/collab-maint/"${package}"
+ cd "${package}"
+ git remote add upstream git://git.sugarlabs.org/"${package}"/mainline.git
+ git fetch -q --tags upstream
+# git branch upstream upstream/master
+ git branch upstream origin/upstream
+ debian/rules get-orig-source
+ cd ..
+done
+
+#mkdir tarballs
+
diff --git a/update-cowbuilder b/update-cowbuilder
new file mode 100755
index 0000000..61c0bbf
--- /dev/null
+++ b/update-cowbuilder
@@ -0,0 +1,6 @@
+#!/bin/sh
+set -e
+MYDIR="$(readlink -f "$(dirname "${0}")")"
+DISTRO="$(tr -cd A-Za-z0-9._- < "${MYDIR}"/config.distro)"
+
+cowbuilder --update --basepath "${MYDIR}"/cowbuilder/base.cow --buildplace "${MYDIR}"/cowbuilder/build --distribution "${DISTRO}"