162 lines
5.3 KiB
YAML
162 lines
5.3 KiB
YAML
include:
|
||
- local: ".gitlab/ci/templates/build-test.yml"
|
||
- local: ".gitlab/ci/templates/build-push.yml"
|
||
- local: ".gitlab/ci/templates/deploy.yml"
|
||
|
||
stages:
|
||
- build
|
||
- test
|
||
- deploy
|
||
|
||
# Джобы для сборки и тестирования при создании MR
|
||
monitoring_backend_test:
|
||
extends: .build_test_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.backend"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Monitoring/Monitoring.Api/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Api/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
monitoring_notifications_test:
|
||
extends: .build_test_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.notifications"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Monitoring/Monitoring.Notifications/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Notifications/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
monitoring_frontend_test:
|
||
extends: .build_test_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.frontend"
|
||
MODULE_DIR: "src/Monitoring/Monitoring.Web"
|
||
CI_DOCKERFILE: "Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Web/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
ping_test:
|
||
extends: .build_test_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.ping"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Ping/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Ping/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
- "src/Monitoring/Monitoring.Notifications.Client/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
# Джобы для сборки с пушем в реестр при коммите/слиянии в test/release
|
||
monitoring_backend_build:
|
||
extends: .build_push_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.backend"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Monitoring/Monitoring.Api/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Api/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
monitoring_notifications_build:
|
||
extends: .build_push_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.notifications"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Monitoring/Monitoring.Notifications/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Notifications/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
monitoring_frontend_build:
|
||
extends: .build_push_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.frontend"
|
||
MODULE_DIR: "src/Monitoring/Monitoring.Web"
|
||
CI_DOCKERFILE: "Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Monitoring/Monitoring.Web/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
ping_build:
|
||
extends: .build_push_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.ping"
|
||
MODULE_DIR: "src"
|
||
CI_DOCKERFILE: "Ping/Dockerfile"
|
||
rules:
|
||
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH =~ /^(release|test)$/'
|
||
changes:
|
||
- "src/Ping/**/*"
|
||
- "src/Monitoring/Monitoring.Infrastructure/**/*"
|
||
- "src/Monitoring/Monitoring.Common/**/*"
|
||
- "src/Monitoring/Monitoring.Services/**/*"
|
||
- "src/Monitoring/Monitoring.ServiceDefaults/**/*"
|
||
- "src/Monitoring/Monitoring.Notifications.Client/**/*"
|
||
when: on_success
|
||
- when: never
|
||
|
||
monitoring_backend_deploy:
|
||
extends: .deploy_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.backend"
|
||
|
||
monitoring_notifications_deploy:
|
||
extends: .deploy_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.notifications"
|
||
|
||
monitoring_frontend_deploy:
|
||
extends: .deploy_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.frontend"
|
||
|
||
ping_deploy:
|
||
extends: .deploy_template
|
||
variables:
|
||
IMAGE_NAME: "monitoring.ping"
|