Skip to content

Commit

Permalink
Merge pull request ethereum#14330 from ethereum/parallelize-bytecode-…
Browse files Browse the repository at this point in the history
…compare

Generate CLI and Standard JSON bytecode reports in parallel
  • Loading branch information
cameel authored Jun 23, 2023
2 parents b26090c + 3b80aa2 commit f9a3c09
Showing 1 changed file with 26 additions and 10 deletions.
36 changes: 26 additions & 10 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,18 +80,30 @@ commands:
type: string
steps:
- run: mkdir test-cases/
- run: cd test-cases && python3 ../scripts/isolate_tests.py ../test/
- run: cd test-cases && python3 ../scripts/bytecodecompare/prepare_report.py << parameters.binary_path >> --interface standard-json --report-file "../bytecode-report-<< parameters.label >>-json.txt"
- run: cd test-cases && python3 ../scripts/bytecodecompare/prepare_report.py << parameters.binary_path >> --interface cli --report-file "../bytecode-report-<< parameters.label >>-cli.txt"
- run:
name: Prepare input files
command: |
cd test-cases/
python3 ../scripts/isolate_tests.py ../test/
- run:
name: Generate bytecode report
command: |
cd test-cases/
interface=$(echo -e "standard-json\ncli" | circleci tests split)
echo "Selected interface: ${interface}"
python3 ../scripts/bytecodecompare/prepare_report.py \
<< parameters.binary_path >> \
--interface "$interface" \
--report-file "../bytecode-report-<< parameters.label >>-${interface}.txt"
- store_artifacts:
path: bytecode-report-<< parameters.label >>-json.txt
path: bytecode-report-<< parameters.label >>-standard-json.txt
- store_artifacts:
path: bytecode-report-<< parameters.label >>-cli.txt
- persist_to_workspace:
root: .
paths:
- bytecode-report-<< parameters.label >>-json.txt
- bytecode-report-<< parameters.label >>-cli.txt
- bytecode-report-<< parameters.label >>-*.txt
- matrix_notify_failure_unless_pr

install_python3:
Expand Down Expand Up @@ -1477,6 +1489,7 @@ jobs:
TERM: xterm
MAKEFLAGS: -j 2
LC_ALL: C
parallelism: 2 # For prepare_bytecode_report
steps:
- checkout
- attach_workspace:
Expand All @@ -1491,6 +1504,7 @@ jobs:
TERM: xterm
MAKEFLAGS: -j 2
LC_ALL: C
parallelism: 2 # For prepare_bytecode_report
steps:
- checkout
- attach_workspace:
Expand All @@ -1505,6 +1519,7 @@ jobs:
TERM: xterm
MAKEFLAGS: -j 5
LC_ALL: C
parallelism: 2 # For prepare_bytecode_report
steps:
- checkout
- attach_workspace:
Expand All @@ -1517,6 +1532,7 @@ jobs:
<<: *base_win
environment:
LC_ALL: C
parallelism: 2 # For prepare_bytecode_report
steps:
# NOTE: For bytecode generation we need the input files to be byte-for-byte identical on all
# platforms so line ending conversions must absolutely be disabled.
Expand Down Expand Up @@ -1553,13 +1569,13 @@ jobs:
environment:
REPORT_FILES: |
bytecode-report-emscripten.txt
bytecode-report-ubuntu2004-static-json.txt
bytecode-report-ubuntu2004-static-standard-json.txt
bytecode-report-ubuntu2004-static-cli.txt
bytecode-report-ubuntu-json.txt
bytecode-report-ubuntu-standard-json.txt
bytecode-report-ubuntu-cli.txt
bytecode-report-osx-json.txt
bytecode-report-osx-standard-json.txt
bytecode-report-osx-cli.txt
bytecode-report-windows-json.txt
bytecode-report-windows-standard-json.txt
bytecode-report-windows-cli.txt
steps:
- attach_workspace:
Expand Down

0 comments on commit f9a3c09

Please sign in to comment.