Skip to content

update comment

update comment #4693

Workflow file for this run

name: Check project
on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:
env:
HAPPY_IFRAME_URL: "https://iframe.happy.tech"
VITE_TURNSTILE_SITEKEY: "-"
VITE_FAUCET_ENDPOINT: "-"
VITE_SUBMITTER_URL: "-"
VITE_DEPLOYMENT: "LOCAL"
VITE_FIREBASE_API_KEY_LOCAL: "-"
VITE_FIREBASE_AUTH_DOMAIN_LOCAL: "-"
VITE_FIREBASE_PROJECT_ID_LOCAL: "-"
VITE_FIREBASE_STORAGE_BUCKET_LOCAL: "-"
VITE_FIREBASE_MESSAGE_SENDER_ID_LOCAL: "-"
VITE_FIREBASE_APP_ID_LOCAL: "-"
VITE_WEB3AUTH_CLIENT_ID_LOCAL: "-"
VITE_WEB3AUTH_NETWORK_LOCAL: "sapphire_devnet"
VITE_WEB3AUTH_VERIFIER_LOCAL: "-"
LOG_COLORS: true
LOG_TIMESTAMPS: true
jobs:
check:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout Repo
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install Node23 (for tests)
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: 23.9.0
- name: Install Bun
uses: oven-sh/setup-bun@735343b667d3e6f658f44d0eca948eb6282f2b76 # v2.0.2
with:
bun-version: '1.2.4'
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@82dee4ba654bd2146511f85f0d013af94670c4de # v1.4.0
with:
version: stable
- name: Fake contract deployment
run: mkdir -p contracts/out && echo "{}" > contracts/out/deployment.json
# NOTE(norswap): in the caching tasks below, the `dist` and `node_modules` exclusion from the
# hash computation is actually not needed, as the hash is computed when the caching task runs,
# and not in the post-task. I'm leaving them there in case we want to split the caching into
# an explit restore and saving step — in which case we need to exclude these directories that
# don't exist at restore time but will exist at save time.
#
# The current setup is a lot less verbose, but it can be potentially annoying when changing
# the generated outputs without changing the tracked inputs (e.g. editing this file or the
# build system itself). If that happens you need to edit one of the input files or change the
# cache key.
# NOTE(norswap): The order of things is important here: first restore the caches, then `make
# setup` which will move `dist` into `dist.prod`, then touching the `dist.prod` dirs to
# make sure the build system picks them up as fresh, and finally building.
- name: Cache common support build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-common-support-build
with:
path: |
support/common/dist
support/common/build
key: ${{ runner.os }}-build-support-common-${{ hashFiles('support/common/**/*', '!support/common/dist/**/*', '!support/node_modules/**/*') }}
- name: Cache wallet-common support build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-wallet-common-support-build
with:
path: |
support/wallet-common/dist
support/wallet-common/build
key: ${{ runner.os }}-build-support-wallet-common-${{ hashFiles('support/wallet-common/**/*', '!support/wallet-common/dist/**/*', '!support/wallet-common/node_modules/**/*') }}
- name: Cache worker support build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-worker-support-build
with:
path: |
support/worker/dist
support/worker/build
key: ${{ runner.os }}-build-support-worker-${{ hashFiles('support/worker/**/*', '!support/worker/dist/**/*', '!support/worker/node_modules/**/*') }}
- name: Cache core package build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-core-package-build
with:
path: |
packages/core/dist
packages/core/build
key: ${{ runner.os }}-build-core-${{ hashFiles('packages/core/**/*', '!packages/core/dist/**/*', '!packages/core/node_modules/**/*') }}
- name: Cache react package build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-react-package-build
with:
path: |
packages/react/dist
packages/react/build
key: ${{ runner.os }}-build-react-${{ hashFiles('packages/react/**/*', '!packages/react/dist/**/*', '!packages/react/node_modules/**/*') }}
- name: Cache vue package build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-vue-package-build
with:
path: |
packages/vue/dist
packages/vue/build
key: ${{ runner.os }}-build-vue-${{ hashFiles('packages/vue/**/*', '!packages/vue/dist/**/*', '!packages/vue/node_modules/**/*') }}
- name: Cache iframe app build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-iframe-app-build
with:
path: apps/iframe/dist
key: ${{ runner.os }}-build-iframe-${{ hashFiles('apps/iframe/**/*', '!apps/iframe/dist/**/*', '!apps/iframe/node_modules/**/*') }}
- name: Cache txm package build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-txm-package-build
with:
path: |
packages/txm/dist
packages/txm/build
key: ${{ runner.os }}-build-txm-${{ hashFiles('packages/txm/**/*', '!packages/txm/dist/**/*', '!packages/txm/node_modules/**/*') }}
- name: Cache randomness app build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-randomness-app-build
with:
path: |
apps/randomness/dist
apps/randomness/build
key: ${{ runner.os }}-build-randomness-${{ hashFiles('apps/randomness/**/*', '!apps/randomness/dist/**/*', '!apps/randomness/node_modules/**/*') }}
- name: Cache submitter app build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-submitter-app-build
with:
path: |
apps/submitter/dist
apps/submitter/build
key: ${{ runner.os }}-build-submitter-app-${{ hashFiles('apps/submitter/**/*', '!apps/submitter/dist/**/*', '!apps/submitter/node_modules/**/*') }}
- name: Cache boop-sdk package build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-boop-sdk-package-build
with:
path: |
packages/boop-sdk/dist
packages/boop-sdk/build
key: ${{ runner.os }}-build-boop-sdk-${{ hashFiles('packages/boop-sdk/**/*', '!packages/boop-sdk/dist/**/*', '!packages/boop-sdk/node_modules/**/*') }}
- name: Cache js demo build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-js-demo-build
with:
path: demos/js/dist
key: ${{ runner.os }}-build-demo-js-${{ hashFiles('demos/js/**/*', '!demos/js/dist/**/*', '!demos/js/node_modules/**/*') }}
- name: Cache react demo build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-react-demo-build
with:
path: demos/react/dist
key: ${{ runner.os }}-build-demo-react-${{ hashFiles('demos/react/**/*', '!demos/react/dist/**/*', '!demos/react/node_modules/**/*') }}
- name: Cache vue demo build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-vue-demo-build
with:
path: demos/vue/dist
key: ${{ runner.os }}-build-demo-vue-${{ hashFiles('demos/vue/**/*', '!demos/vue/dist/**/*', '!demos/vue/node_modules/**/*') }}
- name: Cache contracts build
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
id: cache-contracts-build
with:
path: |
contracts/out
contracts/cache/solidity-files-cache.json
key: ${{ runner.os }}-build-contracts-${{ hashFiles('contracts/**/*', '!contracts/out/**/*') }}
- run: make setup
- name: Touch dist directories (on cache hits)
run: |
if [[ "${{ steps.cache-core-package-build.outputs.cache-hit }}" == "true" ]]; then touch packages/core/dist.prod; fi
if [[ "${{ steps.cache-react-package-build.outputs.cache-hit }}" == "true" ]]; then touch packages/react/dist.prod; fi
if [[ "${{ steps.cache-submitter-app-build.outputs.cache-hit }}" == "true" ]]; then touch apps/submitter/dist.prod; fi
if [[ "${{ steps.cache-boop-sdk-package-build.outputs.cache-hit }}" == "true" ]]; then touch packages/boop-sdk/dist.prod; fi
if [[ "${{ steps.cache-txm-package-build.outputs.cache-hit }}" == "true" ]]; then touch packages/txm/dist.prod; fi
if [[ "${{ steps.cache-vue-package-build.outputs.cache-hit }}" == "true" ]]; then touch packages/vue/dist.prod; fi
if [[ "${{ steps.cache-iframe-app-build.outputs.cache-hit }}" == "true" ]]; then touch apps/iframe/dist.prod; fi
if [[ "${{ steps.cache-randomness-app-build.outputs.cache-hit }}" == "true" ]]; then touch apps/randomness/dist.prod; fi
if [[ "${{ steps.cache-js-demo-build.outputs.cache-hit }}" == "true" ]]; then touch demos/js/dist.prod; fi
if [[ "${{ steps.cache-react-demo-build.outputs.cache-hit }}" == "true" ]]; then touch demos/react/dist.prod; fi
if [[ "${{ steps.cache-vue-demo-build.outputs.cache-hit }}" == "true" ]]; then touch demos/vue/dist.prod; fi
if [[ "${{ steps.cache-common-support-build.outputs.cache-hit }}" == "true" ]]; then touch support/common/dist.prod; fi
if [[ "${{ steps.cache-wallet-common-support-build.outputs.cache-hit }}" == "true" ]]; then touch support/wallet-common/dist.prod; fi
if [[ "${{ steps.cache-worker-support-build.outputs.cache-hit }}" == "true" ]]; then touch support/worker/dist.prod; fi
- run: make check
- run: make build
- name: build contracts
run: cd contracts && make build