Fix workflow to checkout Hugo repo dynamicall
Some checks failed
deploy-docs / build-and-deploy (push) Failing after 29s
Some checks failed
deploy-docs / build-and-deploy (push) Failing after 29s
This commit is contained in:
@@ -9,23 +9,47 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: hugomods/hugo:latest
|
image: hugomods/hugo:latest
|
||||||
# Mount the Hugo site structure AND the deployment target
|
# We only need to mount the deployment target
|
||||||
options: --user root -v /srv/caddy/sites:/deploy -v /srv/dev/hugo/wiki:/hugo-site
|
options: --user root -v /srv/caddy/sites:/deploy
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Docs Source
|
# 1. Checkout the base Hugo project (assuming it's named 'wiki' or similar on your Gitea)
|
||||||
|
# We put it in the 'hugo-site' directory
|
||||||
|
- name: Checkout Hugo Framework
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: wompmacho/wiki # Adjust this if your Hugo project repo is named differently
|
||||||
|
path: hugo-site
|
||||||
|
# If the wiki repo is private, we need a token to clone it.
|
||||||
|
# The default GITHUB_TOKEN usually has access to other repos in the same org.
|
||||||
|
token: ${{ github.token }}
|
||||||
|
submodules: true
|
||||||
|
|
||||||
- name: Sync Markdown to Hugo Site
|
# 2. Checkout THIS repository (the markdown content) into the 'docs-content' directory
|
||||||
run: |
|
- name: Checkout Docs Content
|
||||||
# Clean the existing content in the mounted Hugo site
|
uses: actions/checkout@v4
|
||||||
rm -rf /hugo-site/content/*
|
with:
|
||||||
# Copy the new content from this repo into the Hugo content folder
|
path: docs-content
|
||||||
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
|
# 3. Merge the content and build
|
||||||
|
- name: Sync Markdown and Build
|
||||||
run: |
|
run: |
|
||||||
cd /hugo-site
|
# Ensure content directory exists in the Hugo project
|
||||||
hugo --minify --destination /deploy/wiki
|
mkdir -p hugo-site/content
|
||||||
|
|
||||||
|
# Clean old content
|
||||||
|
rm -rf hugo-site/content/*
|
||||||
|
|
||||||
|
# Copy new content from this repo to the Hugo content folder
|
||||||
|
cp -r docs-content/* hugo-site/content/
|
||||||
|
|
||||||
|
# Build the site
|
||||||
|
cd hugo-site
|
||||||
|
hugo --minify --destination public
|
||||||
|
|
||||||
|
# 4. Deploy to Caddy
|
||||||
|
- name: Deploy to Caddy
|
||||||
|
run: |
|
||||||
|
mkdir -p /deploy/wiki
|
||||||
|
rm -rf /deploy/wiki/*
|
||||||
|
cp -r hugo-site/public/* /deploy/wiki/
|
||||||
|
|||||||
Reference in New Issue
Block a user