name: Build and Deploy MkDocs on: push: branches: - main jobs: deploy-docs: runs-on: ubuntu-latest # runs-on: self-hosted container: #image: ubuntu:latest #image: python:3.11 # This community image has node, git, python3, and pip pre-installed image: catthehacker/ubuntu:act-22.04 #image: catthehacker/ubuntu:runner-22.04 # container runs as a non-root user (usually a user named runner) by default. volumes: - /var/www/git-pages:/var/www/git-pages steps: - name: Checkout Code uses: actions/checkout@v4 # - name: Set up Python # uses: actions/setup-python@v5 # with: # python-version: '3.11' - name: Install MkDocs & Plugins run: | #export PATH=/home/runner/.local/bin:$PATH python -m pip install --upgrade pip pip install mkdocs mkdocs-material #python -m pip install --root-user-action=ignore --upgrade pip #pip install --root-user-action=ignore mkdocs mkdocs-material - name: Build Static Site run: mkdocs build - name: Deploy to Web Server Folder run: | echo "=== CHECKING CURRENT DIRECTORY STRUCTURE ===" pwd echo "=== CHECKING MKDOCS OUTPUT ===" # Double check if 'site/' actually has files if [ -d "site" ]; then ls -la site/ else echo "ERROR: 'site/' directory does not exist!" exit 1 fi # Ensure target directory exists inside the container environment mkdir -p /var/www/git-pages/test echo "=== COPYING FILES ===" rm -rf /var/www/git-pages/test/* cp -R site/* /var/www/git-pages/test/ echo "=== VERIFYING DESTINATION INSIDE CONTAINER ===" ls -la /var/www/git-pages/test/