name: Deploy documentation on: workflow_dispatch: # runs every monday at midnight schedule: - cron: "0 0 * * 1" push: branches: - master jobs: docs: name: Build and Deploy runs-on: ${{ matrix.os }} strategy: matrix: os: ["ubuntu-latest"] php: ["8.2"] clang: ["17"] mdbook: ["latest"] steps: - name: Checkout code uses: actions/checkout@v3 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} - name: Setup Rust uses: dtolnay/rust-toolchain@nightly - name: Cache LLVM and Clang id: cache-llvm uses: actions/cache@v3 with: path: ${{ runner.temp }}/llvm-${{ matrix.clang }} key: ${{ matrix.os }}-llvm-${{ matrix.clang }} - name: Setup LLVM & Clang uses: KyleMayes/install-llvm-action@v1 with: version: ${{ matrix.clang }} directory: ${{ runner.temp }}/llvm-${{ matrix.clang }} cached: ${{ steps.cache-llvm.outputs.cache-hit }} - name: Install mdbook uses: peaceiris/actions-mdbook@v1 with: mdbook-version: ${{ matrix.mdbook }} - name: Build guide run: mdbook build guide - name: Publish docs uses: JamesIves/github-pages-deploy-action@3.7.1 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: guide/book CLEAN: true