Skip to content

[M] Publish Doc Site #26

[M] Publish Doc Site

[M] Publish Doc Site #26

name: "[M] Publish Doc Site"
on:
workflow_dispatch:
jobs:
build_and_publish_doc_site:
if: github.repository == 'hedgehogqa/scala-hedgehog'
runs-on: ubuntu-latest
strategy:
matrix:
scala:
- { version: "2.13.6", binary-version: "2.13", java-version: "11", java-distribution: "temurin" }
node:
- { version: "18.13.0" }
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: ${{ matrix.scala.java-version }}
distribution: ${{ matrix.scala.java-distribution }}
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node.version }}
registry-url: 'https://registry.npmjs.org'
- name: Cache sbt
uses: actions/cache@v4
with:
path: |
~/.ivy2/cache
~/.cache/coursier
~/.sbt
key: ${{ runner.os }}-sbt-${{ matrix.scala.binary-version }}-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('**/build.properties') }}
restore-keys: |
${{ runner.os }}-sbt-${{ matrix.scala.binary-version }}-
- name: Cache npm
uses: actions/cache@v4
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ matrix.node.version }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ matrix.node.version }}
- name: Build and publish website
env:
ALGOLIA_API_KEY: ${{ secrets.ALGOLIA_API_KEY }}
ALGOLIA_INDEX_NAME: ${{ secrets.ALGOLIA_INDEX_NAME }}
GA_TRACKING_ID: ${{ secrets.GA_TRACKING_ID }}
GA_ANONYMIZE_IP: ${{ secrets.GA_ANONYMIZE_IP }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
sbt \
++${{ matrix.scala.version }}! \
clean \
docs/mdoc \
docs/docusaurGenerateAlgoliaConfigFile \
docs/docusaurGenerateGoogleAnalyticsConfigFile \
docs/docusaurInstall \
docs/docusaurCleanBuild \
docs/docusaurBuild \
docs/publishToGitHubPages