Skip to content

Workflow file for this run

name: Build documentation
on:
push:
branches: ["master"]
workflow_dispatch:
permissions:
id-token: write
pages: write
env:
INSTANCE: 'Writerside/hi'
ARTIFACT: 'webHelpHI2-all.zip'
DOCKER_VERSION: '233.14938'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build docs using Writerside Docker builder
uses: JetBrains/writerside-github-action@v4
with:
instance: ${{ env.INSTANCE }}
artifact: ${{ env.ARTIFACT }}
docker-version: ${{ env.DOCKER_VERSION }}
- name: Save artifact with build results
uses: actions/upload-artifact@v4
with:
name: docs
path: |
artifacts/${{ env.ARTIFACT }}
artifacts/report.json
retention-days: 7
test:
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
name: docs
path: artifacts
- name: Test documentation
uses: JetBrains/writerside-checker-action@v1
with:
instance: ${{ env.INSTANCE }}
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: [build, test]
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
name: docs
- name: Unzip artifact
run: unzip -O UTF-8 -qq '${{ env.ARTIFACT }}' -d dir
- name: Copy PWA files
run: |
echo "Adding PWA files..."
cp manifest.json dir/
cp service-worker.js dir/
mkdir -p dir/icons/
cp -r icons/ dir/icons/
find dir -name "*.html" -exec sed -i '/<\/head>/i \
<link rel="manifest" href="/manifest.json">\
<meta name="theme-color" content="#000000">' {} \;
find dir -name "*.html" -exec sed -i '/<\/body>/i \
<script>\
if ("serviceWorker" in navigator) {\
navigator.serviceWorker.register("/service-worker.js")\
.then(function() { console.log("Service Worker Registered"); });\
}\
</script>' {} \;
- name: Setup Pages
uses: actions/configure-pages@v4
- name: Package and upload Pages artifact
uses: actions/upload-pages-artifact@v3
with:
path: dir
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4