Skip to content

Reduce font size in command table of contents #161

Reduce font size in command table of contents

Reduce font size in command table of contents #161

Workflow file for this run

name: Deploy Hugo Site with Jekyll Redirects
on:
push:
branches:
- main
- html
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: "pages"
cancel-in-progress: false
defaults:
run:
shell: bash
jobs:
build:
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.128.0
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Setup Hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: ${{ env.HUGO_VERSION }}
extended: true
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
- name: Install npm dependencies
run: npm ci
- name: Build Tailwind CSS
run: npm run build:css
- name: Sync version data from docs repo
run: |
curl -o static/data/external.json https://raw.githubusercontent.com/dataplat/dbatools-docs/main/assets/external.json || echo "Warning: Could not sync version data"
- name: Transform dbatools index to commands.json
shell: pwsh
run: |
Write-Host "Transforming dbatools-index.json to commands.json..."
./scripts/transform-dbatools-index.ps1
Write-Host "✓ Transformation complete"
- name: Generate command documentation pages
shell: pwsh
run: |
Write-Host "Generating command documentation markdown files..."
./scripts/generate-command-pages.ps1
Write-Host "✓ Command pages generated successfully"
- name: Enrich commands.json with full content
shell: pwsh
run: |
Write-Host "Enriching commands.json with markdown content..."
./scripts/enrich-commands-json.ps1
Write-Host "✓ Enrichment complete"
- name: Update popular commands with rankings
shell: pwsh
run: |
Write-Host "Updating popular commands from rankings..."
./scripts/update-popular-commands.ps1
Write-Host "✓ Popular commands updated"
- name: Ensure commands URLs are correct
shell: pwsh
run: |
Write-Host "Verifying command URLs..."
./scripts/update-commands-urls.ps1
Write-Host "✓ URLs verified"
- name: Build Hugo site
run: hugo --minify
- name: Setup Ruby for Jekyll redirects
uses: ruby/setup-ruby@v1
with:
ruby-version: "3.1"
bundler-cache: false
- name: Install Jekyll and dependencies
run: |
gem install jekyll bundler
gem install jekyll-redirect-from
- name: Build Jekyll redirects
run: |
# Build Jekyll site with redirects
# Jekyll will process only the redirect/ folder and create HTML redirects
jekyll build --source ./redirect --destination _site/redirect
# Copy only the generated redirect HTML files to Hugo's public directory
# Skip copying other Jekyll-generated content
if [ -d "_site/redirect" ]; then
cp -r _site/redirect/* public/ 2>/dev/null || true
fi
# Also copy any top-level redirect files that were generated
find _site -maxdepth 1 -name "*.html" -type f | while read file; do
basename_file=$(basename "$file")
# Skip index.html and other non-redirect files
if [ "$basename_file" != "index.html" ]; then
cp "$file" "public/$basename_file" 2>/dev/null || true
fi
done
rm -rf _site
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: ./public
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4