name: deploy-docs on: push: branches: - main jobs: build-and-deploy: runs-on: ubuntu-latest container: image: hugomods/hugo:latest # We mount both the existing Hugo site structure and the deployment target options: --user root -v /srv/caddy/sites:/deploy -v /srv/dev/hugo/wiki:/hugo-site steps: - name: Checkout Docs Source uses: actions/checkout@v4 - name: Sync Markdown to Hugo Site run: | # Clean the existing content in the mounted Hugo site rm -rf /hugo-site/content/* # Copy the new content from this repo into the Hugo content folder cp -r . /hugo-site/content/ # Remove Git-related metadata from the content folder rm -rf /hugo-site/content/.git /hugo-site/content/.gitea - name: Build and Deploy Hugo run: | cd /hugo-site hugo --minify --destination /deploy/wiki