variables: PROJECT_NAME: fastapi_app_template DOCKER_IMAGE_DOMAIN: hub.airpig.cn LATEST_VERSION: latest K8S_NS: default DEPLOYMENT_NAME: fastapi-app-template before_script: - PATH=.:$PATH - IMAGE_NAME=${DOCKER_IMAGE_DOMAIN}/library/${PROJECT_NAME}:${LATEST_VERSION} stages: - build - deploy build-staging:dep: stage: build only: - master tags: - master 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 tags: - master script: - echo "===== start deploy ==========" - echo $CI_COMMIT_BRANCH - if [[ $CI_COMMIT_BRANCH == 'master' ]] && [[ "$(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 !!!!!======="