diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 4e464e3..bfa65fa 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -6,7 +6,7 @@ on: - master jobs: - build: + build-and-deploy: runs-on: ubuntu-latest steps: @@ -43,4 +43,67 @@ jobs: echo "Version: $COMMIT_HASH" > ./publish/web/wwwroot/version.txt echo "Built: $BUILD_TIME" >> ./publish/web/wwwroot/version.txt cp ./publish/web/wwwroot/version.txt ./publish/admin/wwwroot/version.txt - echo "✓ Build complete - Version: $COMMIT_HASH" + echo "Build version: $COMMIT_HASH" + + - name: Deploy Web + run: | + set -e + WEB_TIMESTAMP=$(date +%Y%m%d_%H%M%S) + DEPLOY_HOME="/home/kjh2064" + WEB_DEPLOY_DIR="$DEPLOY_HOME/deployments/taxbaik_${WEB_TIMESTAMP}" + + echo "=== Deploying Web v$(git rev-parse --short HEAD) ===" + mkdir -p "$WEB_DEPLOY_DIR" + cp -r ./publish/web "$WEB_DEPLOY_DIR/" + ln -sfn "$WEB_DEPLOY_DIR/web" "$DEPLOY_HOME/taxbaik_active" + + echo "=== Stopping TaxBaik.Web ===" + pkill -9 -f "TaxBaik.Web" || echo "No process" + sleep 2 + + echo "=== Starting TaxBaik.Web ===" + cd "$DEPLOY_HOME/taxbaik_active" + export ConnectionStrings__Default="Host=localhost;Database=taxbaikdb;Username=taxbaik;Password=taxbaik123" + export ASPNETCORE_ENVIRONMENT=Production + export ASPNETCORE_URLS=http://127.0.0.1:5001 + nohup /usr/local/dotnet/dotnet TaxBaik.Web.dll > web.log 2>&1 & + sleep 2 + echo "✓ Web deployed" + + - name: Deploy Admin + run: | + set -e + ADMIN_TIMESTAMP=$(date +%Y%m%d_%H%M%S) + DEPLOY_HOME="/home/kjh2064" + ADMIN_DEPLOY_DIR="$DEPLOY_HOME/deployments/taxbaik_admin_${ADMIN_TIMESTAMP}" + + echo "=== Deploying Admin v$(git rev-parse --short HEAD) ===" + mkdir -p "$ADMIN_DEPLOY_DIR" + cp -r ./publish/admin "$ADMIN_DEPLOY_DIR/" + ln -sfn "$ADMIN_DEPLOY_DIR/admin" "$DEPLOY_HOME/taxbaik_admin_active" + + echo "=== Stopping TaxBaik.Admin ===" + pkill -9 -f "TaxBaik.Admin" || echo "No process" + sleep 2 + + echo "=== Starting TaxBaik.Admin ===" + cd "$DEPLOY_HOME/taxbaik_admin_active" + export ConnectionStrings__Default="Host=localhost;Database=taxbaikdb;Username=taxbaik;Password=taxbaik123" + export ASPNETCORE_ENVIRONMENT=Production + export ASPNETCORE_URLS=http://127.0.0.1:5002 + nohup /usr/local/dotnet/dotnet TaxBaik.Admin.dll > admin.log 2>&1 & + sleep 2 + echo "✓ Admin deployed" + + - name: Verify deployment + run: | + DEPLOY_HOME="/home/kjh2064" + echo "=== Deployment Verification ===" + echo "Latest version:" + cat "$DEPLOY_HOME/taxbaik_active/wwwroot/version.txt" + echo "" + echo "Web process:" + ps aux | grep TaxBaik.Web | grep -v grep || echo "Process not found" + echo "" + echo "Admin process:" + ps aux | grep TaxBaik.Admin | grep -v grep || echo "Process not found"