diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index a71a22c..29ed21b 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -8,24 +8,32 @@ on: env: NODE_ENV: production - # 服务器上代码的路径(需要先手动克隆一次) - PROJECT_PATH: /www/dk_project/dk_app/rent jobs: deploy: runs-on: [self-hosted, rent-deploy] steps: - - name: Update code + - name: Clone or update code run: | - echo "更新代码..." - cd ${PROJECT_PATH} + WORK_DIR="/workspace/rent-deploy" + REPO_URL="https://gitea.pinzhuhui.com/xiaoquan/rent.git" - # 拉取最新代码 - git fetch origin - git checkout ${{ github.ref_name }} - git pull origin ${{ github.ref_name }} + echo "准备代码..." - echo "✅ 代码更新完成" + if [ -d "$WORK_DIR/.git" ]; then + echo "代码目录已存在,更新代码..." + cd $WORK_DIR + git fetch origin + git checkout ${{ github.ref_name }} + git pull origin ${{ github.ref_name }} + else + echo "首次克隆代码..." + git clone $REPO_URL $WORK_DIR + cd $WORK_DIR + git checkout ${{ github.ref_name }} + fi + + echo "✅ 代码准备完成" echo "当前分支: $(git branch --show-current)" echo "最新提交: $(git log -1 --oneline)" @@ -33,7 +41,7 @@ jobs: if: github.ref == 'refs/heads/test' run: | echo "部署到测试环境..." - cd ${PROJECT_PATH}/deploy/docker + cd /workspace/rent-deploy/deploy/docker export TEST_DB_PASSWORD="${{ secrets.TEST_DB_PASSWORD }}" export TEST_JWT_SECRET="${{ secrets.TEST_JWT_SECRET }}" @@ -53,7 +61,7 @@ jobs: if: github.ref == 'refs/heads/prod' run: | echo "部署到生产环境..." - cd ${PROJECT_PATH}/deploy/docker + cd /workspace/rent-deploy/deploy/docker export PROD_DB_PASSWORD="${{ secrets.PROD_DB_PASSWORD }}" export PROD_JWT_SECRET="${{ secrets.PROD_JWT_SECRET }}"