Skip to content

Merge branch 'main' of https://github.com/Vic-Nas/PythonSolutions #3

Merge branch 'main' of https://github.com/Vic-Nas/PythonSolutions

Merge branch 'main' of https://github.com/Vic-Nas/PythonSolutions #3

name: Generate VicUtils Docs
on:
push:
paths:
- 'vicutils/**/*.py'
branches:
- main
permissions:
contents: write
jobs:
generate-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Install pdoc
run: |
pip install pdoc3
echo "pdoc3 version:"
pdoc --version
- name: Check vicutils directory
run: |
echo "=== Contents of vicutils directory ==="
ls -la vicutils/
echo "=== Python files found ==="
find vicutils/ -name "*.py" -not -name "__init__.py"
- name: Generate documentation
run: |
cd vicutils
echo "=== Generating documentation ==="
for file in *.py; do
if [ "$file" != "__init__.py" ] && [ -f "$file" ]; then
echo "Processing: $file"
python -m pdoc --html --force --output-dir . "${file%.py}"
echo "Contents after pdoc:"
ls -la
# Move generated HTML
if [ -d "${file%.py}" ]; then
echo "Moving ${file%.py}/index.html to ${file%.py}.html"
mv "${file%.py}"/index.html "${file%.py}.html"
rm -rf "${file%.py}"
fi
fi
done
cd ..
echo "=== Final vicutils contents ==="
ls -la vicutils/
- name: Commit and push if changes
run: |
git config --local user.name "Vic-Nas"
git config --local user.email "github-actions@github.com"
git add vicutils/*.html || echo "No HTML files to add"
if git diff --staged --quiet; then
echo "No changes to commit"
else
echo "Committing changes"
git commit -m "Auto-generate VicUtils documentation [skip ci]"
git push
fi