diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0bb22b33c2c82ded8c1b8cd32e9bc9d62339f9da
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,36 @@
+# common configuration parts
+.common: &common
+  before_script:
+    - rm -rf .git # ups
+  tags:
+    - shared-fi
+
+.debian: &debian
+  image: cxx:latest
+  script:
+    - apt-get update >& apt.log
+    - make prerequisites >& prerequisites.log
+    - make toolchain >& toolchain.log
+    - make CMAKE_EXTRA="-DOPT_Z3=OFF" >& build.log
+    - make unit >& unit.log
+    - make functional >& functional.log
+  artifacts:
+    paths:
+      - "*.log"
+    expire_in: 1 month
+    when: always
+
+# actual builds
+build_clang:
+  <<: *common
+  <<: *debian
+  variables:
+    CC: "clang"
+    CXX: "clang++"
+
+build_gcc:
+  <<: *common
+  <<: *debian
+  variables:
+    CC: "gcc"
+    CXX: "g++"