180 lines
3.1 KiB
YAML
180 lines
3.1 KiB
YAML
# ── fix/* and feat/* branches — DEV only ─────────────────────────────────────
|
|
#
|
|
# dry-run runs automatically after lints pass.
|
|
# apply is manual and requires dry-run to succeed first.
|
|
|
|
dry-run:dev:branch:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH =~ /^(fix|feat)\/.+/
|
|
variables:
|
|
APIM_ENV: DEV
|
|
needs:
|
|
- lint:config-json
|
|
- lint:apps-yaml
|
|
environment:
|
|
name: DEV
|
|
action: prepare
|
|
|
|
apply:dev:branch:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH =~ /^(fix|feat)\/.+/
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: DEV
|
|
needs:
|
|
- dry-run:dev:branch
|
|
environment:
|
|
name: DEV
|
|
|
|
# ── Tags — all environments (dry-run and apply are both manual) ───────────────
|
|
#
|
|
# Intended workflow per environment:
|
|
# 1. Trigger dry-run manually to verify what will change.
|
|
# 2. Once dry-run passes, apply becomes available — trigger it to deploy.
|
|
|
|
# DEV
|
|
dry-run:dev:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: DEV
|
|
environment:
|
|
name: DEV
|
|
action: prepare
|
|
|
|
apply:dev:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: DEV
|
|
needs:
|
|
- dry-run:dev
|
|
environment:
|
|
name: DEV
|
|
|
|
# REC
|
|
dry-run:rec:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: REC
|
|
environment:
|
|
name: REC
|
|
action: prepare
|
|
|
|
apply:rec:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: REC
|
|
needs:
|
|
- dry-run:rec
|
|
environment:
|
|
name: REC
|
|
|
|
# FORM
|
|
dry-run:form:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: FORM
|
|
environment:
|
|
name: FORM
|
|
action: prepare
|
|
|
|
apply:form:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: FORM
|
|
needs:
|
|
- dry-run:form
|
|
environment:
|
|
name: FORM
|
|
|
|
# PERFS
|
|
dry-run:perfs:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PERFS
|
|
environment:
|
|
name: PERFS
|
|
action: prepare
|
|
|
|
apply:perfs:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PERFS
|
|
needs:
|
|
- dry-run:perfs
|
|
environment:
|
|
name: PERFS
|
|
|
|
# PREPROD
|
|
dry-run:preprod:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PREPROD
|
|
environment:
|
|
name: PREPROD
|
|
action: prepare
|
|
|
|
apply:preprod:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PREPROD
|
|
needs:
|
|
- dry-run:preprod
|
|
environment:
|
|
name: PREPROD
|
|
|
|
# PROD
|
|
dry-run:prod:
|
|
extends: .dry-run-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PROD
|
|
environment:
|
|
name: PROD
|
|
action: prepare
|
|
|
|
apply:prod:
|
|
extends: .apply-base
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
when: manual
|
|
variables:
|
|
APIM_ENV: PROD
|
|
needs:
|
|
- dry-run:prod
|
|
environment:
|
|
name: PROD
|