Configure github pages
Upload the doxygen output as artifact from the linux build and use that from the pages job where we combine the static website with our newly build HTML docs. The GitHub actions/download-artefact doesn't work across workflows so we use the other popular one that can do this. The rest of the job is basically copy/paste from the "Static HTML" example GitHub provides. To make this useful as drop-in replacement, replace the one fixed link to the API docs a relative one. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>master
parent
f75c0a2de6
commit
134c6bb28e
|
@ -34,7 +34,7 @@ jobs:
|
||||||
- name: Setup
|
- name: Setup
|
||||||
run: |
|
run: |
|
||||||
# -gdwarf-4 - see https://github.com/llvm/llvm-project/issues/56550.
|
# -gdwarf-4 - see https://github.com/llvm/llvm-project/issues/56550.
|
||||||
CFLAGS='-gdwarf-4' meson setup build
|
CFLAGS='-gdwarf-4' meson setup build -Denable-cool-uris=true
|
||||||
env:
|
env:
|
||||||
CC: ${{ matrix.compiler }}
|
CC: ${{ matrix.compiler }}
|
||||||
- name: Build
|
- name: Build
|
||||||
|
@ -53,3 +53,10 @@ jobs:
|
||||||
name: test logs
|
name: test logs
|
||||||
path: |
|
path: |
|
||||||
build/meson-logs/
|
build/meson-logs/
|
||||||
|
- name: Store doxygen docs for use by the pages workflow
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
if: success()
|
||||||
|
with:
|
||||||
|
name: doxygen-docs
|
||||||
|
path: |
|
||||||
|
build/html/
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
name: Deploy to GitHub pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["master"]
|
||||||
|
|
||||||
|
# Allow running this workflow manually from the Actions tab
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
|
||||||
|
# Allow only one concurrent deployment
|
||||||
|
concurrency:
|
||||||
|
group: "pages"
|
||||||
|
cancel-in-progress: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
environment:
|
||||||
|
name: github-pages
|
||||||
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Set up directory tree
|
||||||
|
run: mkdir -p public_html/doc/
|
||||||
|
- name: Download doxygen from Linux build
|
||||||
|
uses: dawidd6/action-download-artifact@v2
|
||||||
|
with:
|
||||||
|
workflow: linux.yml
|
||||||
|
workflow_conclusion: success
|
||||||
|
name: doxygen-docs
|
||||||
|
path: doxygen/
|
||||||
|
- name: Move doxygen to target directory
|
||||||
|
run: mv doxygen/ public_html/doc/current/
|
||||||
|
- name: Check out the static website
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
repository: xkbcommon/website
|
||||||
|
persist-credentials: false
|
||||||
|
path: website
|
||||||
|
- name: Move static website to target directory
|
||||||
|
run: mv website/* public_html/
|
||||||
|
- name: Setup Pages
|
||||||
|
uses: actions/configure-pages@v3
|
||||||
|
- name: Upload pages artifact
|
||||||
|
uses: actions/upload-pages-artifact@v1
|
||||||
|
with:
|
||||||
|
path: public_html/
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v2
|
Loading…
Reference in New Issue