| Step | Arguments | Status | ||
|---|---|---|---|---|
| Start of Pipeline - (4 min 1 sec in block) | ||||
| node - (4 min 1 sec in block) | ||||
| node block - (4 min 1 sec in block) | ||||
| stage - (1 sec in block) | Declarative: Checkout SCM | |||
| stage block (Declarative: Checkout SCM) - (1 sec in block) | ||||
| checkout - (0.94 sec in self) | ||||
| withEnv - (4 min 0 sec in block) | GIT_BRANCH, GIT_COMMIT, GIT_PREVIOUS_COMMIT, GIT_PREVIOUS_SUCCESSFUL_COMMIT, GIT_URL | |||
| withEnv block - (4 min 0 sec in block) | ||||
| withEnv - (4 min 0 sec in block) | APP_IMAGE, HEALTH_CHECK_INTERVAL, DEPLOY_TIMEOUT, HEALTH_CHECK_RETRIES, COMPOSE_PROJECT_NAME | |||
| withEnv block - (4 min 0 sec in block) | ||||
| timeout - (3 min 59 sec in block) | ||||
| timeout block - (3 min 59 sec in block) | ||||
| timestamps - (3 min 59 sec in block) | ||||
| timestamps block - (3 min 59 sec in block) | ||||
| ansiColor - (3 min 59 sec in block) | xterm | |||
| ansiColor block - (3 min 59 sec in block) | ||||
| stage - (2 sec in block) | ๐๏ธ Prepare | |||
| stage block (๐๏ธ Prepare) - (1.9 sec in block) | ||||
| script - (1.8 sec in block) | ||||
| script block - (1.8 sec in block) | ||||
| cleanWs - (33 ms in self) | ||||
| checkout - (0.91 sec in self) | ||||
| sh - (0.29 sec in self) | echo "๐ SOSO Server CI/CD Pipeline Started" echo "๐ Build Information:" echo " โข Branch: ${GIT_BRANCH}" echo " โข Commit: ${GIT_COMMIT}" echo " โข Build: ${BUILD_NUMBER}" echo " โข Date: $(date '+%Y-%m-%d %H:%M:%S %Z')" echo " โข Image: ${APP_IMAGE}" echo "" | |||
| sh - (0.3 sec in self) | date +%Y%m%d-%H%M%S | |||
| sh - (0.28 sec in self) | git rev-parse --short HEAD | |||
| stage - (1 min 22 sec in block) | ๐งช Unit Tests | |||
| stage block (๐งช Unit Tests) - (1 min 22 sec in block) | ||||
| sh - (1 min 21 sec in self) | ||||
| junit - (0.16 sec in self) | ||||
| stage - (12 sec in block) | ๐๏ธ Build Application | |||
| stage block (๐๏ธ Build Application) - (11 sec in block) | ||||
| sh - (11 sec in self) | echo "๐๏ธ Building Application JAR..." set -eux # Build the application ./gradlew bootJar --info --parallel # Display build results echo "๐ฆ Build Results:" ls -la build/libs/ # Extract version information JAR_FILE=$(find build/libs -name "*.jar" -not -name "*plain*" | head -1) if [ -f "$JAR_FILE" ]; then JAR_SIZE=$(du -h "$JAR_FILE" | cut -f1) echo " โข JAR File: $(basename "$JAR_FILE")" echo " โข Size: $JAR_SIZE" fi | |||
| archiveArtifacts - (0.18 sec in self) | ||||
| stage - (1 min 46 sec in block) | ๐ณ Build Docker Image | |||
| stage block (๐ณ Build Docker Image) - (1 min 46 sec in block) | ||||
| sh - (1 min 46 sec in self) | echo "๐ณ Building Docker Image..." set -eux # Build Docker image with multiple tags docker build -t "${APP_IMAGE}" -t "${APP_IMAGE%:*}:${BUILD_TIMESTAMP}" -t "${APP_IMAGE%:*}:${GIT_SHORT_COMMIT}" --label "version=${BUILD_TIMESTAMP}" --label "commit=${GIT_SHORT_COMMIT}" --label "build-number=${BUILD_NUMBER}" . echo "๐ Docker Image Information:" docker images | grep "${APP_IMAGE%:*}" | head -5 # Clean up old images docker image prune -f --filter "until=72h" || true | |||
| stage - (36 sec in block) | ๐ Deploy to Production | |||
| stage block (๐ Deploy to Production) - (36 sec in block) | ||||
| script - (35 sec in block) | ||||
| script block - (35 sec in block) | ||||
| withCredentials - (35 sec in block) | ||||
| withCredentials block - (35 sec in block) | ||||
| sh - (35 sec in self) | ||||
| script - (0.33 sec in block) | ||||
| script block - (0.29 sec in block) | ||||
| sh - (0.27 sec in self) | echo "๐ Deployment Success!" # ๋ฐฐํฌ ๋๋ ํ ๋ฆฌ๋ก ์ด๋ DEPLOY_DIR=/srv/soso/app/SOSO-Server cd "$DEPLOY_DIR" echo "๐ Final Status:" docker compose ps echo "" echo "๐พ Cleaning up old images..." docker image prune -f --filter "until=24h" || true | |||
| stage - (0.49 sec in block) | Declarative: Post Actions | |||
| stage block (Declarative: Post Actions) - (0.46 sec in block) | ||||
| script - (0.38 sec in block) | ||||
| script block - (0.33 sec in block) | ||||
| sh - (0.27 sec in self) | echo "๐งน Pipeline Cleanup..." # Clean up temporary files rm -f .env || true | |||
| cleanWs - (32 ms in self) | ||||
| echo - (22 ms in self) | ๐ Pipeline completed successfully! |