From 1e367810dc3277338f5dfdf38c27923de9eafab0 Mon Sep 17 00:00:00 2001 From: Thong Kuah Date: Fri, 9 Nov 2018 17:01:35 +1300 Subject: Use except:variables to fix multiple variable jobs As `only:variables` has the effect of being satisfied by any one of variable expression - this will create a situation where e.g. the dast job will be active even if there's no cluster. So use `except:variables which requires each and every variable expression to be satisfied. --- lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml | 36 ++++++++++------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml b/lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml index 1e26d0a2d6a..e50c46f3f3f 100644 --- a/lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml +++ b/lib/gitlab/ci/templates/Auto-DevOps.gitlab-ci.yml @@ -147,11 +147,10 @@ performance: only: refs: - branches - variables: - - $KUBECONFIG except: variables: - $PERFORMANCE_DISABLED + - $KUBECONFIG == null sast: stage: test @@ -226,8 +225,6 @@ dast: only: refs: - branches - variables: - - $KUBECONFIG variables: - $GITLAB_FEATURES =~ /\bdast\b/ except: @@ -235,6 +232,7 @@ dast: - master variables: - $DAST_DISABLED + - $KUBECONFIG == null review: stage: review @@ -256,13 +254,12 @@ review: only: refs: - branches - variables: - - $KUBECONFIG except: refs: - master variables: - $REVIEW_DISABLED + - $KUBECONFIG == null stop_review: stage: cleanup @@ -280,13 +277,12 @@ stop_review: only: refs: - branches - variables: - - $KUBECONFIG except: refs: - master variables: - $REVIEW_DISABLED + - $KUBECONFIG == null # Staging deploys are disabled by default since # continuous deployment to production is enabled by default @@ -310,10 +306,11 @@ staging: only: refs: - master - variables: - - $KUBECONFIG variables: - $STAGING_ENABLED + except: + variables: + - $KUBECONFIG == null # Canaries are also disabled by default, but if you want them, # and know what the downsides are, you can enable this by setting @@ -336,10 +333,11 @@ canary: only: refs: - master - variables: - - $KUBECONFIG variables: - $CANARY_ENABLED + except: + variables: + - $KUBECONFIG == null .production: &production_template stage: production @@ -365,14 +363,13 @@ production: only: refs: - master - variables: - - $KUBECONFIG except: variables: - $STAGING_ENABLED - $CANARY_ENABLED - $INCREMENTAL_ROLLOUT_ENABLED - $INCREMENTAL_ROLLOUT_MODE + - $KUBECONFIG == null production_manual: <<: *production_template @@ -381,8 +378,6 @@ production_manual: only: refs: - master - variables: - - $KUBECONFIG variables: - $STAGING_ENABLED - $CANARY_ENABLED @@ -390,6 +385,7 @@ production_manual: variables: - $INCREMENTAL_ROLLOUT_ENABLED - $INCREMENTAL_ROLLOUT_MODE + - $KUBECONFIG == null # This job implements incremental rollout on for every push to `master`. @@ -419,14 +415,13 @@ production_manual: only: refs: - master - variables: - - $KUBECONFIG variables: - $INCREMENTAL_ROLLOUT_MODE == "manual" - $INCREMENTAL_ROLLOUT_ENABLED except: variables: - $INCREMENTAL_ROLLOUT_MODE == "timed" + - $KUBECONFIG == null .timed_rollout_template: &timed_rollout_template <<: *rollout_template @@ -435,10 +430,11 @@ production_manual: only: refs: - master - variables: - - $KUBECONFIG variables: - $INCREMENTAL_ROLLOUT_MODE == "timed" + except: + variables: + - $KUBECONFIG == null timed rollout 10%: <<: *timed_rollout_template -- cgit v1.2.1