Skip to content
Snippets Groups Projects
Commit 7c72363c authored by Cédric OLIVIER's avatar Cédric OLIVIER
Browse files

feat: Change boolean variable behaviour


BREAKING CHANGE: boolean variable now triggered on explicit 'true' value

Signed-off-by: default avatarCédric OLIVIER <cedric3.olivier@orange.com>
parent 259c6d6b
No related branches found
No related tags found
No related merge requests found
......@@ -124,7 +124,7 @@ Here are variables supported to configure review environments:
| Name | description | default value |
| ------------------------ | -------------------------------------- | ----------------- |
| `HELM_REVIEW_DISABLED` | Set to disable `review` env | _none_ (enabled) |
| `HELM_REVIEW_DISABLED` | Set to `true` to disable `review` env | _none_ (enabled) |
| `HELM_REVIEW_APP_NAME` | Application name for `review` env | `"${HELM_BASE_APP_NAME}-${CI_ENVIRONMENT_SLUG}"` (ex: `myproject-review-fix-bug-12`) |
| `HELM_REVIEW_NAMESPACE` | The Kubernetes namespace to use for `review` env _(only define to override default)_ | `$KUBE_NAMESPACE` |
| :lock: `HELM_REVIEW_KUBE_CONFIG` | kubeconfig content used for `review` env _(only define to override default)_ | `$HELM_DEFAULT_KUBE_CONFIG` |
......@@ -144,7 +144,7 @@ Here are variables supported to configure the integration environment:
| Name | description | default value |
| ------------------------ | -------------------------------------- | ----------------- |
| `HELM_INTEG_DISABLED` | Set to disable `integration` env | _none_ (enabled) |
| `HELM_INTEG_DISABLED` | Set to `true` to disable `integration` env | _none_ (enabled) |
| `HELM_INTEG_APP_NAME` | Application name for `integration` env | `$HELM_BASE_APP_NAME-integration` |
| `HELM_INTEG_NAMESPACE` | The Kubernetes namespace to use for `integration` env _(only define to override default)_ | `$KUBE_NAMESPACE` |
| :lock: `HELM_INTEG_KUBE_CONFIG` | kubeconfig content used for `integration` env _(only define to override default)_ | `$HELM_DEFAULT_KUBE_CONFIG` |
......@@ -161,7 +161,7 @@ Here are variables supported to configure the staging environment:
| Name | description | default value |
| ------------------------ | -------------------------------------- | ----------------- |
| `HELM_STAGING_DISABLED` | Set to disable `staging` env | _none_ (enabled) |
| `HELM_STAGING_DISABLED` | Set to `true` to disable `staging` env | _none_ (enabled) |
| `HELM_STAGING_APP_NAME` | Application name for `staging` env | `$HELM_BASE_APP_NAME-staging` |
| `HELM_STAGING_NAMESPACE` | The Kubernetes namespace to use for `staging` env _(only define to override default)_ | `$KUBE_NAMESPACE` |
| :lock: `HELM_STAGING_KUBE_CONFIG` | kubeconfig content used for `staging` env _(only define to override default)_ | `$HELM_DEFAULT_KUBE_CONFIG` |
......@@ -178,7 +178,7 @@ Here are variables supported to configure the production environment:
| Name | description | default value |
| ------------------------ | -------------------------------------- | ----------------- |
| `HELM_PROD_DISABLED` | Set to disable `production` env | _none_ (enabled) |
| `HELM_PROD_DISABLED` | Set to `true` to disable `production` env | _none_ (enabled) |
| `HELM_PROD_APP_NAME` | Application name for `production` env | `$HELM_BASE_APP_NAME` |
| `HELM_PROD_NAMESPACE` | The Kubernetes namespace to use for `production` env _(only define to override default)_ | `$KUBE_NAMESPACE` |
| :lock: `HELM_PROD_KUBE_CONFIG` | kubeconfig content used for `production` env _(only define to override default)_ | `$HELM_DEFAULT_KUBE_CONFIG` |
......@@ -223,7 +223,7 @@ This job [examines your chart for possible issues](https://helm.sh/docs/helm/hel
| Name | description | default value |
| --------------------- | ---------------------------------------- | ----------------- |
| `HELM_LINT_DISABLED` | Set to disable Helm lint | _none_ (enabled) |
| `HELM_LINT_DISABLED` | Set to `true` to disable Helm lint | _none_ (enabled) |
| `HELM_LINT_ARGS` | The Helm [command with options](https://helm.sh/docs/helm/helm_lint/) to trigger the analysis (_without dynamic arguments such as the chart path_) | `lint --strict` |
| `HELM_DEPENDENCY_ARGS` | The Helm [command with options](https://helm.sh/docs/helm/helm_dependency_update/) to update on-disk the chart dependencies (_without dynamic arguments such as the chart path_) | `dependency update` |
......@@ -234,7 +234,7 @@ These jobs perform a [Yaml Lint](https://github.com/adrienverge/yamllint) of you
| Name | description | default value |
| ------------------------ | ------------------------------------- | ----------------- |
| `HELM_YAMLLINT_IMAGE` | The Docker image used to run YamlLint test | `cytopia/yamllint` |
| `HELM_YAMLLINT_DISABLED` | Set to disable Yaml lint | _none_ (enabled) |
| `HELM_YAMLLINT_DISABLED` | Set to `true` to disable Yaml lint | _none_ (enabled) |
| `HELM_YAMLLINT_CONFIG` | Config used with the yamllint tool | `{extends: relaxed, rules: {line-length: {max: 160}}}` |
| `HELM_YAMLLINT_ARGS` | Arguments used by the lint job | `-f colored --strict` |
......@@ -244,7 +244,7 @@ This job runs [Kube-Score](https://kube-score.com/) on the resources to be creat
| Name | description | default value |
| --------------------- | ---------------------------------------- | ----------------- |
| `HELM_KUBE_SCORE_DISABLED` | Set to disable [Kube-Score](https://kube-score.com/) | _none_ (enabled) |
| `HELM_KUBE_SCORE_DISABLED` | Set to `true` to disable [Kube-Score](https://kube-score.com/) | _none_ (enabled) |
| `HELM_KUBE_SCORE_IMAGE` | The Docker image used to run [Kube-Score](https://kube-score.com/) | `zegl/kube-score:latest-helm3` |
| `HELM_KUBE_SCORE_ARGS` | Arguments used by the helm-score job | _none_ |
......@@ -256,7 +256,7 @@ This job [packages your chart into an archive](https://helm.sh/docs/helm/helm_pa
| --------------------- | ---------------------------------------- | ----------------- |
| `HELM_PACKAGE_ARGS` | The Helm [command with options](https://helm.sh/docs/helm/helm_package/) to perform the packaging (_without dynamic arguments such as the chart path_) | `package --dependency-update` |
| `HELM_SEMREL_RELEASE_DISABLED` | Set to disable usage of semrel release info for helm package | _none_ (enabled) |
| `HELM_SEMREL_RELEASE_DISABLED` | Set to `true` to disable usage of semrel release info for helm package | _none_ (enabled) |
#### `semantic-release` integration
......@@ -287,7 +287,7 @@ It uses the following variables:
| Name | description | default value |
| --------------------- | ---------------------------------------- | ----------------- |
| `HELM_TEST_ENABLED` | Set to enable Helm test | _none_ (disabled) |
| `HELM_TEST_ENABLED` | Set to `true` to enable Helm test | _none_ (disabled) |
| `HELM_TEST_ARGS` | The Helm [command with options](https://helm.sh/docs/helm/helm_test/) to perform acceptance test (_without dynamic arguments such as the chart path_) | `test` |
## Variants
......
......@@ -17,8 +17,8 @@ variables:
# Docker Image with Helm CLI tool (can be overridden)
HELM_CLI_IMAGE: "alpine/helm"
HELM_YAMLLINT_IMAGE: "cytopia/yamllint"
# HELM_LINT_DISABLED: "True"
# HELM_YAMLLINT_DISABLED: "True"
# HELM_LINT_DISABLED: "true"
# HELM_YAMLLINT_DISABLED: "true"
HELM_YAMLLINT_CONFIG: "{extends: relaxed, rules: {line-length: {max: 160}}}"
HELM_YAMLLINT_ARGS: "-f colored --strict"
HELM_LINT_ARGS: "lint --strict"
......@@ -40,17 +40,17 @@ variables:
# KUBE_NAMESPACE: "default"
# KUBECONFIG: ""
# HELM_REVIEW_DISABLED: "True"
# HELM_REVIEW_DISABLED: "true"
# HELM_REVIEW_VALUES: "values-review.yml"
# HELM_REVIEW_NAMESPACE: ""
# HELM_REVIEW_KUBE_CONFIG: ""
# HELM_INTEG_DISABLED: "True"
# HELM_INTEG_DISABLED: "true"
# HELM_INTEG_VALUES: "values-review.yml"
# HELM_INTEG_NAMESPACE: ""
# HELM_INTEG_KUBE_CONFIG: ""
# HELM_STAGING_DISABLED: "True"
# HELM_STAGING_DISABLED: "true"
# HELM_STAGING_VALUES: "values-staging.yml"
# HELM_STAGING_NAMESPACE: ""
# HELM_STAGING_KUBE_CONFIG: ""
......@@ -456,7 +456,7 @@ stages:
fi
}
if [[ -z "$TEMPLATE_CHECK_UPDATE_DISABLED" ]]; then check_for_update helm "1.4.2"; fi
if [[ "$TEMPLATE_CHECK_UPDATE_DISABLED" != "true" ]]; then check_for_update helm "1.4.2"; fi
unscope_variables
eval_all_secrets
......@@ -513,7 +513,7 @@ helm-lint:
- helm $HELM_DEPENDENCY_ARGS $HELM_CHART_DIR
- helm ${TRACE+--debug} $HELM_LINT_ARGS $HELM_CHART_DIR
rules:
- if: $CI_MERGE_REQUEST_ID || $HELM_LINT_DISABLED
- if: '$CI_MERGE_REQUEST_ID || $HELM_LINT_DISABLED == "true"'
when: never
- exists:
- "**/Chart.yaml"
......@@ -525,7 +525,7 @@ helm-values-review-lint:
- awkenvsubst < "$HELM_REVIEW_VALUES" > generated-values-review.yml
- yamllint -d "$HELM_YAMLLINT_CONFIG" $HELM_YAMLLINT_ARGS generated-values-review.yml
rules:
- if: $CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED
- if: '$CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED == "true"'
when: never
- if: $HELM_REVIEW_VALUES
......@@ -535,7 +535,7 @@ helm-values-integration-lint:
- awkenvsubst < "$HELM_INTEG_VALUES" > generated-values-integration.yml
- yamllint -d "$HELM_YAMLLINT_CONFIG" $HELM_YAMLLINT_ARGS generated-values-integration.yml
rules:
- if: $CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED
- if: '$CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED == "true"'
when: never
- if: $HELM_INTEG_VALUES
......@@ -545,7 +545,7 @@ helm-values-staging-lint:
- awkenvsubst < "$HELM_STAGING_VALUES" > generated-values-staging.yml
- yamllint -d "$HELM_YAMLLINT_CONFIG" $HELM_YAMLLINT_ARGS generated-values-staging.yml
rules:
- if: $CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED
- if: '$CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED == "true"'
when: never
- if: $HELM_STAGING_VALUES
......@@ -555,7 +555,7 @@ helm-values-prod-lint:
- awkenvsubst < "$HELM_PROD_VALUES" > generated-values-prod.yml
- yamllint -d "$HELM_YAMLLINT_CONFIG" $HELM_YAMLLINT_ARGS generated-values-prod.yml
rules:
- if: $CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED
- if: '$CI_MERGE_REQUEST_ID || $HELM_YAMLLINT_DISABLED == "true"'
when: never
- if: $HELM_PROD_VALUES
......@@ -569,7 +569,7 @@ helm-review-score:
- if: $CI_MERGE_REQUEST_ID
when: never
# exclude when $HELM_KUBE_SCORE_DISABLED is set
- if: $HELM_KUBE_SCORE_DISABLED
- if: '$HELM_KUBE_SCORE_DISABLED == "true"'
when: never
# else: allow failure
- if: $HELM_REVIEW_VALUES
......@@ -587,7 +587,7 @@ helm-integration-score:
- if: $CI_MERGE_REQUEST_ID
when: never
# exclude when $K8S_SCORE_DISABLED is set
- if: $HELM_KUBE_SCORE_DISABLED
- if: '$HELM_KUBE_SCORE_DISABLED == "true"'
when: never
# else: allow failure
- if: $HELM_INTEG_VALUES
......@@ -605,7 +605,7 @@ helm-staging-score:
- if: $CI_MERGE_REQUEST_ID
when: never
# exclude when $K8S_SCORE_DISABLED is set
- if: $HELM_KUBE_SCORE_DISABLED
- if: '$HELM_KUBE_SCORE_DISABLED == "true"'
when: never
# else: allow failure
- if: $HELM_STAGING_VALUES
......@@ -623,7 +623,7 @@ helm-prod-score:
- if: $CI_MERGE_REQUEST_ID
when: never
# exclude when $K8S_SCORE_DISABLED is set
- if: $HELM_KUBE_SCORE_DISABLED
- if: '$HELM_KUBE_SCORE_DISABLED == "true"'
when: never
# else: allow failure
- if: $HELM_PROD_VALUES
......@@ -643,7 +643,7 @@ helm-package:
- add_helm_repositories
script:
- |
if [[ "$SEMREL_INFO_ON" ]] && [[ "$SEMREL_INFO_NEXT_VERSION" ]] && [[ -z "$HELM_SEMREL_RELEASE_DISABLED" ]]
if [[ "$SEMREL_INFO_ON" ]] && [[ "$SEMREL_INFO_NEXT_VERSION" ]] && [[ "$HELM_SEMREL_RELEASE_DISABLED" != "true" ]]
then
log_info "semantic-release info is activated, using computed next version for release: \\e[1;94m${SEMREL_INFO_NEXT_VERSION}\\e[0m"
helm_version_opts="--app-version ${SEMREL_INFO_NEXT_VERSION} --version ${SEMREL_INFO_NEXT_VERSION}"
......@@ -773,7 +773,7 @@ helm-review:
resource_group: review/$CI_COMMIT_REF_NAME
rules:
# exclude merge requests, tags and on $HELM_REVIEW_DISABLED set
- if: '$HELM_REVIEW_DISABLED || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
- if: '$HELM_REVIEW_DISABLED == "true" || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
when: never
# only on non-production, non-integration branches
- if: '$CI_COMMIT_REF_NAME !~ $PROD_REF && $CI_COMMIT_REF_NAME !~ $INTEG_REF'
......@@ -792,7 +792,7 @@ helm-cleanup-review:
resource_group: review/$CI_COMMIT_REF_NAME
rules:
# exclude merge requests, tags and on $HELM_REVIEW_DISABLED set
- if: '$HELM_REVIEW_DISABLED || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
- if: '$HELM_REVIEW_DISABLED == "true" || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
when: never
# only on non-production, non-integration branches
- if: '$CI_COMMIT_REF_NAME !~ $PROD_REF && $CI_COMMIT_REF_NAME !~ $INTEG_REF'
......@@ -809,10 +809,10 @@ helm-test-review:
ENV_NAMESPACE: "$HELM_REVIEW_NAMESPACE"
rules:
# exclude merge requests, tags and on $HELM_REVIEW_DISABLED set
- if: '$HELM_REVIEW_DISABLED || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
- if: '$HELM_REVIEW_DISABLED == "true" || $CI_MERGE_REQUEST_ID || $CI_COMMIT_TAG'
when: never
# only on non-production, non-integration branches
- if: '$CI_COMMIT_REF_NAME !~ $PROD_REF && $CI_COMMIT_REF_NAME !~ $INTEG_REF && $HELM_TEST_ENABLED'
- if: '$CI_COMMIT_REF_NAME !~ $PROD_REF && $CI_COMMIT_REF_NAME !~ $INTEG_REF && $HELM_TEST_ENABLED == "true"'
# ==================================================
# Stage: integration
......@@ -835,7 +835,7 @@ helm-integration:
resource_group: integration
rules:
# exclude merge requests and on $HELM_INTEG_DISABLED set
- if: '$HELM_INTEG_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_INTEG_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on integration branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $INTEG_REF'
......@@ -854,7 +854,7 @@ helm-cleanup-integration:
resource_group: integration
rules:
# exclude merge requests and on $HELM_INTEG_DISABLED set
- if: '$HELM_INTEG_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_INTEG_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on integration branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $INTEG_REF'
......@@ -872,10 +872,10 @@ helm-test-integration:
ENV_VALUES: "$HELM_INTEG_VALUES"
rules:
# exclude merge requests and on $HELM_INTEG_DISABLED set
- if: '$HELM_INTEG_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_INTEG_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on integration branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $INTEG_REF && $HELM_TEST_ENABLED'
- if: '$CI_COMMIT_REF_NAME =~ $INTEG_REF && $HELM_TEST_ENABLED == "true"'
# ==================================================
# Stage: staging
......@@ -896,7 +896,7 @@ helm-staging:
resource_group: staging
rules:
# exclude merge requests and on $HELM_STAGING_DISABLED set
- if: '$HELM_STAGING_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_STAGING_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on production branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $PROD_REF'
......@@ -915,7 +915,7 @@ helm-cleanup-staging:
resource_group: staging
rules:
# exclude merge requests and on $HELM_STAGING_DISABLED set
- if: '$HELM_STAGING_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_STAGING_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on production branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $PROD_REF'
......@@ -932,10 +932,10 @@ helm-test-staging:
ENV_VALUES: "$HELM_STAGING_VALUES"
rules:
# exclude merge requests and on $HELM_STAGING_DISABLED set
- if: '$HELM_STAGING_DISABLED || $CI_MERGE_REQUEST_ID'
- if: '$HELM_STAGING_DISABLED == "true" || $CI_MERGE_REQUEST_ID'
when: never
# only on production branch(es)
- if: '$CI_COMMIT_REF_NAME =~ $PROD_REF && $HELM_TEST_ENABLED'
- if: '$CI_COMMIT_REF_NAME =~ $PROD_REF && $HELM_TEST_ENABLED == "true" '
# ==================================================
# Stage: production
# ==================================================
......@@ -962,7 +962,7 @@ helm-production:
- if: '$CI_COMMIT_REF_NAME !~ $PROD_REF'
when: never
# exclude if $HELM_PROD_DISABLED set
- if: $HELM_PROD_DISABLED
- if: '$HELM_PROD_DISABLED == "true"'
when: never
# if $AUTODEPLOY_TO_PROD: auto
- if: $AUTODEPLOY_TO_PROD
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment