From 49bf23c65b4e978760a6b71dc0b843f63447f2ae Mon Sep 17 00:00:00 2001 From: Timo Furrer <tuxtimo@gmail.com> Date: Tue, 18 Mar 2025 09:02:17 +0100 Subject: [PATCH] Support `fmt_allow_failure` input in all opinionated pipeline templates Closes https://gitlab.com/components/opentofu/-/issues/121 Changelog: added --- templates/full-pipeline.yml | 6 ++++++ templates/validate-plan-apply.yml | 6 ++++++ templates/validate-plan-destroy.yml | 6 ++++++ templates/validate-plan.yml | 6 ++++++ 4 files changed, 24 insertions(+) diff --git a/templates/full-pipeline.yml b/templates/full-pipeline.yml index 98403b1..7530d15 100644 --- a/templates/full-pipeline.yml +++ b/templates/full-pipeline.yml @@ -100,6 +100,10 @@ spec: default: '' type: string description: 'Path to a variables files relative to root_dir.' + fmt_allow_failure: + default: true + type: boolean + description: 'Whether the fmt job is allowed to fail or not.' fmt_rules: default: - if: $CI_PIPELINE_SOURCE == "merge_request_event" @@ -238,6 +242,7 @@ include: image_digest: $[[ inputs.image_digest ]] root_dir: $[[ inputs.root_dir ]] needs: [] + allow_failure: $[[ inputs.fmt_allow_failure ]] rules: $[[ inputs.fmt_rules ]] - local: '/templates/validate.yml' rules: @@ -439,6 +444,7 @@ stages: plan_name: $[[ inputs.plan_name ]] plan_artifacts_access: $[[ inputs.plan_artifacts_access ]] var_file: $[[ inputs.var_file ]] + fmt_allow_failure: $[[ inputs.fmt_allow_failure ]] fmt_rules: $[[ inputs.fmt_rules ]] validate_rules: $[[ inputs.validate_rules ]] plan_rules: $[[ inputs.plan_rules ]] diff --git a/templates/validate-plan-apply.yml b/templates/validate-plan-apply.yml index f72f9c9..3abadd3 100644 --- a/templates/validate-plan-apply.yml +++ b/templates/validate-plan-apply.yml @@ -87,6 +87,10 @@ spec: default: '' type: string description: 'Path to a variables files relative to root_dir.' + fmt_allow_failure: + default: true + type: boolean + description: 'Whether the fmt job is allowed to fail or not.' fmt_rules: default: - if: $CI_PIPELINE_SOURCE == "merge_request_event" @@ -202,6 +206,7 @@ include: image_digest: $[[ inputs.image_digest ]] root_dir: $[[ inputs.root_dir ]] needs: [] + allow_failure: $[[ inputs.fmt_allow_failure ]] rules: $[[ inputs.fmt_rules ]] - local: '/templates/validate.yml' rules: @@ -329,6 +334,7 @@ stages: plan_artifacts_access: $[[ inputs.plan_artifacts_access ]] var_file: $[[ inputs.var_file ]] fmt_rules: $[[ inputs.fmt_rules ]] + fmt_allow_failure: $[[ inputs.fmt_allow_failure ]] validate_rules: $[[ inputs.validate_rules ]] plan_rules: $[[ inputs.plan_rules ]] apply_rules: $[[ inputs.apply_rules ]] diff --git a/templates/validate-plan-destroy.yml b/templates/validate-plan-destroy.yml index b21f69b..c3def63 100644 --- a/templates/validate-plan-destroy.yml +++ b/templates/validate-plan-destroy.yml @@ -87,6 +87,10 @@ spec: default: '' type: string description: 'Path to a variables files relative to root_dir.' + fmt_allow_failure: + default: true + type: boolean + description: 'Whether the fmt job is allowed to fail or not.' fmt_rules: default: - if: $CI_PIPELINE_SOURCE == "merge_request_event" @@ -208,6 +212,7 @@ include: image_digest: $[[ inputs.image_digest ]] root_dir: $[[ inputs.root_dir ]] needs: [] + allow_failure: $[[ inputs.fmt_allow_failure ]] rules: $[[ inputs.fmt_rules ]] - local: '/templates/validate.yml' rules: @@ -360,6 +365,7 @@ stages: plan_name: $[[ inputs.plan_name ]] plan_artifacts_access: $[[ inputs.plan_artifacts_access ]] var_file: $[[ inputs.var_file ]] + fmt_allow_failure: $[[ inputs.fmt_allow_failure ]] fmt_rules: $[[ inputs.fmt_rules ]] validate_rules: $[[ inputs.validate_rules ]] plan_rules: $[[ inputs.plan_rules ]] diff --git a/templates/validate-plan.yml b/templates/validate-plan.yml index 136e9d7..8621206 100644 --- a/templates/validate-plan.yml +++ b/templates/validate-plan.yml @@ -77,6 +77,10 @@ spec: default: '' type: string description: 'Path to a variables files relative to root_dir.' + fmt_allow_failure: + default: true + type: boolean + description: 'Whether the fmt job is allowed to fail or not.' fmt_rules: default: - if: $CI_PIPELINE_SOURCE == "merge_request_event" @@ -187,6 +191,7 @@ include: root_dir: $[[ inputs.root_dir ]] needs: [] rules: $[[ inputs.fmt_rules ]] + allow_failure: $[[ inputs.fmt_allow_failure ]] - local: '/templates/validate.yml' rules: - if: '"$[[ inputs.trigger_in_child_pipeline ]]" == "false"' @@ -285,6 +290,7 @@ stages: plan_name: $[[ inputs.plan_name ]] artifacts_access: $[[ inputs.artifacts_access ]] var_file: $[[ inputs.var_file ]] + fmt_allow_failure: $[[ inputs.fmt_allow_failure ]] fmt_rules: $[[ inputs.fmt_rules ]] validate_rules: $[[ inputs.validate_rules ]] plan_rules: $[[ inputs.plan_rules ]] -- GitLab