Skip to content

Commit eac978d

Browse files
committed
Resolve merge conflicts with main branch
2 parents 1e04c7e + 9b1311c commit eac978d

File tree

151 files changed

+10035
-884
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

151 files changed

+10035
-884
lines changed

.github/actions/setup/action.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: 'Setup Environment'
2+
description: 'Sets up Node.js and pnpm'
3+
runs:
4+
using: composite
5+
steps:
6+
- name: Install pnpm
7+
uses: pnpm/action-setup@v4
8+
with:
9+
version: 9.3.0
10+
11+
- name: Install Node.js
12+
uses: actions/setup-node@v4
13+
with:
14+
node-version: 20
15+
cache: 'pnpm'
16+
17+
- name: Install dependencies
18+
shell: bash
19+
run: pnpm install --frozen-lockfile

.github/workflows/pages-deployment.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- name: Checkout
1919
uses: actions/checkout@v4
2020

21-
- name: Update Misc. Deps
21+
- name: Update apt-get
2222
run: sudo apt-get update
2323

2424
- name: Install Misc. Deps
@@ -63,6 +63,7 @@ jobs:
6363
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
6464
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
6565
wranglerVersion: 'v3.57.1'
66+
packageManager: 'pnpm'
6667
command: pages deploy --project-name=ens-app-v3
6768
secrets: |
6869
GITHUB_TOKEN

.github/workflows/test-wallet.yaml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Wallet Tests (Container)
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
paths:
7+
#all files
8+
- '**'
9+
10+
env:
11+
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
12+
13+
jobs:
14+
wallets-container:
15+
name: wallets (container)
16+
timeout-minutes: 20
17+
runs-on: ubuntu-latest
18+
container:
19+
image: mcr.microsoft.com/playwright:v1.55.0-jammy
20+
steps:
21+
- uses: actions/checkout@v4
22+
23+
- name: Setup pnpm
24+
uses: pnpm/action-setup@v4
25+
with:
26+
version: 9.3.0
27+
28+
- name: Setup Node.js
29+
uses: actions/setup-node@v4
30+
with:
31+
node-version: 20
32+
cache: 'pnpm'
33+
34+
- name: Install dependencies
35+
run: pnpm install --frozen-lockfile
36+
37+
- name: Install system dependencies
38+
run: |
39+
apt-get update
40+
apt-get install -y parallel
41+
42+
- name: Verify Playwright installation
43+
run: |
44+
echo "Checking Playwright installation..."
45+
pnpm exec playwright --version
46+
47+
echo "Checking browser installations..."
48+
pnpm exec playwright show-report || true
49+
50+
echo "Cache contents:"
51+
ls -la ~/.cache/ms-playwright/ || echo "No cache found"
52+
53+
- name: Run wallet tests
54+
env:
55+
SECRET_WORDS: ${{ secrets.SECRET_WORDS }}
56+
run: |
57+
parallel --lb --halt now,success=1,fail=1 ::: \
58+
"pnpm dev" \
59+
"pnpm wait-on http://localhost:3000 && xvfb-run --auto-servernum pnpm e2e:wallet"
60+
61+
- uses: actions/upload-artifact@v4
62+
if: always()
63+
with:
64+
name: wallets-report-playwright-action
65+
path: |
66+
playwright-report/
67+
test-results/
68+
*.png
69+
retention-days: 30

.github/workflows/test.yaml

Lines changed: 94 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -7,53 +7,27 @@ env:
77

88
jobs:
99
coverage:
10-
runs-on: ubuntu-latest
10+
runs-on: blacksmith-4vcpu-ubuntu-2404
1111
steps:
1212
- uses: actions/checkout@v4
13-
14-
- name: Install corepack
15-
run: npm i -g corepack
16-
17-
- name: Install pnpm
18-
run: npm i -g --force corepack && corepack enable pnpm
19-
20-
- name: Install Node.js
21-
uses: actions/setup-node@v4
22-
with:
23-
node-version: 20
24-
cache: 'pnpm'
25-
26-
- run: pnpm install --frozen-lockfile
13+
- uses: ./.github/actions/setup
2714

2815
- name: Get contract addresses
2916
run: 'parallel --lb --halt now,success=1,fail=1 ::: \
30-
"pnpm tenv start --no-graph --no-scripts --no-build --exit-after-deploy" \
17+
"pnpm tenv start --no-ensnode --no-scripts --no-build --exit-after-deploy --verbosity 1" \
3118
"pnpm wait-on ./.env.local"'
3219

3320
- run: pnpm test:coverage
3421

3522
build-stateless:
36-
runs-on: ubuntu-latest
23+
runs-on: blacksmith-4vcpu-ubuntu-2404
3724
steps:
3825
- uses: actions/checkout@v4
39-
40-
- name: Install corepack
41-
run: npm i -g corepack
42-
43-
- name: Install pnpm
44-
run: npm i -g --force corepack && corepack enable pnpm
45-
46-
- name: Install Node.js
47-
uses: actions/setup-node@v4
48-
with:
49-
node-version: 20
50-
cache: 'pnpm'
51-
52-
- run: pnpm install --frozen-lockfile
26+
- uses: ./.github/actions/setup
5327

5428
- name: Get contract addresses
5529
run: 'parallel --lb --halt now,success=1,fail=1 ::: \
56-
"pnpm tenv start --no-graph --no-scripts --no-build --exit-after-deploy" \
30+
"pnpm tenv start --no-ensnode --no-scripts --no-build --exit-after-deploy --verbosity 1" \
5731
"pnpm wait-on ./.env.local"'
5832

5933
- name: Build stateless and export
@@ -68,42 +42,51 @@ jobs:
6842
name: stateless-build
6943
path: stateless-build.tar
7044

71-
build-stateful:
72-
runs-on: ubuntu-latest
45+
build-stateful-sepolia:
46+
runs-on: blacksmith-4vcpu-ubuntu-2404
7347
steps:
7448
- uses: actions/checkout@v4
49+
- uses: ./.github/actions/setup
7550

76-
- name: Install corepack
77-
run: npm i -g corepack
51+
- name: Build stateful sepolia and export
52+
run: |
53+
export NEXT_PUBLIC_CHAIN_NAME=sepolia
54+
pnpm build && pnpm export
7855
79-
- name: Install pnpm
80-
run: npm i -g --force corepack && corepack enable pnpm
56+
- name: Tar stateful sepolia files
57+
run: tar -cvf stateful-sepolia-build.tar out
8158

82-
- name: Install Node.js
83-
uses: actions/setup-node@v4
59+
- name: Upload stateful sepolia
60+
uses: actions/upload-artifact@v4
8461
with:
85-
node-version: 20
86-
cache: 'pnpm'
62+
name: stateful-sepolia-build
63+
path: stateful-sepolia-build.tar
8764

88-
- run: pnpm install --frozen-lockfile
65+
build-stateful-mainnet:
66+
runs-on: blacksmith-4vcpu-ubuntu-2404
67+
steps:
68+
- uses: actions/checkout@v4
69+
- uses: ./.github/actions/setup
8970

90-
- name: Build stateful and export
91-
run: pnpm build && pnpm export
71+
- name: Build stateful mainnet and export
72+
run: |
73+
export NEXT_PUBLIC_CHAIN_NAME=mainnet
74+
pnpm build && pnpm export
9275
93-
- name: Tar stateful files
94-
run: tar -cvf stateful-build.tar out
76+
- name: Tar stateful mainnet files
77+
run: tar -cvf stateful-mainnet-build.tar out
9578

96-
- name: Upload stateful
79+
- name: Upload stateful mainnet
9780
uses: actions/upload-artifact@v4
9881
with:
99-
name: stateful-build
100-
path: stateful-build.tar
82+
name: stateful-mainnet-build
83+
path: stateful-mainnet-build.tar
10184

10285
stateless:
10386
name: stateless (${{matrix.shard}})
10487
needs: build-stateless
10588
timeout-minutes: 20
106-
runs-on: ubuntu-latest
89+
runs-on: blacksmith-4vcpu-ubuntu-2404
10790
strategy:
10891
matrix:
10992
shard:
@@ -137,23 +120,15 @@ jobs:
137120
27,
138121
28,
139122
29,
123+
30,
124+
31,
140125
]
141126
steps:
142127
- uses: actions/checkout@v4
128+
- uses: ./.github/actions/setup
143129

144-
- name: Install corepack
145-
run: npm i -g corepack
146-
147-
- name: Install pnpm
148-
run: npm i -g --force corepack && corepack enable pnpm
149-
150-
- name: Install Node.js
151-
uses: actions/setup-node@v4
152-
with:
153-
node-version: 20
154-
cache: 'pnpm'
155-
156-
- run: pnpm install --frozen-lockfile
130+
- name: Install Playwright
131+
run: pnpm exec playwright install --with-deps chromium
157132

158133
- run: pnpm rebuild -r
159134

@@ -167,9 +142,6 @@ jobs:
167142
- name: Untar files
168143
run: tar -xvf stateless-build.tar
169144

170-
- name: Install playwright
171-
run: pnpm playwright install chromium
172-
173145
- name: Run tests
174146
run: |
175147
PLAYWRIGHT_SHARD=${{matrix.shard}} PLAYWRIGHT_TOTAL=${{strategy.job-total}} pnpm e2e:ci --no-build
@@ -182,59 +154,86 @@ jobs:
182154
retention-days: 30
183155
overwrite: true
184156

185-
stateful:
186-
name: stateful (${{matrix.shard}})
187-
needs: build-stateful
157+
stateful-sepolia:
158+
name: stateful-sepolia (${{matrix.shard}})
159+
needs: build-stateful-sepolia
188160
timeout-minutes: 10
189-
runs-on: ubuntu-latest
161+
runs-on: blacksmith-4vcpu-ubuntu-2404
190162
strategy:
191163
matrix:
192164
shard: [1, 2, 3]
193-
194165
steps:
195166
- uses: actions/checkout@v4
196-
- run: ./scripts/check-chrome.sh
167+
- uses: ./.github/actions/setup
197168

198-
- name: Install corepack
199-
run: npm i -g corepack
169+
- name: Install Playwright
170+
run: pnpm exec playwright install --with-deps chromium
200171

201-
- name: Install pnpm
202-
run: npm i -g --force corepack && corepack enable pnpm
172+
- run: pnpm rebuild -r
203173

204-
- name: Install Node.js
205-
uses: actions/setup-node@v4
174+
- name: Download sepolia build
175+
id: download
176+
uses: actions/download-artifact@v4
206177
with:
207-
node-version: 20
208-
cache: 'pnpm'
178+
name: stateful-sepolia-build
209179

210-
- run: pnpm install --frozen-lockfile
180+
- name: Untar sepolia files
181+
run: tar -xvf stateful-sepolia-build.tar
211182

212-
- run: pnpm rebuild -r
183+
- name: Run sepolia tests
184+
run: |
185+
parallel --lb --halt now,success=1,fail=1 ::: \
186+
"pnpm wrangle" \
187+
"pnpm wait-on http://127.0.0.1:8788 && npx playwright test --shard=${{matrix.shard}}/${{strategy.job-total}} --project=stateful --grep-invert='@mainnet'"
188+
env:
189+
SECRET_WORDS: ${{ secrets.SECRET_WORDS }}
213190

214-
- name: Download build
191+
- uses: actions/upload-artifact@v4
192+
if: always()
193+
with:
194+
name: stateful-sepolia-report-${{matrix.shard}}
195+
path: playwright-report/
196+
retention-days: 30
197+
198+
stateful-mainnet:
199+
name: stateful-mainnet (${{matrix.shard}})
200+
needs: build-stateful-mainnet
201+
timeout-minutes: 10
202+
runs-on: blacksmith-4vcpu-ubuntu-2404
203+
strategy:
204+
matrix:
205+
shard: [1, 2, 3]
206+
steps:
207+
- uses: actions/checkout@v4
208+
- uses: ./.github/actions/setup
209+
210+
- name: Install Playwright
211+
run: pnpm exec playwright install --with-deps chromium
212+
213+
- run: |
214+
export NEXT_PUBLIC_CHAIN_NAME=mainnet
215+
pnpm rebuild -r
216+
217+
- name: Download mainnet build
215218
id: download
216219
uses: actions/download-artifact@v4
217220
with:
218-
name: stateful-build
219-
220-
- name: Untar files
221-
run: tar -xvf stateful-build.tar
221+
name: stateful-mainnet-build
222222

223-
- name: Install playwright
224-
run: pnpm playwright install chromium
223+
- name: Untar mainnet files
224+
run: tar -xvf stateful-mainnet-build.tar
225225

226-
- name: Run tests
226+
- name: Run mainnet tests
227227
run: |
228228
parallel --lb --halt now,success=1,fail=1 ::: \
229-
"pnpm wrangle" \
230-
"pnpm wait-on http://127.0.0.1:8788 && pnpm playwright test --shard=${{matrix.shard}}/${{strategy.job-total}} --project=stateful"
229+
"pnpm dev:mainnet" \
230+
"pnpm wait-on http://127.0.0.1:3000 && CHAIN=mainnet npx playwright test --shard=${{matrix.shard}}/${{strategy.job-total}} --project=stateful --grep='@mainnet'"
231231
env:
232-
NEXT_PUBLIC_CHAIN_NAME: holesky
233232
SECRET_WORDS: ${{ secrets.SECRET_WORDS }}
234233

235234
- uses: actions/upload-artifact@v4
236235
if: always()
237236
with:
238-
name: stateful-report-${{matrix.shard}}
237+
name: stateful-mainnet-report-${{matrix.shard}}
239238
path: playwright-report/
240239
retention-days: 30

0 commit comments

Comments
 (0)