gitlab-ci
Fri Aug 04 2023 03:35:39 GMT+0000 (Coordinated Universal Time)
Saved by @namnt
variables: APP_NAME: app_name DOCKER_HUB_PULL: hub.vtcc.vn:8989 DOCKER_HUB_PUSH: hub.vtcc.vn:8999 OUTPUT_IMAGE_TAG: $DOCKER_HUB_PUSH/vtcc/chatbot/$APP_NAME DOCKER_HUB_USER: vtcc DOCKER_HUB_PASS: vtcc@2017 SSH_SKIP_VERIFY: "-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" stages: - build - build_image - deploy .template_build: &build_tmp stage: build variables: MODULE: module JAR_FILE: jar_file_name DOCKER_FILE: path_to_docker_file script: - javapath=$(ls /usr/lib/jvm | grep -m1 java-11-openjdk) - export JAVA_HOME="/usr/lib/jvm/$javapath" - export PATH=$JAVA_HOME/bin:$PATH - mvn clean package -B -Dmaven.test.skip=true - mkdir -p artifacts/$APP_NAME/target - cp $MODULE/target/$JAR_FILE artifacts/$APP_NAME/target - cp $MODULE/$DOCKER_FILE artifacts/$APP_NAME artifacts: expire_in: 1 day paths: - artifacts tags: - build .template_build_image: &build_image_tmp stage: build_image script: - cd artifacts/$APP_NAME - ls -l - LOG=$(docker build .) - IMAGE_ID=$(echo $LOG | awk -F"Successfully built" '{print $2}') - echo "IMAGE_ID:" $IMAGE_ID - docker tag $IMAGE_ID $OUTPUT_IMAGE_TAG:latest - docker login -u $DOCKER_HUB_USER -p $DOCKER_HUB_PASS $DOCKER_HUB_PUSH - docker push $OUTPUT_IMAGE_TAG:latest artifacts: expire_in: 1 day tags: - docker-build .template_deploy_docker: &deploy_docker_tmp stage: deploy variables: DEPLOY_USER: deploy_user DEPLOY_HOST: deploy_host DEPLOY_PATH: deploy_path CONF_PATH: config_path DOCKER_COMPOSE_PATH: docker_compose_path script: - echo 'Deploy to' $DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH - ssh $SSH_SKIP_VERIFY -tt $DEPLOY_USER@$DEPLOY_HOST "mkdir -p $DEPLOY_PATH" - ssh $SSH_SKIP_VERIFY -tt $DEPLOY_USER@$DEPLOY_HOST "mkdir -p $DEPLOY_PATH/config" - ssh $SSH_SKIP_VERIFY -tt $DEPLOY_USER@$DEPLOY_HOST "cd $DEPLOY_PATH && docker-compose down || true" - scp $SSH_SKIP_VERIFY $DOCKER_COMPOSE_PATH $DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH/docker-compose.yml # - scp $SSH_SKIP_VERIFY -r $CONF_PATH $DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH/config - 'rsync -e "ssh -o StrictHostKeyChecking=no" -aii --recursive --delete $CONF_PATH/ $DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH/config/' - ssh $SSH_SKIP_VERIFY -tt $DEPLOY_USER@$DEPLOY_HOST "cd $DEPLOY_PATH && docker-compose pull && docker-compose up -d" tags: - deploy build_dev_bitel: <<: *build_tmp variables: MODULE: bitel JAR_FILE: bitel-0.0.1-SNAPSHOT.jar APP_NAME: bitel-gateway DOCKER_FILE: Dockerfile only: refs: - bitel build_image_dev_bitel: <<: *build_image_tmp variables: APP_NAME: bitel-gateway dependencies: - build_dev_bitel only: refs: - bitel deploy_dev_bitel: <<: *deploy_docker_tmp variables: DEPLOY_USER: platform DEPLOY_HOST: 192.168.101.43 DEPLOY_PATH: /home/platform/bitel/deploy CONF_PATH: bitel/src/main/resources/ DOCKER_COMPOSE_PATH: bitel/docker-compose.yml dependencies: - build_image_dev_bitel only: refs: - bitel #Test-tool build_test_bot_dev: <<: *build_tmp variables: MODULE: test_bot JAR_FILE: test_bot-0.0.1-SNAPSHOT.jar APP_NAME: test-tool DOCKER_FILE: Dockerfile only: refs: - feature/test_tool_dev build_image_test_bot_dev: <<: *build_image_tmp variables: APP_NAME: test-tool dependencies: - build_test_bot_dev only: refs: - feature/test_tool_dev deploy_test_bot_dev: <<: *deploy_docker_tmp variables: DEPLOY_USER: platform DEPLOY_HOST: 192.168.101.43 DEPLOY_PATH: /home/platform/test-tool/deploy CONF_PATH: test_bot/src/main/resources/ DOCKER_COMPOSE_PATH: test_bot/docker-compose.yml dependencies: - build_image_test_bot_dev only: refs: - feature/test_tool_dev # CYBERBOT-CMS-HCC build_CYBERBOT_CMS_HCC_dev: <<: *build_tmp variables: MODULE: Cyberbot_CMS_HCC JAR_FILE: Cyberbot_CMS_HCC-0.0.1-SNAPSHOT.jar APP_NAME: cyberbot-cms-hcc DOCKER_FILE: Dockerfile only: refs: - cyberbot-CMS-HCC-dev build_image_CYBERBOT_CMS_HCC_dev: <<: *build_image_tmp variables: APP_NAME: cyberbot-cms-hcc dependencies: - build_CYBERBOT_CMS_HCC_dev only: refs: - cyberbot-CMS-HCC-dev deploy_CYBERBOT_CMS_HCC_dev: <<: *deploy_docker_tmp variables: DEPLOY_USER: platform DEPLOY_HOST: 192.168.101.43 DEPLOY_PATH: /home/platform/cyberbot-cms-hcc/deploy CONF_PATH: Cyberbot_CMS_HCC/src/main/resources DOCKER_COMPOSE_PATH: Cyberbot_CMS_HCC/docker-compose.yml dependencies: - build_image_CYBERBOT_CMS_HCC_dev only: refs: - cyberbot-CMS-HCC-dev ################################ CQCT ################################ build_CQCT_dev: <<: *build_tmp variables: MODULE: cqct JAR_FILE: cqct-0.0.1-SNAPSHOT.jar APP_NAME: cyberbot-cqct DOCKER_FILE: Dockerfile only: refs: - cqct-dev build_image_CQCT_dev: <<: *build_image_tmp variables: APP_NAME: cyberbot-cqct dependencies: - build_CQCT_dev only: refs: - cqct-dev deploy_CQCT_dev: <<: *deploy_docker_tmp variables: DEPLOY_USER: platform DEPLOY_HOST: 192.168.101.43 DEPLOY_PATH: /home/platform/cqct/deploy CONF_PATH: cqct/src/main/resources DOCKER_COMPOSE_PATH: cqct/docker-compose-dev.yml dependencies: - build_image_CQCT_dev only: refs: - cqct-dev #---- prod ----# build_CQCT_prod: <<: *build_tmp variables: MODULE: cqct JAR_FILE: cqct-0.0.1-SNAPSHOT.jar APP_NAME: cyberbot-cqct DOCKER_FILE: Dockerfile only: refs: - cqct build_image_CQCT_prod: <<: *build_image_tmp variables: APP_NAME: cyberbot-cqct dependencies: - build_CQCT_prod only: refs: - cqct deploy_CQCT_prod: <<: *deploy_docker_tmp variables: DEPLOY_USER: platform DEPLOY_HOST: 10.30.154.235 DEPLOY_PATH: /home/platform/cqct/deploy CONF_PATH: cqct/src/main/resources DOCKER_COMPOSE_PATH: cqct/docker-compose-prod.yml dependencies: - build_image_CQCT_prod only: refs: - cqct
Comments