Skip to content

Sync UserAdminModule docs with source functions #160

Sync UserAdminModule docs with source functions

Sync UserAdminModule docs with source functions #160

Workflow file for this run

name: Jekyll Build Validation
on:
push:
branches: [prod]
pull_request:
branches: [prod]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
env:
BUNDLE_PATH: vendor/bundle
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1'
bundler-cache: true
- name: Build site
run: bundle exec jekyll build --trace --future
- name: Compute FULL_BASE from _config.yml
id: compute_base
shell: bash
run: |
SITE_URL=$(ruby -ryaml -e 'c=YAML.load_file("_config.yml") || {}; puts c["url"].to_s')
BASEURL=$(ruby -ryaml -e 'c=YAML.load_file("_config.yml") || {}; puts c["baseurl"].to_s')
SITE_URL=${SITE_URL%/}
if [[ "$BASEURL" == "/" ]]; then
BASEURL=""
fi
if [[ -n "$BASEURL" && ${BASEURL:0:1} != / ]]; then
BASEURL="/$BASEURL"
fi
FULL_BASE="${SITE_URL}${BASEURL}"
if [[ -z "$FULL_BASE" ]]; then
echo '::error::Computed full_base is empty'
exit 1
fi
echo "full_base=$FULL_BASE" >> "$GITHUB_OUTPUT"
echo "::notice::full_base=$FULL_BASE"
- name: Verify generated CSS is referenced
shell: pwsh
run: ./build/Verify-CssLink.ps1 -SiteRoot "_site" -CssHint "hyde.css"
- name: Run HTMLProofer on built site
env:
CI: "true"
FULL_BASE: ${{ steps.compute_base.outputs.full_base }}
run: |
bundle exec htmlproofer \
--swap-urls "^/\:${FULL_BASE}/" \
./_site
- name: Run SEO guardrail checks
run: |
ruby build/seo-checks.rb --site ./_site --out ./seo-checks.json
env:
CI: "true"
SEO_SOFT_FAIL_WARNINGS: "false"
SEO_SITEMAP_OPTIONAL: "false"
- name: Upload seo-checks.json
if: always()
uses: actions/upload-artifact@v4
with:
name: seo-checks
path: seo-checks.json
- name: Upload built site artifact
uses: actions/upload-artifact@v4
with:
name: jekyll-site
path: _site