52 lines
2.0 KiB
YAML
52 lines
2.0 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@v3
|
|||
|
- name: Install Rust
|
|||
|
uses: dtolnay/rust-toolchain@stable
|
|||
|
with:
|
|||
|
targets: wasm32-unknown-unknown
|
|||
|
- name: Install wasm-bindgen-cli
|
|||
|
uses: jetli/wasm-bindgen-action@v0.2.0
|
|||
|
- name: Build wasm
|
|||
|
run: |
|
|||
|
cd src/wasm/webcompiler &&
|
|||
|
cargo build --release &&
|
|||
|
wasm-bindgen --target web --out-dir ./pkg/ --out-name webcompiler ./target/wasm32-unknown-unknown/release/webcompiler.wasm &&
|
|||
|
cd ../../..
|
|||
|
- name: Install, build, and upload your site output
|
|||
|
uses: withastro/action@v1
|
|||
|
with:
|
|||
|
# path: . # The root location of your Astro project inside the repository. (optional)
|
|||
|
# node-version: 18 # The specific version of Node that should be used to build your site. Defaults to 18. (optional)
|
|||
|
package-manager: pnpm@latest # The Node package manager that should be used to install dependencies and build your site. Automatically detected based on your lockfile. (optional)
|
|||
|
|
|||
|
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@v1
|