Skip to content

Commit a857064

Browse files
committed
feat: add back the nft-quest tests
1 parent 9bdacf5 commit a857064

File tree

1 file changed

+74
-61
lines changed

1 file changed

+74
-61
lines changed

.github/workflows/ci.yml

Lines changed: 74 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -106,64 +106,77 @@ jobs:
106106
name: demo-app-4337-playwright-report
107107
path: examples/demo-app/playwright-report/
108108
retention-days: 3
109-
110-
# e2e-nft-quest:
111-
# runs-on: ubuntu-latest
112-
# defaults:
113-
# run:
114-
# working-directory: ./
115-
# steps:
116-
# - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
117-
# with:
118-
# submodules: recursive
119-
120-
# # Start node
121-
# - name: Era Test Node Action
122-
# uses: dutterbutter/era-test-node-action@36ffd2eefd46dc16e7e2a8e1715124400ec0a3ba # v1
123-
124-
# - name: Setup pnpm
125-
# uses: pnpm/action-setup@v4
126-
# with:
127-
# version: 9.11.0
128-
129-
# - name: Use Node.js
130-
# uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4
131-
# with:
132-
# node-version: lts/Iron
133-
# cache: pnpm
134-
135-
# # Install dependencies for repo
136-
# - name: Install dependencies
137-
# run: pnpm install -r --frozen-lockfile
138-
139-
# # Install dependencies for the submodule
140-
# - name: Install contract dependencies
141-
# run: pnpm install -r --frozen-lockfile
142-
# working-directory: packages/contracts
143-
144-
# - name: Build contracts
145-
# run: pnpm build
146-
# working-directory: packages/contracts
147-
148-
# - name: Deploy contracts
149-
# run: pnpm run deploy --file ../auth-server/stores/local-node.json
150-
# working-directory: packages/contracts
151-
152-
# - name: Build SDK
153-
# run: pnpm nx build sdk
154-
155-
# - name: Deploy NFT contracts
156-
# run: pnpm nx deploy:local nft-quest-contracts
157-
158-
# # Run E2E tests
159-
# - name: Install Playwright Chromium Browser
160-
# run: pnpm exec playwright install chromium
161-
# working-directory: examples/nft-quest
162-
# - name: Run e2e tests
163-
# run: pnpm nx e2e nft-quest
164-
# - uses: actions/upload-artifact@v4
165-
# if: ${{ !cancelled() }}
166-
# with:
167-
# name: nft-quest-playwright-report
168-
# path: examples/nft-quest/playwright-report/
169-
# retention-days: 3
109+
110+
e2e-nft-quest:
111+
runs-on: ubuntu-latest
112+
permissions:
113+
contents: read
114+
pull-requests: write
115+
defaults:
116+
run:
117+
working-directory: ./
118+
steps:
119+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
120+
with:
121+
submodules: recursive
122+
123+
- name: Setup pnpm
124+
uses: pnpm/action-setup@v4
125+
with:
126+
version: 9.11.0
127+
128+
- name: Use Node.js
129+
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4
130+
with:
131+
node-version: lts/Iron
132+
cache: pnpm
133+
134+
- name: Setup Rust toolchain
135+
uses: dtolnay/rust-toolchain@stable
136+
with:
137+
toolchain: stable
138+
targets: wasm32-unknown-unknown
139+
140+
- name: Install wasm-pack
141+
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
142+
143+
# Install foundry for Anvil
144+
- name: Install foundry
145+
uses: foundry-rs/foundry-toolchain@v1.5.0
146+
147+
# Start Anvil on port 8545 (chain-id 31337)
148+
- name: Start Anvil
149+
run: |
150+
anvil --host 0.0.0.0 &
151+
echo "Waiting for Anvil to be ready..."
152+
timeout 30 bash -c 'until cast client --rpc-url http://localhost:8545 > /dev/null 2>&1; do sleep 1; done'
153+
echo "Anvil is ready!"
154+
155+
# Install dependencies
156+
- name: Install dependencies
157+
run: pnpm install -r --frozen-lockfile
158+
159+
# Build web SDK (includes WASM)
160+
- name: Build web SDK
161+
run: pnpm nx build web-sdk
162+
163+
# Build sdk-4337
164+
- name: Build sdk-4337
165+
run: pnpm nx build sdk-4337
166+
167+
# Deploy NFT contract to Anvil
168+
- name: Deploy NFT contract
169+
run: pnpm nx deploy:anvil nft-quest-contracts
170+
171+
# Run E2E tests
172+
- name: Install Playwright Chromium Browser
173+
run: pnpm exec playwright install chromium
174+
working-directory: examples/nft-quest
175+
- name: Run e2e tests
176+
run: pnpm nx e2e nft-quest
177+
- uses: actions/upload-artifact@v4
178+
if: ${{ !cancelled() }}
179+
with:
180+
name: nft-quest-playwright-report
181+
path: examples/nft-quest/playwright-report/
182+
retention-days: 3

0 commit comments

Comments
 (0)