diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 000000000000..5851af90e22c
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,18 @@
+image: alpine:edge
+
+build:
+  stage: build
+  before_script:
+    - apk add --no-cache gcc g++ musl-dev meson py3-yaml py3-sphinx linux-headers pkgconfig eudev eudev-dev
+  script:
+    - mkdir libcamera && cd libcamera && meson .. && ninja
+    - ninja Documentation/linkcheck
+    - DESTDIR=$PWD/package ninja install
+  artifacts:
+    expire_in: 6 hrs
+    paths:
+      - libcamera/Documentation/*
+      - libcamera/src/libcamera/libcamera.so
+      - libcamera/test/test_init
+      - libcamera/meson-logs/testlog.txt
+      - libcamera/package/*
