Skip to content

feat: POC -- Implement locking mechanism to ensure sequential transaction processing per sender address for eth_sendRawTransaction #11885

feat: POC -- Implement locking mechanism to ensure sequential transaction processing per sender address for eth_sendRawTransaction

feat: POC -- Implement locking mechanism to ensure sequential transaction processing per sender address for eth_sendRawTransaction #11885

Workflow file for this run

name: Dapp Tests
on:
pull_request:
branches: [main, release/**]
push:
branches: [main, release/**]
tags: [v*]
concurrency:
group: pr-checks-${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions:
contents: read
jobs:
setup-local-hedera:
name: Dapp Tests
runs-on: hiero-smart-contracts-linux-medium
timeout-minutes: 45 # Set to 45 minutes for now
permissions:
contents: write
steps:
- name: Harden Runner
uses: step-security/harden-runner@ec9f2d5744a09debf3a187a3f4f675c53b671911 # v2.13.0
with:
egress-policy: audit
- name: Checkout repo
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Setup node
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: 22
- name: Install build tools
run: sudo apt-get update && sudo apt-get install -y make gcc g++
- name: Install packages
run: npm ci
- name: Create .env file
run: |
cp ./dapp-example/localDappCI.env ./dapp-example/.env
cp ./packages/server/tests/localAcceptance.env .env
- name: Install pnpm
run: npm install -g pnpm
- name: Build Typescript
run: npx lerna run build
- name: Start the hedera local node
run: npx hedera start -d
- name: Stop the local node's relay
run: docker stop json-rpc-relay
- name: Start the local relay
run: npm run start &
- name: Build, Bootstrap & Test the dapp in Docker
run: docker compose up --exit-code-from synpress
working-directory: ./dapp-example/
- name: Dump relay logs
if: ${{ always() && !cancelled() }}
uses: step-security/gh-docker-logs@fabd93e8cf0be430ca117408e07af71b2993caac # v2.2.5
with:
dest: './logs'
- name: Tar logs
if: ${{ always() && !cancelled() }}
run: tar cvzf ./logs.tgz ./logs
- name: Upload logs to GitHub
if: ${{ always() && !cancelled() }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: logs.tgz
path: ./logs.tgz
- name: Publish Reports
uses: mikepenz/action-junit-report@3585e9575db828022551b4231f165eb59a0e74e3 # v5.6.2
if: ${{ always() && !cancelled() }}
with:
check_name: Dapp Test Report
report_paths: "**/*.xml"
detailed_summary: true