.github/workflows/publish-website.yaml
changeset 76 f71bc296e23d
child 78 9cf28ee2a8e9
equal deleted inserted replaced
75:bcfc8238b4f6 76:f71bc296e23d
       
     1 # .github/workflows/publish.yml
       
     2 
       
     3 name: Publish website
       
     4 on:
       
     5   workflow_dispatch:
       
     6   release:
       
     7     types: [released, prereleased]
       
     8 
       
     9 jobs:
       
    10   build-doc:
       
    11     name: Build doc
       
    12     runs-on: macOS-latest
       
    13     steps:
       
    14       - name: Check out code
       
    15         uses: actions/checkout@v4
       
    16       - name: Set up JDK 21
       
    17         uses: actions/setup-java@v4
       
    18         with:
       
    19           distribution: 'zulu'
       
    20           java-version: 21
       
    21       - name: Setup Gradle
       
    22         uses: gradle/actions/setup-gradle@v4
       
    23       - name: Build api doc
       
    24         run: ./gradlew :dokka:dokkaGenerate
       
    25       - name: Setup python
       
    26         uses: actions/setup-python@v5
       
    27         with:
       
    28           python-version: 3.x
       
    29       - run: pip install mkdocs-material
       
    30       - name: Build site
       
    31         run: mkdocs build
       
    32       - name: Upload artifact
       
    33         uses: actions/upload-pages-artifact@v3
       
    34         with:
       
    35           path: site
       
    36 
       
    37   publish-doc:
       
    38     environment:
       
    39       name: github-pages
       
    40       url: ${{ steps.deployment.outputs.page_url }}
       
    41     runs-on: ubuntu-latest
       
    42     needs: build-doc
       
    43     permissions:
       
    44       pages: write      # to deploy to Pages
       
    45       id-token: write   # to verify the deployment originates from an appropriate source
       
    46     steps:
       
    47       - name: Deploy to GitHub Pages
       
    48         id: deployment
       
    49         uses: actions/deploy-pages@v4