name: Build Hexo Site on: push: branches: [main, master] workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '20' - name: Cache npm dependencies uses: actions/cache@v4 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-node- - name: Install dependencies run: npm install - name: Build Hexo run: npm run build - name: Deploy to local directory run: | rm -rf /home/ubuntu/html/* cp -r public/* /home/ubuntu/html/ echo "✅ Hexo 构建完成,已输出到 /home/ubuntu/html"