diff --git a/.gitignore b/.gitignore
index 7f249738c56e97da80aaecaebb99c528eba78d3a..af7bbfbee9775dc73c6cb0081ccc537a3213be74 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,5 @@
 **/.project
 **/.pydevproject
 **/.settings/org.eclipse.core.resources.prefs
+**/dist
+**/.ipynb_checkpoints
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ca3a617c1b052564c46e2a5e426fe9a1e86787d6..09b1b4ba9f3dfe7e312ca045d49424c2304516be 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -5,7 +5,7 @@ variables:
   PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
   # The PBR dependency requires a set version, not actually used
   # Instead `util/lofar_git.py:get_version()` is used.
-  PBR_VERSION: "0.1"
+  # PBR_VERSION: "0.1"
 cache:
   paths:
     - .cache/pip
@@ -15,6 +15,7 @@ stages:
   - static-analysis
   - unit-tests
   - integration-tests
+  - packaging
 newline_at_eof:
       stage: linting
       before_script:
@@ -73,3 +74,16 @@ integration_test:
     - export HOSTNAME=$(cat /run/systemd/netif/leases/2 | grep ^ADDRESS= | awk -F'=' '{print $2}')
     - echo $HOSTNAME
     - sudo $CI_PROJECT_DIR/sbin/run_integration_test.sh
+wheel_packaging:
+  stage: packaging
+  artifacts:
+    paths:
+      - devices/dist/*.whl
+  before_script:
+    - sudo apt-get update
+    - sudo apt-get install -y git
+    - pip3 install -r devices/test-requirements.txt
+    - pip3 install -r docker-compose/itango/lofar-requirements.txt
+  script:
+    - cd devices
+    - python setup.py bdist_wheel