workflow: rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' when: never # NO DEPLOYMENT ON CLASSICS BRANCH - if: '$CI_COMMIT_REF_PROTECTED == "false"' variables: ENVIRONMENT: "null" ENVIRONMENT_SHORT: "null" IMAGE_TAG: $CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$IMAGE_TAG # TESTING - develop only - if: '$CI_COMMIT_TAG == null && $CI_COMMIT_REF_NAME == "develop" && $CI_COMMIT_REF_PROTECTED == "true"' variables: ENVIRONMENT: testing ENVIRONMENT_SHORT: tst IMAGE_TAG: $CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$IMAGE_TAG # STAGING - main/master only - if: '($CI_COMMIT_REF_NAME == "main" || $CI_COMMIT_REF_NAME == "master") && $CI_COMMIT_REF_PROTECTED == "true"' variables: ENVIRONMENT: staging ENVIRONMENT_SHORT: stg IMAGE_TAG: $CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$IMAGE_TAG # PRODUCTION - tags only - if: '$CI_COMMIT_TAG && $CI_COMMIT_REF_PROTECTED == "true"' variables: ENVIRONMENT: production ENVIRONMENT_SHORT: prd IMAGE_TAG: $CI_COMMIT_TAG CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$IMAGE_TAG