summaryrefslogtreecommitdiffstats
path: root/rebuild-alpine.sh
diff options
context:
space:
mode:
authorAndrew Manison <amanison@anselsystems.com>2010-04-28 14:33:44 +0000
committerAndrew Manison <amanison@anselsystems.com>2010-04-28 14:33:44 +0000
commit64723824fd317225bd675140261c8514acf4cff2 (patch)
tree97bc1842916d25e03a75d15cb17427d32a6a2d36 /rebuild-alpine.sh
parent0e1bf50148e1802f3f010d5df4354de0c56924d2 (diff)
downloadaports-64723824fd317225bd675140261c8514acf4cff2.tar.bz2
aports-64723824fd317225bd675140261c8514acf4cff2.tar.xz
Added rebuild-alpine.sh script, for running in a build bot. Tweaks to top-level makefile.
Diffstat (limited to 'rebuild-alpine.sh')
-rwxr-xr-xrebuild-alpine.sh48
1 files changed, 48 insertions, 0 deletions
diff --git a/rebuild-alpine.sh b/rebuild-alpine.sh
new file mode 100755
index 000000000..c546a018d
--- /dev/null
+++ b/rebuild-alpine.sh
@@ -0,0 +1,48 @@
+rootdir=$(pwd)
+
+distclean () {
+ local allpkgs=$(find $rootdir -maxdepth 3 -name APKBUILD -print | sed -e 's/\/APKBUILD//g' | sort)
+ for p in $allpkgs ; do
+ cd $p
+ abuild clean 2>&1
+ abuild cleanoldpkg 2>&1
+ abuild cleanpkg 2>&1
+ abuild cleancache 2>&1
+ done
+}
+
+build () {
+ local pkgs
+ local maintainer
+ pkgs=$(./aport.lua deplist $rootdir $1)
+ for p in $pkgs ; do
+ echo "Building $p"
+ cd $rootdir/$1/$p
+ abuild -r > $rootdir/$1_$p.txt 2>&1
+ if [ "$?" = "0" ] ; then
+ rm $rootdir/$1_$p.txt
+ else
+ maintainer=$(grep Maintainer APKBUILD | cut -d " " -f 3-)
+ if [ -z "$maintainer" ] ; then
+ maintainer="default maintainer"
+ fi
+ echo "Package $1/$p failed to build (output in $rootdir/$1_$p.txt)"
+ echo "Package $1/$p failed to build. Notify $maintainer. Output is attached" | email -s "NOT SPAM $p build report" -a $rootdir/$1_$p.txt -n AlpineBuildBot -f build@alpinelinux.org amanison@anselsystems.com
+ fi
+ done
+ cd $rootdir
+}
+
+echo "Removing traces of previous builds"
+tmp=$(distclean)
+
+echo "Refresh aports tree"
+git pull
+
+for s in main testing nonfree unstable ; do
+ echo "Building packages in $s"
+ build $s
+done
+
+echo "Done"
+