From 22018a5a996bdefc421c844f5d5dfed7b2ca86f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Luttringer?= <seblu@seblu.net> Date: Mon, 14 Jan 2019 04:03:05 +0100 Subject: [PATCH] Add gitlab CI --- .gitlab-ci.yml | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..2d3684c --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,49 @@ +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 --home-dir /root --groups root,wheel --shell /bin/bash build + - "echo 'build ALL = NOPASSWD: /usr/bin/pacman' > /etc/sudoers.d/build" + script: + - ulimit -c 0 + - sudo -u build -- makepkg --syncdeps --noconfirm + artifacts: + name: $CI_PROJECT_NAME-$CI_COMMIT_REF_NAME + expire_in: 1 week + paths: + - config.x86_64 + - "*.pkg.tar.xz" + only: + refs: + - tags + +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: + - tags -- GitLab