]> git.pld-linux.org Git - projects/cleanbuild.git/blobdiff - docker-builder.sh
{}-s must be escaped in perl regexp
[projects/cleanbuild.git] / docker-builder.sh
index 7aae591cddd0f9c44680297a737cf160e890dc39..d88e580fc6a6496ad50eaca51c77a2b0034c6e42 100755 (executable)
@@ -2,18 +2,21 @@
 set -e
 
 package=$1
-image=pld/cleanbuild 
 
-name=cleanbuild-$package
-
-# cleanup
-docker kill $name && docker rm $name || :
+test -n "$package" || exit 1
 
-#topdir=$(rpm -E %_topdir)
 dir=$(pwd)
+image=pld/cleanbuild
+name=cleanbuild-$package
 topdir=$dir/rpm
 cache=$dir/cache
 home=/home/services/builder
+buildsize="4G"
+
+# cleanup first
+docker kill $name || :
+docker rm $name || :
+
 install -d $topdir/bin $cache/poldek
 
 # start the container
@@ -21,7 +24,8 @@ docker run --name=$name -d \
        -v $topdir:$home/rpm \
        -v $dir:$home/cleanbuild \
        -v $cache/poldek:/var/cache/poldek \
-       --tmpfs $home/rpm/BUILD:rw,noexec,nosuid,size=2G \
+       -v $dir/ccache/$package:/home/services/builder/.ccache \
+       --tmpfs $home/rpm/BUILD:rw,exec,nosuid,size=$buildsize \
        $image
 
 if [ ! -d $topdir/packages ]; then
@@ -38,13 +42,7 @@ git_tag=$(GIT_DIR=$topdir/packages/$package/.git git describe --tags --always)
 buildlog=${git_tag#auto/*/}.log
 
 # remove .la dependencies
-cat > $topdir/bin/cleanup-la <<'EOF'
-#!/bin/sh
-find /usr/lib{,64} -name "*.la" -print0 | xargs -0 grep -El "dependency_libs='.+'"
-exit 0
-EOF
-chmod +x $topdir/bin/cleanup-la
-docker exec $name sh -xc '~/rpm/bin/cleanup-la'
+docker exec $name cleanbuild/cleanup-la
 
 while true; do
        docker exec $name cleanbuild/teeboth cleanbuild/$buildlog builder -nn -bb -R $package && rc=$? || rc=$?
@@ -63,11 +61,11 @@ while true; do
        # go for another try
        $installed_something && continue
 
-       # finished
        if [ $rc -eq 0 ]; then
-               break
+               # finished ok, cleanup
+               docker kill $name && docker rm $name || :
        fi
-done
 
-# cleanup
-#docker kill $name && docker rm $name || :
+       # propagate error
+       exit $rc
+done
This page took 0.035272 seconds and 4 git commands to generate.