name: Documentation (main) on: push: branches: [main] workflow_dispatch: # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: contents: read pages: write id-token: write # Allow only one concurrent deployment concurrency: group: pages cancel-in-progress: true jobs: build: name: Build Documentation runs-on: ubuntu-latest steps: - uses: actions/checkout@main - uses: dtolnay/rust-toolchain@nightly - uses: Swatinem/rust-cache@v2 - name: Build documentation env: RUSTDOCFLAGS: "--cfg docsrs" run: | cargo +nightly doc --no-deps \ --features "lua55,vendored,async,send,serde,macros,anyhow,userdata-wrappers" - name: Create index redirect run: | echo ' Redirecting to mlua documentation

Redirecting to mlua documentation...

' > target/doc/index.html - name: Setup Pages uses: actions/configure-pages@v5 - name: Upload artifact uses: actions/upload-pages-artifact@v4 with: path: target/doc deploy: name: Deploy to GitHub Pages environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4