diff options
Diffstat (limited to 'jobs')
-rwxr-xr-x | jobs/alpine-amd64.run | 55 |
1 files changed, 44 insertions, 11 deletions
diff --git a/jobs/alpine-amd64.run b/jobs/alpine-amd64.run index 83c6717..4ae8e87 100755 --- a/jobs/alpine-amd64.run +++ b/jobs/alpine-amd64.run @@ -9,30 +9,63 @@ if [ -n "$CLEAN" ]; then 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 "$WORKSPACE/root" ]; then + 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 "$WORKSPACE/root" - uroot tar -xf alpine.tar -C "$WORKSPACE/root" - uchroot "$WORKSPACE/root" /bin/sh -sxe <<EEOF + 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 - adduser -D -h /build build + apk add alpine-sdk lua-aports + adduser -s /bin/sh -D build addgroup build abuild - # TODO more setup + 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" + uroot cp abuild-system.conf "$ROOT/etc/abuild.conf" fi echo_stage "Update system" - uchroot "$WORKSPACE/root" /bin/sh -ce 'apk update && apk upgrade' + uchroot "$ROOT" root /bin/sh -ce 'apk update && apk upgrade' echo_stage "Update package sources" - # TODO -EOF + 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 -# TODO + echo_stage "Build packages" + # TODO generate list of repositories automatically + uchroot "$ROOT" build:build buildrepo --purge personal hacked +EOF |