summaryrefslogtreecommitdiff
path: root/jobs/alpine-amd64.run
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2018-09-02 22:55:51 +0200
committerKarel Kočí <cynerd@email.cz>2018-09-02 23:18:50 +0200
commite753a4d1af740a3cfeb4a4c994395f3a0a5a3c73 (patch)
tree43f8f15d1309d8b101e6feba431a10fc6aa5d4ae /jobs/alpine-amd64.run
parent0f6273a567c504ed4dc631ba18252ea0e16146b0 (diff)
downloadlaminar-cnf-e753a4d1af740a3cfeb4a4c994395f3a0a5a3c73.tar.gz
laminar-cnf-e753a4d1af740a3cfeb4a4c994395f3a0a5a3c73.tar.bz2
laminar-cnf-e753a4d1af740a3cfeb4a4c994395f3a0a5a3c73.zip
alpine-amd64: try to change how we do chroot
Diffstat (limited to 'jobs/alpine-amd64.run')
-rwxr-xr-xjobs/alpine-amd64.run63
1 files changed, 1 insertions, 62 deletions
diff --git a/jobs/alpine-amd64.run b/jobs/alpine-amd64.run
index 96bfb2b..80e8644 100755
--- a/jobs/alpine-amd64.run
+++ b/jobs/alpine-amd64.run
@@ -6,68 +6,7 @@ set -e
if [ -n "$CLEAN" ]; then
echo_stage "Remove root"
flock --exclusive "$WORKSPACE/root.lock" uroot rm -rf "$WORKSPACE/root"
- exit 0
fi
-cat >abuild-system.conf <<EOF
-export CFLAGS="-Os -fomit-frame-pointer"
-export CXXFLAGS="\$CFLAGS"
-export CPPFLAGS="\$CFLAGS"
-export LDFLAGS="-Wl,--as-needed"
-
-export JOBS=4
-export MAKEFLAGS=-j\$JOBS
-
-USE_COLORS=1
-
-SRCDEST=/var/cache/distfiles
-REPODEST=\$HOME/packages/
-
-CLEANUP="srcdir bldroot pkgdir deps"
-ERROR_CLEANUP="bldroot deps"
-EOF
-
export ROOT="$WORKSPACE/root"
-# TODO get latest uri from latest-releases.yml file
-flock --exclusive "$WORKSPACE/root.lock" /bin/sh -se <<EOF
- . utils
- if [ ! -d "$ROOT" ]; then
- echo_stage "Setting up new root"
- wget "http://dl-cdn.alpinelinux.org/alpine/edge/releases/x86_64/alpine-minirootfs-3.8.0-x86_64.tar.gz" -O alpine.tar.gz
- gunzip alpine.tar.gz
- tar -f alpine.tar --delete ./dev/null
- mkdir "$ROOT"
- uroot tar -xf alpine.tar -C "$ROOT"
- chmod 755 "$ROOT" # This is intentional, tar changes access rights
- uchroot "$ROOT" root /bin/sh -sxe <<EEOF
- apk update
- apk add alpine-sdk lua-aports
- adduser -s /bin/sh -D build
- addgroup build abuild
- mkdir -p /var/cache/distfiles
- chgrp abuild /var/cache/distfiles
- chmod g+w /var/cache/distfiles
-EEOF
- uchroot "$ROOT" build:build /bin/sh -sxe <<EEOF
- cd && mkdir .abuild
- echo 'PACKAGER_PRIVKEY="/home/build/.abuild/key.rsa"' > .abuild/abuild.conf
-EEOF
- uroot cp ~/alpinelinux.rsa.key "$ROOT/home/build/.abuild/key.rsa"
- uchroot "$ROOT" root chown build:build "/home/build/.abuild/key.rsa"
- uroot cp ~/alpinelinux.rsa.key.pub "$ROOT/etc/apk/keys/cynerd@email.cz-5b8aeb6d.rsa.pub"
- uroot cp abuild-system.conf "$ROOT/etc/abuild.conf"
- fi
-
- echo_stage "Update system"
- uchroot "$ROOT" root /bin/sh -ce 'apk update && apk upgrade'
-
- echo_stage "Update package sources"
- git_clone "git@cynerd.cz:alpine-personal-pkgs" "aports"
- uroot rm -rf "$ROOT/home/build/aports"
- uroot mv aports "$ROOT/home/build/aports"
- uchroot "$ROOT" root chown -R build:build /home/build/aports
-
- echo_stage "Build packages"
- # TODO generate list of repositories automatically
- uchroot "$ROOT" build:build buildrepo --purge personal hacked
-EOF
+flock --exclusive "$WORKSPACE/root.lock" "$(readlink -f "$0" | sed 's/\.run$/\.sh/')"