diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..991d8b8e67a7c978e1d32e9fb31349e41ddbde86
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,33 @@
+image: python:2.7
+
+# Change pip's cache directory to be inside the project directory since we can
+# only cache local items.
+variables:
+  PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache"
+
+# Pip's cache doesn't store the python packages
+# https://pip.pypa.io/en/stable/reference/pip_install/#caching
+#
+# If you want to also cache the installed packages, you have to install
+# them in a virtualenv and cache it as well.
+cache:
+  paths:
+  - .cache/pip
+  - venv/
+
+before_script:
+  - python -V
+  - pip install virtualenv
+  - virtualenv venv
+  - source venv/bin/activate
+  - pip install ansible
+  - chmod 700 $(pwd)
+
+  - printf '[defaults]\nroles_path=../' > ./ansible.cfg
+
+  - ls -la ./
+
+lint:
+  stage: test
+  script:
+    - ansible-playbook tests/test.yml -i tests/inventory --syntax-check
diff --git a/tests/test.yml b/tests/test.yml
index a7ca193abcdfa4a431437294e9688a4909b4f86d..ad05a274d9125e35f025ed373010dd9e5916fb6a 100644
--- a/tests/test.yml
+++ b/tests/test.yml
@@ -2,4 +2,4 @@
 - hosts: localhost
   remote_user: root
   roles:
-    - ansible-gitlab-runner
+    - gitlab-runner