Skip to content

Merge pull request #34 from babaeee/mz3 #291

Merge pull request #34 from babaeee/mz3

Merge pull request #34 from babaeee/mz3 #291

# This is a basic workflow to help you get started with Actions
name: build_example_web
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [main]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- name: Setup emsdk
uses: mymindstorm/setup-emsdk@v11
with:
version: 3.1.4
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: wasm32-unknown-emscripten
- name: Setup Node
uses: actions/setup-node@v2
with:
node-version: "16"
# enable in wasm mode:
- name: Build wasm
run: |
cd hakim-json
EMCC_CFLAGS="-s TOTAL_STACK=32MB -s INITIAL_MEMORY=1024MB" cargo build -vv --release --target wasm32-unknown-emscripten
cd ..
node scripts/patch-emscripten.js ./target/wasm32-unknown-emscripten/release/hakim-json.js
cp ./target/wasm32-unknown-emscripten/release/hakim-json.js ./front/static/.
cp ./target/wasm32-unknown-emscripten/release/hakim_json.wasm ./front/static/.
# Runs a set of commands using the runners shell
- name: Build www
run: |
cd front
npm install -g yarn
yarn
yarn build
echo "proof.babaeee.ir" > dist/CNAME
echo "" > dist/.nojekyll
cat dist/index.html > dist/404.html
cp node_modules/z3-solver/build/z3-built.js dist/
cp node_modules/z3-solver/build/z3-built.wasm dist/
cp node_modules/z3-solver/build/z3-built.worker.js dist/
cp dist/static/enable-threads.js dist/.
- name: Deploy to github pages
if: success()
uses: crazy-max/[email protected]
with:
build_dir: front/dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}