Files
OpenUniFi/scripts/docs/publish-wiki.sh
T
Koda f5d14b0a79
Generate and publish developer Wiki / generated-wiki (pull_request) Successful in 14s
fixing wiki generation
2026-07-19 21:32:10 +00:00

52 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env sh
set -eu
if [ "$#" -gt 1 ]; then
echo "usage: $0 [WIKI_REPOSITORY_URL]" >&2
exit 2
fi
script_directory=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
repository_root=$(CDPATH= cd -- "$script_directory/../.." && pwd)
wiki_repository_url=${1:-}
temporary_directory=$(mktemp -d "${TMPDIR:-/tmp}/openuf-wiki.XXXXXX")
if [ -z "$wiki_repository_url" ]; then
origin_url=$(git -C "$repository_root" config --get remote.origin.url || true)
if [ -z "$origin_url" ]; then
echo "no origin remote found; pass the Gitea Wiki repository URL" >&2
exit 2
fi
source_repository_url=${origin_url%.git}
repository_parent=${source_repository_url%/*}
repository_name=${source_repository_url##*/}
wiki_repository_name=$(
printf '%s' "$repository_name" | tr '[:upper:]' '[:lower:]'
)
wiki_repository_url="$repository_parent/$wiki_repository_name.wiki.git"
fi
cleanup() {
rm -rf -- "$temporary_directory"
}
trap cleanup EXIT HUP INT TERM
git clone -- "$wiki_repository_url" "$temporary_directory/wiki"
"$script_directory/generate-wiki.py" --output "$temporary_directory/wiki"
"$script_directory/generate-wiki.py" --check \
--output "$temporary_directory/wiki"
cd "$temporary_directory/wiki"
git add -- Home.md Developer-Guide.md Call-Graph.md Runtime-Flow.md _Sidebar.md
if git diff --cached --quiet; then
echo "Gitea Wiki is already current"
exit 0
fi
git -c user.name="openUF documentation bot" \
-c user.email="actions@openuf.invalid" \
commit -m "docs: update generated developer wiki"
git push origin HEAD