diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 2c7510f..1542ac0 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -3,7 +3,7 @@ name: Deploy Quartz on: push: branches: - - master + - master # 본인이 사용하는 메인 브랜치명으로 수정하세요 jobs: build: @@ -16,11 +16,12 @@ jobs: - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 22 # Quartz 최신 요구 사양에 맞춤 + node-version: 20 - name: Install & Build run: | npm ci + # 1. 빌드 전 확실히 초기화 rm -rf public npx quartz build @@ -30,6 +31,19 @@ jobs: host: ${{ secrets.GCE_HOST }} username: ${{ secrets.GCE_USERNAME }} key: ${{ secrets.GCE_SSH_KEY }} - source: "public/*" # public 폴더 안의 모든 파일을 대상으로 함 - target: "/home/dihwang/white-smith-blog/public" # 서버의 목적지 폴더 - strip_components: 1 # 전송 시 'public/' 폴더 구조는 떼고 내용물만 전송 \ No newline at end of file + 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 + # 3. 서버에 남아있는 유령 파일들 싹 제거 (매우 중요) + find . -mindepth 1 -delete + # 4. 압축 해제 + tar -xzf ../deploy.tar.gz + rm ../deploy.tar.gz \ No newline at end of file