name: Deploy Hugo Site on: push: branches: - main jobs: deploy-hugo-site: name: Build and Deploy to Server runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v4 - name: Setup Hugo uses: peaceiris/actions-hugo@v3 with: hugo-version: "latest" extended: true - name: Build Hugo Site run: hugo --minify - name: Deploy to Server via SSH uses: appleboy/scp-action@v0.1.7 with: host: ${{ secrets.HUGO_SITE_HOST }} username: ${{ secrets.HUGO_DEPLOY_USERNAME }} key: ${{ secrets.HUGO_DEPLOY_PRIVATE_KEY }} source: "public/" target: "${{ secrets.HUGO_SITE_LOCATION }}/" - name: Restart Hugo Container (Optional) uses: appleboy/ssh-action@v1.0.3 with: host: ${{ secrets.HUGO_SITE_HOST }} username: ${{ secrets.HUGO_DEPLOY_USERNAME }} key: ${{ secrets.HUGO_DEPLOY_PRIVATE_KEY }} script: | docker restart hugo