Skip to content

Commit b3b7650

Browse files
authored
Investigate dapp tests failures (#809)
* Fix tests Signed-off-by: nikolay <[email protected]> * Bump node version Signed-off-by: nikolay <[email protected]> * Add debug tunnel Signed-off-by: nikolay <[email protected]> * Edit package.json Signed-off-by: nikolay <[email protected]> * Add debug tunnel Signed-off-by: nikolay <[email protected]> * Edit ci Signed-off-by: nikolay <[email protected]> * Test ci Signed-off-by: nikolay <[email protected]> * Add debug tunnel Signed-off-by: nikolay <[email protected]> * Edit ci Signed-off-by: nikolay <[email protected]> * Edit timeouts Signed-off-by: nikolay <[email protected]> * Edit node version Signed-off-by: nikolay <[email protected]> * Test ci Signed-off-by: nikolay <[email protected]> Signed-off-by: nikolay <[email protected]>
1 parent 389957f commit b3b7650

File tree

11 files changed

+18870
-29214
lines changed

11 files changed

+18870
-29214
lines changed

.github/workflows/dapp.yml

Lines changed: 17 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -14,32 +14,22 @@ jobs:
1414
timeout-minutes: 35
1515
permissions:
1616
contents: write
17-
env:
18-
DISPLAY: :99
19-
QT_X11_NO_MITSHM: 1
20-
_X11_NO_MITSHM: 1
21-
_MITSHM: 0
22-
DBUS_SESSION_BUS_ADDRESS: /dev/null
2317
steps:
24-
- name: Setup node
25-
uses: actions/setup-node@v2
26-
with:
27-
node-version: 16
28-
29-
- name: Setup xvfb (Linux)
30-
run: |
31-
sudo apt-get install -y libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb
32-
Xvfb -screen 0 1024x768x24 :99 &
33-
3418
- name: Checkout repo
35-
uses: actions/checkout@v2
19+
uses: actions/checkout@v3
3620

21+
- name: Setup node
22+
uses: actions/setup-node@v3
23+
with:
24+
node-version: 18.13.0
25+
cache: "npm"
26+
cache-dependency-path: "**/package-lock.json"
3727
- name: Install packages
3828
run: npm ci
3929

4030
- name: Create .env file
4131
run: |
42-
cp ./packages/server/tests/localAcceptance.env ./dapp-example/.env
32+
cp ./dapp-example/localDappCI.env ./dapp-example/.env
4333
cp ./packages/server/tests/localAcceptance.env .env
4434
4535
- name: Lerna Bootstrap
@@ -54,25 +44,17 @@ jobs:
5444
- name: Run RPC Server
5545
run: npm run integration:prerequisite &
5646

57-
- name: Install dapp dependencies
58-
run: cd ./dapp-example/ && npm ci
59-
6047
- name: Check local node
6148
run: npm run check:node
6249

63-
- name: Run the dapp bootstrap script
64-
run: npm run bootstrap --prefix ./dapp-example/
65-
66-
- name: Build & Run the dapp
67-
run: |
68-
npm run build --prefix ./dapp-example/
69-
npm run start-prod --prefix ./dapp-example/ &
70-
env:
71-
CI: false
50+
- name: Build, Bootstrap & Test the dapp in Docker
51+
run: docker-compose up --exit-code-from synpress
52+
working-directory: ./dapp-example/
7253

73-
- name: Run the dapp tests
74-
uses: nick-fields/retry@v2
54+
- name: Publish Reports
55+
uses: mikepenz/action-junit-report@v3
56+
if: always()
7557
with:
76-
max_attempts: 10
77-
timeout_minutes: 10
78-
command: npm run test --prefix ./dapp-example/
58+
check_name: Dapp Test Report
59+
report_paths: "**/*.xml"
60+
detailed_summary: true

dapp-example/docker-compose.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
version: '3.9'
2+
3+
services:
4+
synpress:
5+
container_name: synpress
6+
image: synthetixio/docker-e2e:18.12-ubuntu
7+
environment:
8+
- DISPLAY=display:0.0
9+
- CYPRESS_PRIVATE_KEY_WITH_FUNDS=${CYPRESS_PRIVATE_KEY_WITH_FUNDS}
10+
- GITHUB_TOKEN=${GITHUB_TOKEN}
11+
- DEBUG=${DEBUG}
12+
- CYPRESS_DOCKER_RUN=true
13+
- CI=false
14+
- BROWSER=none
15+
depends_on:
16+
- display
17+
entrypoint: []
18+
working_dir: /app
19+
volumes:
20+
- ./:/app/
21+
- ./docker/videos:/app/tests/e2e/videos
22+
- ./docker/screenshots:/app/tests/e2e/screenshots
23+
- /app/node_modules
24+
command: >
25+
bash -c 'echo -n "======> local noVNC URL: http://localhost:8181/vnc.html?autoconnect=true " && npx wait-on http://display:8080 && echo -n "======> remote noVNC URL: " && curl -s ngrok:4040/api/tunnels | jq -r .tunnels[0].public_url && npm run test:ci'
26+
networks:
27+
- x11
28+
extra_hosts:
29+
- "host.docker.internal:host-gateway"
30+
31+
display:
32+
container_name: display
33+
image: synthetixio/display:457bb48776c3b14de232d9dda620ba9188dc40ac-base
34+
environment:
35+
- RUN_XTE8080RM=no
36+
ports:
37+
- '8181:8080'
38+
networks:
39+
- x11
40+
41+
ngrok:
42+
profiles:
43+
- ngrok
44+
container_name: ngrok
45+
image: synthetixio/ngrok:457bb48776c3b14de232d9dda620ba9188dc40ac-base
46+
ports:
47+
- '4040:4040'
48+
command:
49+
[
50+
'ngrok',
51+
'http',
52+
'display:8080',
53+
'--authtoken',
54+
'${NGROK_AUTH}'
55+
]
56+
depends_on:
57+
- display
58+
networks:
59+
- x11
60+
61+
video:
62+
profiles:
63+
- video
64+
container_name: video
65+
image: synthetixio/video:457bb48776c3b14de232d9dda620ba9188dc40ac-base
66+
volumes:
67+
- ./docker/videos-ci:/videos
68+
environment:
69+
- FILE_NAME=CI-full-video.mp4
70+
depends_on:
71+
- display
72+
networks:
73+
- x11
74+
networks:
75+
x11:

dapp-example/localDappCI.env

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
HEDERA_NETWORK={"host.docker.internal:50211":"0.0.3"}
2+
OPERATOR_ID_MAIN=0.0.2
3+
OPERATOR_KEY_MAIN=302e020100300506032b65700422042091132178e72057a1d7528025956fe39b0b847f200ab59b2fdd367017f3087137
4+
CHAIN_ID=0x12a
5+
MIRROR_NODE_URL=http://127.0.0.1:5551
6+
LOCAL_NODE=true
7+
SERVER_PORT=7546
8+
RELAY_ENDPOINT='http://127.0.0.1:7546'
9+
# cypress metamask config
10+
NETWORK_NAME='local hedera'
11+
RPC_URL='http://host.docker.internal:7546'
12+
SYMBOL='HBAR'
13+
IS_TESTNET=false
14+
PRIVATE_KEY='08e926c84220295b5db5df25be107ce905b41e237ac748dd04d479c23dcdf2d5'
15+
RECEIVER_PRIVATE_KEY='01eed4d6c44d5b5c59d8c63d89236815741fa99ce68211827ab77d1a72d3a41a'
16+
FEE_HISTORY_MAX_RESULTS=10
17+
DEFAULT_RATE_LIMIT = 200
18+
TIER_1_RATE_LIMIT = 100
19+
TIER_2_RATE_LIMIT = 800
20+
TIER_3_RATE_LIMIT = 1600
21+
LIMIT_DURATION = 60000
22+
HBAR_RATE_LIMIT_TINYBAR = 11000000000
23+
HBAR_RATE_LIMIT_DURATION = 80000
24+
RATE_LIMIT_DISABLED = false
25+
DEV_MODE = false
26+
MIRROR_NODE_RETRIES = 3
27+
MIRROR_NODE_RETRY_DELAY = 500
28+
GAS_PRICE_TINY_BAR_BUFFER = 10000000000
29+
MIRROR_NODE_LIMIT_PARAM = 2

0 commit comments

Comments
 (0)