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