diff --git a/templates/full-pipeline.yml b/templates/full-pipeline.yml
index 7c73b416d0f400c3056a465f9a8b83d7b77a76c2..2c57455dfc90be8e5953f2a092fbf88fa0498856 100644
--- a/templates/full-pipeline.yml
+++ b/templates/full-pipeline.yml
@@ -145,3 +145,7 @@ include:
 # NOTE: we have to define this `needs` here, because inputs don't support arrays, yet.
 delete-state:
   needs: [destroy]
+  rules:
+    - if: '"$[[ inputs.create_delete_state_job ]]" == "true"'
+      when: always
+    - when: never