diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 00000000000..593d4e866d3 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,48 @@ +name: Build and host documentation +on: + push: + branches: + - master + +jobs: + build: + name: Build documentation + runs-on: ubuntu-latest + steps: + - name: Install Protoc + uses: arduino/setup-protoc@v1 + - name: Checkout + uses: actions/checkout@v3 + - name: Install nightly toolchain + run: rustup toolchain install nightly + - name: Build Documentation + run: cargo +nightly doc --no-deps --workspace -F full + env: + RUSTDOCFLAGS: "--cfg docsrs" + RUSTFLAGS: "--cfg docsrs" + - name: Add index file + run: | + mkdir host-docs + echo "" > target/doc/index.html + cp -r target/doc/* ./host-docs + - name: Upload documentation + uses: actions/upload-pages-artifact@v1.0.4 + with: + path: "host-docs/" + + deploy: + name: Deploy documentation + needs: build + permissions: + pages: write + id-token: write + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v1 +