stages: - build - deploy makepkg: stage: build image: archlinux/base:latest before_script: - echo 'Server = http://mir.archlinux.fr/$repo/os/$arch' > /etc/pacman.d/mirrorlist - echo '[seblu]' >> /etc/pacman.conf - echo 'Server = http://al.seblu.net/$repo/$arch' >> /etc/pacman.conf - echo 'SigLevel = Required TrustedOnly' >> /etc/pacman.conf - pacman --sync --refresh --sysupgrade --noconfirm - pacman --sync --noconfirm base-devel devtools - useradd --create-home --shell /bin/bash build - "echo 'build ALL = NOPASSWD: /usr/bin/pacman' > /etc/sudoers.d/build" - "[ -n \"$PACKAGER\" ] && echo \"PACKAGER='$PACKAGER'\" > /home/build/.makepkg.conf" - echo "MAKEFLAGS='-j$(nproc)'" >> /home/build/.makepkg.conf script: - ulimit -c 0 - sudo -u build -- makepkg --syncdeps --noconfirm artifacts: name: $CI_PROJECT_NAME-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHA expire_in: 1 week paths: - "*.pkg.tar.xz" only: changes: - PKGBUILD commitpkg: stage: deploy image: archlinux/base:latest before_script: - echo 'Server = http://mir.archlinux.fr/$repo/os/$arch' > /etc/pacman.d/mirrorlist - echo '[seblu]' >> /etc/pacman.conf - echo 'Server = http://al.seblu.net/$repo/$arch' >> /etc/pacman.conf - echo 'SigLevel = Required TrustedOnly' >> /etc/pacman.conf - pacman --sync --refresh --sysupgrade --noconfirm - pacman --sync --noconfirm openssh archrepo-git - eval $(ssh-agent -s) - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null - mkdir -p ~/.ssh && chmod 700 ~/.ssh - echo "$SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts && - chmod 644 ~/.ssh/known_hosts script: - seblu-push only: refs: - master changes: - PKGBUILD