diff --git a/manifest-integration-jobs.yml.jinja2 b/manifest-integration-jobs.yml.jinja2
index 50152974608dfbf0c65ebfdedde52eb9ac588b77..ad0edb0beafacf5a542b4da2c58f15f2b2304bd5 100644
--- a/manifest-integration-jobs.yml.jinja2
+++ b/manifest-integration-jobs.yml.jinja2
@@ -16,10 +16,6 @@ workflow:
 
 stages:
   - infrastructure
-  - integrate
-  - merge
-  - build
-  - check
 
 # --------------------------------------------------------------------------------------
 # Stage: infrastructure
@@ -59,7 +55,6 @@ yamllint:
 # --------------------------------------------------------------------------------------
 merge:
   extends: .infrastructure
-  stage: merge
   rules:
     - if: $CI_COMMIT_BRANCH == $SOURCE_BRANCH
   script:
@@ -82,7 +77,8 @@ merge:
 # Stage: build
 # --------------------------------------------------------------------------------------
 build:
-  stage: build
+  stage: infrastructure
+  needs: ["integrate"]
   rules:
     # Do not run build if the "skip build" label is set on the merge request
     - if: $CI_MERGE_REQUEST_LABELS =~ /skip build/
@@ -100,7 +96,6 @@ build:
 # --------------------------------------------------------------------------------------
 check:
   extends: .infrastructure
-  stage: check
   rules:
     # Do not run check if the "skip build" label is set on the merge request
     - if: $CI_MERGE_REQUEST_LABELS =~ /skip build/