Build Your Client Github Actions YAML

Raw
YAML
name: Build and Upload

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Setup Node
        uses: actions/setup-node@v4
        with:
          node-version: 22

      - name: Install Dependencies
        run: npm install

      - name: Build
        run: npm run build
        env:
          VITE_COMMIT_ID: ${{ github.sha }}

      - name: Upload Dist
        uses: appleboy/scp-action@v0.1.7
        with:
          host: ${{ secrets.SERVER_HOST }}
          username: ${{ secrets.SERVER_USER }}
          key: ${{ secrets.SERVER_KEY }}
          source: ".output/*"
          target: "/path/to/upload"
          strip_components: 1
          rm: true