diff --git a/manifest-integration-pipelines.yml.jinja2 b/manifest-integration-pipelines.yml.jinja2
index dab38b5514588f9afb58e2b6c51239fa8f4ef852..43bbe222c0a50f47466a654ace96467a75623747 100644
--- a/manifest-integration-pipelines.yml.jinja2
+++ b/manifest-integration-pipelines.yml.jinja2
@@ -35,10 +35,13 @@ generate:
     # to explicitly pass any of them as command line arguments.
 {% for integration in INTEGRATION.split('\n') %}
 {% set SOURCE_BRANCH, TARGET_PROJECT, TARGET_BRANCH = integration.split(':') %}
+{% if SOURCE_BRANCH == CI_MERGE_REQUEST_TARGET_BRANCH_NAME ||
+      SOURCE_BRANCH == CI_COMMIT_REF_NAME %}
     - TARGET_PROJECT={{ TARGET_PROJECT }}
         .gitlab-ci/scripts/generate_job_from_template.py
         --template=.gitlab-ci/manifest-integration-jobs.yml.jinja2
         > manifest-integration-jobs-{{ loop.index }}.yml
+{% endif %}
 {% endfor %}
   artifacts:
     expire_in: 4 weeks
@@ -50,6 +53,8 @@ generate:
 # --------------------------------------------------------------------------------------
 {% for integration in INTEGRATION.split('\n') %}
 {% set SOURCE_BRANCH, TARGET_PROJECT, TARGET_BRANCH = integration.split(':') %}
+{% if SOURCE_BRANCH == CI_MERGE_REQUEST_TARGET_BRANCH_NAME ||
+      SOURCE_BRANCH == CI_COMMIT_REF_NAME %}
 
 {{ TARGET_PROJECT }}:{{ TARGET_BRANCH }}:
   stage: infrastructure
@@ -72,4 +77,5 @@ generate:
       job: generate
     strategy: depend
 
+{% endif %}
 {% endfor %}