diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3e99d558df8f62db7296f8073e1c64dac08d759e..88c3cd142a3a20654cd3213ceb3a1629082891b8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,7 +19,7 @@ test:
        junit:
          - report.xml
 
-deploy_uniformgrid_gpu:
+deploy_walberla_dashboards:
   stage: deploy
   tags:
     - docker
@@ -29,6 +29,16 @@ deploy_uniformgrid_gpu:
     - python3 dashboards/deploy.py
   when: manual
 
+deploy_fe2ti_dashboards:
+  stage: deploy
+  tags:
+    - docker
+  image: python:3.8
+  script:
+    - pip install --user .
+    - python3 dashboards/deploy.py "fe2ti"
+  when: manual
+
 trigger_cb_pipeline:
   stage: trigger
   image: curlimages/curl
diff --git a/dashboards/deploy.py b/dashboards/deploy.py
index 6d527297af949c98a5f04dd788f5adff12354099..2d8fb07084f90d1de7350cc82aeeb82f5f7c8b49 100644
--- a/dashboards/deploy.py
+++ b/dashboards/deploy.py
@@ -3,6 +3,7 @@ import logging
 
 import dashboards.dashboard_list as boards
 from dashboards.upload import upload_dashboard
+from dashboards.dashboard_fe2ti import dashboard_fe2ti
 
 logger = logging.getLogger(__file__)
 logger.setLevel(logging.INFO)
@@ -29,10 +30,14 @@ def main():
         dashboards = (f"dashboard_{db}" for db in args.dashboards)
 
     walberla_folder = 8
-    for board in dashboards:
-        logger.info(f"Try to upload {board}")
-        board = getattr(boards, board)
-        upload_dashboard(board(), folder=walberla_folder)
+    fe2ti_folder = 40
+    for board_name in dashboards:
+        logger.info(f"Try to upload {board_name}")
+        if "fe2ti" in board_name:
+            upload_dashboard(dashboard_fe2ti(), folder=fe2ti_folder)
+        else:
+            board = getattr(boards, board_name)
+            upload_dashboard(board(), folder=walberla_folder)
 
 
 if __name__ == "__main__":