diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e8798b81348396042a0a1bfa93f33bc9ca15205c..7f8b29f2b6ae6908e9dadf9ff20966c91348fa31 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,5 @@
 trigger-production:
-    stage: build
+    stage: deploy
     rules:
         - if: $CI_COMMIT_BRANCH == "live_production"
     variables:
@@ -9,3 +9,24 @@ trigger-production:
         # Pipeline B in other project can only be triggered if the user triggering this pipeline has permission to trigger B
         project: videoag_infra/production
         strategy: depend
+
+build-image:
+    stage: build
+    timeout: 30m
+    image:
+        name: gcr.io/kaniko-project/executor:v1.23.0-debug
+        entrypoint: [""]
+    script:
+        - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
+        - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CI_REGISTRY_IMAGE/videoag_api_testing:$CI_COMMIT_TAG
+
+run-tests:
+    stage: test
+    timeout: 30m
+    variables:
+        VIDEOAG_API_CONFIG: $CI_PROJECT_DIR/config/api_example_config
+    image:
+        name: registry.git.fsmpi.rwth-aachen.de/videoag/backend_api/videoag_api_testing:$CI_COMMIT_TAG
+        entrypoint: [""]
+    script:
+        - $CI_PROJECT_DIR/docker_start.sh -test
\ No newline at end of file