diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6e8de37..91c6bd8 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -22,21 +22,8 @@ jobs: run: | npm ci npx quartz build - echo "==========================================" - echo "1. 현재 폴더에 뭐가 생겼나?" - ls -F - echo "------------------------------------------" - echo "2. 'public' 폴더가 진짜 있나?" - if [ -d "public" ]; then - echo "✅ public 폴더 확인됨!" - ls -R public | head -n 20 # 너무 많을 수 있으니 상위 20개만 - else - echo "❌ public 폴더가 없습니다!" - fi - echo "------------------------------------------" - echo "3. index.html 파일은 어디 숨었나?" - find . -name "index.html" - echo "==========================================" + # 전송 효율을 위해 public 폴더를 압축합니다. + tar -czf deploy.tar.gz public - name: Deploy to GCE uses: appleboy/scp-action@master @@ -44,7 +31,17 @@ jobs: host: ${{ secrets.GCE_HOST }} username: ${{ secrets.GCE_USERNAME }} key: ${{ secrets.GCE_SSH_KEY }} - source: "public/" # '*' 대신 폴더 경로만 지정 - target: "/home/dihwang/white-smith-blog" # target에서 /public 제거 - strip_components: 0 # 폴더 구조를 그대로 전달 - # rm: true # (선택) 기존 서버의 public 폴더를 비우고 새로 올려서 깨끗하게 유지 + source: "deploy.tar.gz" + target: "/home/dihwang/white-smith-blog" + + - name: Extract Archive on GCE + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.GCE_HOST }} + username: ${{ secrets.GCE_USERNAME }} + key: ${{ secrets.GCE_SSH_KEY }} + script: | + cd /home/dihwang/white-smith-blog + # 기존 public 폴더 백업 후 압축 해제 (안전한 교체) + tar -xzf deploy.tar.gz + rm deploy.tar.gz \ No newline at end of file