mirror of
https://gitlab.sarex.io/infra/terraform-contour-mirror.git
synced 2026-08-05 18:31:00 +03:00
- Add modules: yc-s3, yc-postgresql, k8s-namespace, k8s-secrets - Add live configuration for stage environment - Add GitLab CI with downstream pipelines - Implement best practices from theory.md
41 lines
1.2 KiB
YAML
41 lines
1.2 KiB
YAML
# Основной GitLab CI пайплайн для Terraform инфраструктуры
|
||
# Использует downstream pipelines для динамической генерации джоб
|
||
|
||
stages:
|
||
- generate
|
||
- trigger
|
||
|
||
# Генерация динамического пайплайна на основе структуры live/
|
||
generate-pipeline:
|
||
stage: generate
|
||
image: alpine:latest
|
||
before_script:
|
||
- apk add --no-cache bash findutils
|
||
script:
|
||
- ./scripts/generate-pipeline.sh
|
||
artifacts:
|
||
paths:
|
||
- .gitlab-ci.generated.yml
|
||
expire_in: 1 hour
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||
- if: '$CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH == "main"'
|
||
- if: '$CI_COMMIT_BRANCH =~ /^feature\/.*/'
|
||
tags:
|
||
- yc
|
||
|
||
# Запуск downstream пайплайна с сгенерированной конфигурацией
|
||
trigger-downstream:
|
||
stage: trigger
|
||
trigger:
|
||
include:
|
||
- artifact: .gitlab-ci.generated.yml
|
||
job: generate-pipeline
|
||
strategy: depend
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
||
- if: '$CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH == "main"'
|
||
- if: '$CI_COMMIT_BRANCH =~ /^feature\/.*/'
|
||
tags:
|
||
- yc
|