48 lines
1.5 KiB
YAML
48 lines
1.5 KiB
YAML
name: Deploy to GitHub Pages
|
||
|
||
on:
|
||
# Trigger the workflow every time you push to the `main` branch
|
||
# Using a different branch name? Replace `main` with your branch’s name
|
||
push:
|
||
branches: ["main"]
|
||
# Allows you to run this workflow manually from the Actions tab on GitHub.
|
||
workflow_dispatch:
|
||
|
||
# Allow this job to clone the repo and create a page deployment
|
||
permissions:
|
||
contents: read
|
||
pages: write
|
||
id-token: write
|
||
|
||
jobs:
|
||
build:
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- name: Checkout your repository using git
|
||
uses: actions/checkout@v4
|
||
- name: Cache cargo & target directories
|
||
uses: Swatinem/rust-cache@v2
|
||
with:
|
||
key: "webcompiler"
|
||
- name: Install Rust
|
||
uses: dtolnay/rust-toolchain@stable
|
||
with:
|
||
targets: wasm32-unknown-unknown
|
||
- name: Install wasm-pack-cli
|
||
uses: jetli/wasm-pack-action@v0.2.0
|
||
- name: Install, build, and upload your site output
|
||
uses: withastro/action@v2
|
||
with:
|
||
package-manager: pnpm@latest
|
||
|
||
deploy:
|
||
needs: build
|
||
runs-on: ubuntu-latest
|
||
environment:
|
||
name: github-pages
|
||
url: ${{ steps.deployment.outputs.page_url }}
|
||
steps:
|
||
- name: Deploy to GitHub Pages
|
||
id: deployment
|
||
uses: actions/deploy-pages@v4
|