stages: # 构建 - build - dockerize - deploy variables: company_name: juyoutech project_name: germany_stock service_name: market build: image: maven:3.6.3-openjdk-8 stage: build only: - main - develop - develop_red before_script: - echo ' '$PWD'.m2 nexus nexus_public 9SZ4KXFvGt9N7kRU ' > $HOME/.m2/settings.xml artifacts: name: india_market_java.jar expire_in: 1 day paths: - ./target/india_market_java.jar script: - echo ">>>>>>Start Building<<<<<<" - pwd - java -version - mvn -v - mvn clean install -Dmaven.test.skip=true - ls - echo ">>>>>>Finish Building<<<<<<" dockerize: stage: dockerize tags: - hk2 dependencies: - build only: - main - develop - develop_red script: - echo ">>>>>>Start Building Docker Image<<<<<<" - pwd - ls -lah - echo $DOCKER_PASSWORD | docker login -u ${company_name} --password-stdin - docker build -t ${company_name}/${project_name}_${service_name} . - docker push ${company_name}/${project_name}_${service_name} - docker tag ${company_name}/${project_name}_${service_name} ${company_name}/${project_name}_${service_name}:$CI_PIPELINE_ID - docker push ${company_name}/${project_name}_${service_name}:$CI_PIPELINE_ID - docker tag ${company_name}/${project_name}_${service_name} ${company_name}/${project_name}_${service_name}:$CI_COMMIT_BRANCH - docker push ${company_name}/${project_name}_${service_name}:$CI_COMMIT_BRANCH - echo ${company_name}/${project_name}_${service_name}:$CI_COMMIT_BRANCH deploy-dev: stage: deploy only: - develop_red script: - echo "Deploying application..." - ls - apk update - apk add curl - apk add curl openssh sshpass - | sshpass -p "$SSH_PASS" ssh -o StrictHostKeyChecking=no ubuntu@"$SSH_HOST" "./deploy_service.sh market $CI_PIPELINE_ID" - echo "Application successfully deployed."