ci: production preparation

This commit is contained in:
skeris 2024-01-28 20:02:32 +03:00
parent ce03bd1d21
commit 5a755dfd4e
3 changed files with 56 additions and 36 deletions

@ -8,42 +8,19 @@ stages:
- deploy - deploy
build-app: build-app:
stage: build extends: .build_template
tags:
- gobuild
variables:
DOCKER_BUILD_PATH: "./Dockerfile"
STAGING_BRANCH: "staging"
PRODUCTION_BRANCH: "main"
rules:
- if: $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH || $CI_COMMIT_BRANCH == $STAGING_BRANCH
when: on_success
before_script:
- echo PRODUCTION_BRANCH = $PRODUCTION_BRANCH
- echo STAGING_BRANCH = $STAGING_BRANCH
- echo CI_REGISTRY = $CI_REGISTRY
- echo CI_REGISTRY_USER = $CI_REGISTRY_USER
- echo CI_PROJECT_DIR = $CI_PROJECT_DIR
- echo CI_REGISTRY_IMAGE = $CI_REGISTRY_IMAGE
- echo CI_COMMIT_REF_SLUG = $CI_COMMIT_REF_SLUG
- echo DOCKER_BUILD_PATH = $DOCKER_BUILD_PATH
- echo CI_PIPELINE_ID = $CI_PIPELINE_ID
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
deploy-to-staging: deploy-to-staging:
stage: deploy
extends: .deploy_template
variables:
DEPLOY_TO: "staging"
BRANCH: "staging"
rules: rules:
- if: "$CI_COMMIT_BRANCH == $BRANCH" - if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH"
after_script: extends: .deploy_template
- ls tags:
- staging
extends: .deploy_template
deploy-to-prod:
rules:
- if: "$CI_COMMIT_BRANCH == $PRODUCTION_BRANCH"
tags:
- prod
extends: .deploy_template

@ -0,0 +1,43 @@
version: "3.3"
services:
customer-app-staging:
hostname: customer-service-staging
container_name: customer-service-staging
image: $CI_REGISTRY_IMAGE/main:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
tty: true
environment:
- HTTP_HOST=0.0.0.0
- HTTP_PORT=8065
- GRPC_HOST=0.0.0.0
- GRPC_PORT=9085
- GRPC_DOMEN=http://customer-service:9085
- MONGO_HOST=10.8.0.8
- MONGO_PORT=27017
- MONGO_USER=$MONGO_USER-prod
- MONGO_PASSWORD=$MONGO_PASSWORD
- MONGO_DB_NAME=customer
- MONGO_AUTH=customer
- KAFKA_BROKERS=10.8.0.8:9092
- KAFKA_TOPIC_TARIFF=tariffs
- AUTH_MICROSERVICE_USER_URL=http://10.8.0.8:59300/user
- HUBADMIN_MICROSERVICE_TARIFF_URL=http://10.8.0.8:59303/tariff
- CURRENCY_MICROSERVICE_TRANSLATE_URL=http://10.8.0.8:3131/change
- DISCOUNT_MICROSERVICE_GRPC_HOST=10.8.0.8:9001
- PAYMENT_MICROSERVICE_GRPC_HOST=10.8.0.8:9085
- VERIFICATION_MICROSERVICE_USER_URL=http://10.8.0.8:7035/verification
- TEMPLATEGEN_MICROSERVICE_URL=10.6.0.17
- JWT_PUBLIC_KEY=$JWT_PUBLIC_KEY
- JWT_ISSUER=pena-auth-service
- JWT_AUDIENCE=pena
ports:
- 10.8.0.8:8065:8065
- 10.8.0.8:9065:9065
networks:
- default

@ -4,7 +4,7 @@ services:
customer-app-staging: customer-app-staging:
hostname: customer-service-staging hostname: customer-service-staging
container_name: customer-service-staging container_name: customer-service-staging
image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID image: $CI_REGISTRY_IMAGE/staging:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID
tty: true tty: true
environment: environment:
- HTTP_HOST=0.0.0.0 - HTTP_HOST=0.0.0.0