diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 04e832402292530aae089e76a52bb83d87392591..b72ad830ed3a55e5a57d664cd04e4fd0356edba2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -24,6 +24,7 @@ variables:
   CPPLIB_REGISTRY_IMAGE: $CI_REGISTRY/caosdb/src/caosdb-cpplib/testenv:$CI_COMMIT_REF_NAME
 
   CPPINTTEST_BRANCHES: https://gitlab.indiscale.com/api/v4/projects/111/repository/branches
+  OCTAVELIB_BRANCHES: https://gitlab.indiscale.com/api/v4/projects/117/repository/branches
   GIT_SUBMODULE_STRATEGY: normal
 
   ## FOR DEBUGGING
@@ -103,28 +104,36 @@ trigger_prepare:
     # ... use an f-branch if posible...
     - F_BRANCH=dev
     - if echo "$CI_COMMIT_REF_NAME" | grep -c "^f-" ; then
+        F_BRANCH=$CI_COMMIT_REF_NAME ;
         if curl -o /dev/null -s -w "%{http_code}" $CPPINTTEST_BRANCHES/$CI_COMMIT_REF_NAME | grep "404"; then
           CPPINT_REF=dev ;
-          F_BRANCH=dev ;
         else
           CPPINT_REF=$CI_COMMIT_REF_NAME ;
-          F_BRANCH=$CI_COMMIT_REF_NAME ;
-        fi
+        fi;
+        if curl -o /dev/null -s -w "%{http_code}" $OCTAVELIB_BRANCHES/$CI_COMMIT_REF_NAME | grep "404"; then
+          OCTAVELIB_REF=dev ;
+        else
+          OCTAVELIB_REF=$CI_COMMIT_REF_NAME ;
+        fi;
       fi;
     # ... or use main if possible...
     - if [[ "$CI_COMMIT_REF_NAME" == "main" ]] ; then
         CPPINT_REF=main ;
+        OCTAVELIB_REF=main ;
         F_BRANCH=main ;
       fi
     - if echo "$CI_COMMIT_REF_NAME" | grep -c "^v" ; then
         CPPINT_REF=main ;
+        OCTAVELIB_REF=main ;
         F_BRANCH=main ;
       fi
     # ... and fall-back to dev
     - CPPINT_REF=${CPPINT_REF:-dev}
+    - OCTAVELIB_REF=${OCTAVELIB_REF:-dev}
 
     # Write to dotenv
     - echo "CPPINT_REF=${CPPINT_REF}" >> "$DOTENV"
+    - echo "OCTAVELIB_REF=${OCTAVELIB_REF}" >> "$DOTENV"
     - echo "F_BRANCH=${F_BRANCH}" >> "$DOTENV"
     - cat "$DOTENV"
   artifacts:
@@ -154,6 +163,26 @@ trigger_inttest:
     branch: $CPPINT_REF
     strategy: depend
 
+trigger_octavelib:
+  allow_failure: true
+  stage: deploy
+  needs: [ trigger_prepare ]
+  inherit:
+    variables:
+      # List the variables that shall be inherited, which also means they will override any equally
+      # named varibles in child pipelines.
+      - TRIGGERED_BY_REPO
+      - TRIGGERED_BY_REF
+      - TRIGGERED_BY_HASH
+      - CPPLIB_REGISTRY_IMAGE
+  variables:
+    # dotenv variables must be set again here.
+    F_BRANCH: $F_BRANCH
+  trigger:
+    project: caosdb/src/caosdb-octavelib
+    branch: $OCTAVELIB_REF
+    strategy: depend
+
 # Build the sphinx documentation and make it ready for deployment by Gitlab Pages
 # Special job for serving a static website. See https://docs.gitlab.com/ee/ci/yaml/README.html#pages
 .pages_prepare: &pages_prepare