Add pipline/deploy_postgres_compose.yml

This commit is contained in:
pashko 2025-08-09 21:12:45 +08:00
parent 7e881d8f55
commit de5d662f95

View File

@ -0,0 +1,91 @@
workflow:
rules:
- if: $CI_PIPELINE_SOURCE == "push"
when: never
- when: always
variables:
GIT_CLEAN_FLAGS: -ffdx
ENV:
value: "dev"
options:
- "dev"
description: 'environment'
HOST:
value: "$APN2_HOST"
options:
- "$APN1_HOST"
- "$APN2_HOST"
- "$DBN1_HOST"
- "$DBN2_HOST"
description: 'host to deploy'
POSTGRESQL_HOSTNAME_NAME:
value: ""
description: 'hostname for postgresql/container_name'
POSTGRES_PORT:
value: ""
description: 'external port for postgresql_container'
PROXY_NETWORK:
value: "proxy"
description: 'network port for postgresql_container'
POSTGRES_DB:
value: ""
description: 'default DB postgresql instance'
POSTGRES_USER:
value: ""
description: 'default USER postgresql instance'
POSTGRES_PASSWORD:
value: ""
description: 'PASSWD for default USER postgresql instance'
include:
- project: 'sed/devops/services/gitlab-flow/ci-flow'
ref: v1.0.1
file: 'deploy_docker-compose-context.yml'
.set_docker_context_vars: &set-docker-context-vars
- |
case "$HOST" in
"$APN1_HOST")
export CA_FILE="$APN1_HOST_CA_FILE"
export CERT_FILE="$APN1_HOST_CERT_FILE"
export KEY_FILE="$APN1_HOST_KEY_FILE"
;;
"$APN2_HOST")
export CA_FILE="$APN2_HOST_CA_FILE"
export CERT_FILE="$APN2_HOST_CERT_FILE"
export KEY_FILE="$APN2_HOST_KEY_FILE"
;;
"$DBN1_HOST")
export CA_FILE="$DBN1_HOST_CA_FILE"
export CERT_FILE="$DBN1_HOST_CERT_FILE"
export KEY_FILE="$DBN1_HOST_KEY_FILE"
;;
"$DBN2_HOST")
export CA_FILE="$DBN2_HOST_CA_FILE"
export CERT_FILE="$DBN2_HOST_CERT_FILE"
export KEY_FILE="$DBN2_HOST_KEY_FILE"
;;
*)
echo "Unknown HOST: $HOST"
exit 1
;;
esac
deploy_compose:
extends: .deploy_from_registry
environment:
name: ${ENV}
variables:
DOCKER_HOST: ""
REGISTRY: $SED_DOCKER_REGISTRY
REGISTRY_USER: $SED_NEXUS_USER
REGISTRY_PASSWORD: $SED_NEXUS_PASS_BASE64
COMPOSE_FILES: -f ./docker-compose.yml
before_script:
- *set-docker-context-vars
tags:
- mmedo