42 lines
955 B
YAML
42 lines
955 B
YAML
variables:
|
|
PROJECT_NAME: fastapi_app_template
|
|
DOCKER_IMAGE_DOMAIN: 192.168.2.237:8088
|
|
LATEST_VERSION: latest
|
|
K8S_NS: default
|
|
DEPLOYMENT_NAME: fastapi-app-template
|
|
TAG: master
|
|
|
|
before_script:
|
|
- PATH=.:$PATH
|
|
- IMAGE_NAME=${DOCKER_IMAGE_DOMAIN}/library/${PROJECT_NAME}:${LATEST_VERSION}
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
|
|
deploy-staging:dep:
|
|
stage: build
|
|
only:
|
|
- master
|
|
tags:
|
|
- $TAG
|
|
script:
|
|
- echo "===== start build =========="
|
|
- docker build -t ${IMAGE_NAME} .
|
|
- docker push ${IMAGE_NAME}
|
|
- docker rmi ${IMAGE_NAME}
|
|
- echo "===== end build !!!!!! ====="
|
|
|
|
deploy-staging:dep:
|
|
stage: deploy
|
|
only:
|
|
- master
|
|
tags:
|
|
- $TAG
|
|
script:
|
|
- echo "===== start deploy =========="
|
|
- if [ "$(kubectl get deployment -n $K8S_NS | grep $DEPLOYMENT_NAME | awk '{print $1}')" ]; then
|
|
- kubectl rollout restart deployment $DEPLOYMENT_NAME -n $K8S_NS
|
|
- fi
|
|
- echo "===== end deploy !!!!!======="
|