@@ -529,15 +529,15 @@ defaults:
529529 project : colony
530530 binary_type : solcjs
531531 compile_only : 1
532- nodejs_version : ' 14.20'
532+ image : cimg/node: 14.20
533533 python2 : true
534534
535535 - job_native_test_ext_gnosis : &job_native_test_ext_gnosis
536536 << : *workflow_ubuntu2204_static
537537 name : t_native_test_ext_gnosis
538538 project : gnosis
539539 binary_type : native
540- nodejs_version : ' 16.18'
540+ image : cimg/node: 16.18
541541 - job_native_test_ext_zeppelin : &job_native_test_ext_zeppelin
542542 << : *workflow_ubuntu2204_static
543543 name : t_native_test_ext_zeppelin
@@ -549,13 +549,13 @@ defaults:
549549 name : t_native_test_ext_ens
550550 project : ens
551551 binary_type : native
552- nodejs_version : ' 18.11'
552+ image : cimg/node: 18.11
553553 - job_native_test_ext_trident : &job_native_test_ext_trident
554554 << : *workflow_ubuntu2204_static
555555 name : t_native_test_ext_trident
556556 project : trident
557557 binary_type : native
558- nodejs_version : ' 16.18'
558+ image : cimg/node: 16.18
559559 - job_native_test_ext_euler : &job_native_test_ext_euler
560560 << : *workflow_ubuntu2204_static
561561 name : t_native_test_ext_euler
@@ -578,26 +578,25 @@ defaults:
578578 name : t_native_test_ext_pool_together
579579 project : pool-together
580580 binary_type : native
581- nodejs_version : ' 16.18'
581+ image : cimg/node: 16.18
582582 - job_native_test_ext_perpetual_pools : &job_native_test_ext_perpetual_pools
583583 << : *workflow_ubuntu2204_static
584584 name : t_native_test_ext_perpetual_pools
585585 project : perpetual-pools
586586 binary_type : native
587- nodejs_version : ' 18.11'
587+ image : cimg/node: 18.11
588588 - job_native_test_ext_uniswap : &job_native_test_ext_uniswap
589589 << : *workflow_ubuntu2204_static
590590 name : t_native_test_ext_uniswap
591591 project : uniswap
592592 binary_type : native
593- nodejs_version : ' 16.18'
593+ image : cimg/node: 16.18
594594 - job_native_test_ext_prb_math : &job_native_test_ext_prb_math
595595 << : *workflow_ubuntu2204_static
596596 name : t_native_test_ext_prb_math
597597 project : prb-math
598598 binary_type : native
599- build_dependency : rust
600- script_lang : python3
599+ image : cimg/rust:1.66.1
601600 - job_native_test_ext_elementfi : &job_native_test_ext_elementfi
602601 << : *workflow_ubuntu2204_static
603602 name : t_native_test_ext_elementfi
@@ -609,26 +608,26 @@ defaults:
609608 name : t_native_test_ext_brink
610609 project : brink
611610 binary_type : native
612- nodejs_version : ' 18.11'
611+ image : cimg/node: 18.11
613612 - job_native_test_ext_chainlink : &job_native_test_ext_chainlink
614613 << : *workflow_ubuntu2204_static
615614 name : t_native_test_ext_chainlink
616615 project : chainlink
617616 binary_type : native
618- nodejs_version : ' 16.18'
617+ image : cimg/node: 16.18
619618 resource_class : large # Tests run out of memory on a smaller machine
620619 - job_native_test_ext_gp2 : &job_native_test_ext_gp2
621620 << : *workflow_ubuntu2204_static
622621 name : t_native_test_ext_gp2
623622 project : gp2
624623 binary_type : native
625- nodejs_version : ' 18.11'
624+ image : cimg/node: 18.11
626625 - job_ems_test_ext_colony : &job_ems_test_ext_colony
627626 << : *workflow_emscripten
628627 name : t_ems_test_ext_colony
629628 project : colony
630629 binary_type : solcjs
631- nodejs_version : ' 14.20'
630+ image : cimg/node: 14.20
632631 resource_class : medium
633632 python2 : true
634633
@@ -1194,7 +1193,7 @@ jobs:
11941193 yarn test
11951194 - gitter_notify_failure_unless_pr
11961195
1197- t_ems_ext :
1196+ t_ext :
11981197 parameters :
11991198 project :
12001199 type : string
@@ -1206,26 +1205,17 @@ jobs:
12061205 compile_only :
12071206 type : integer
12081207 default : 0
1209- nodejs_version :
1208+ image :
12101209 type : string
1211- default : current
1212- rust_version :
1213- type : string
1214- default : " 1.65.0"
1210+ default : cimg/node:current
12151211 resource_class :
12161212 type : string
12171213 default : small
12181214 python2 :
12191215 type : boolean
12201216 default : false
1221- script_lang :
1222- type : string
1223- default : shellscript
1224- build_dependency :
1225- type : string
1226- default : nodejs
12271217 docker :
1228- - image : cimg/node: <<parameters.nodejs_version >>
1218+ - image : <<parameters.image >>
12291219 resource_class : <<parameters.resource_class>>
12301220 # NOTE: Each external test runs up to 6 independent settings presets. If parallelism is higher than
12311221 # actual preset count, some runs will exit immediately. If it's lower, some runs will get more than one preset.
@@ -1254,56 +1244,22 @@ jobs:
12541244 # In the 14.x image node-gyp still requires Python 2.
12551245 sudo apt install python2 --assume-yes --no-install-recommends
12561246 sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
1257- - when :
1258- condition :
1259- equal : [<< parameters.build_dependency >>, "rust"]
1260- steps :
1261- - run :
1262- name : Install Rust
1263- command : |
1264- echo 'export PATH=/home/circleci/.cargo/bin:"$PATH"' >> "$BASH_ENV"
1265- source "$BASH_ENV"
1266- curl -O https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init && \
1267- chmod +x rustup-init && \
1268- ./rustup-init -y --no-modify-path --default-toolchain "<< parameters.rust_version >>" --profile minimal && \
1269- rm rustup-init && \
1270- rustc --version && \
1271- cargo --version
12721247 - when :
12731248 condition :
12741249 equal : [<< parameters.binary_type >>, "solcjs"]
12751250 steps :
12761251 - run :
12771252 name : External <<parameters.project>> tests (solcjs)
12781253 command : |
1279- test/externalTests/<<parameters.project>>.sh solcjs /tmp/workspace/soljson.js
1254+ test/externalTests/<<parameters.project>>.py solcjs /tmp/workspace/soljson.js
12801255 - when :
12811256 condition :
1282- and :
1283- - equal : [<< parameters.binary_type >>, "native"]
1284- - equal : [<< parameters.script_lang >>, "shellscript"]
1257+ equal : [<< parameters.binary_type >>, "native"]
12851258 steps :
1286- - run :
1287- name : External <<parameters.project>> tests (native)
1288- command : |
1289- test/externalTests/<<parameters.project>>.sh native /tmp/workspace/solc/solc
1290- - when :
1291- condition :
1292- and :
1293- - equal : [<< parameters.binary_type >>, "native"]
1294- - equal : [<< parameters.script_lang >>, "python3"]
1295- steps :
1296- - run :
1297- name : Install script dependencies
1298- command : |
1299- sudo apt update
1300- sudo apt install python3-pip --assume-yes --no-install-recommends
1301- python3 -m pip install requests --user
13021259 - run :
13031260 name : External <<parameters.project>> tests (native)
13041261 command : |
13051262 test/externalTests/<<parameters.project>>.py --solc-binary-type native --solc-binary-path /tmp/workspace/solc/solc
1306- no_output_timeout : 30m
13071263 - store_artifacts :
13081264 path : reports/externalTests/
13091265 # persist_to_workspace fails if the directory does not exist and the test script will create
@@ -1642,23 +1598,23 @@ workflows:
16421598 - t_ems_solcjs : *workflow_emscripten
16431599 - t_ems_ext_hardhat : *workflow_emscripten
16441600
1645- - t_ems_ext : *job_ems_compile_ext_colony
1646-
1647- - t_ems_ext : *job_native_test_ext_gnosis
1648- - t_ems_ext : *job_native_test_ext_zeppelin
1649- - t_ems_ext : *job_native_test_ext_ens
1650- - t_ems_ext : *job_native_test_ext_trident
1651- - t_ems_ext : *job_native_test_ext_euler
1652- - t_ems_ext : *job_native_test_ext_yield_liquidator
1653- - t_ems_ext : *job_native_test_ext_bleeps
1654- - t_ems_ext : *job_native_test_ext_pool_together
1655- - t_ems_ext : *job_native_test_ext_perpetual_pools
1656- - t_ems_ext : *job_native_test_ext_uniswap
1657- - t_ems_ext : *job_native_test_ext_prb_math
1658- - t_ems_ext : *job_native_test_ext_elementfi
1659- - t_ems_ext : *job_native_test_ext_brink
1660- - t_ems_ext : *job_native_test_ext_chainlink
1661- - t_ems_ext : *job_native_test_ext_gp2
1601+ - t_ext : *job_ems_compile_ext_colony
1602+
1603+ - t_ext : *job_native_test_ext_gnosis
1604+ - t_ext : *job_native_test_ext_zeppelin
1605+ - t_ext : *job_native_test_ext_ens
1606+ - t_ext : *job_native_test_ext_trident
1607+ - t_ext : *job_native_test_ext_euler
1608+ - t_ext : *job_native_test_ext_yield_liquidator
1609+ - t_ext : *job_native_test_ext_bleeps
1610+ - t_ext : *job_native_test_ext_pool_together
1611+ - t_ext : *job_native_test_ext_perpetual_pools
1612+ - t_ext : *job_native_test_ext_uniswap
1613+ - t_ext : *job_native_test_ext_prb_math
1614+ - t_ext : *job_native_test_ext_elementfi
1615+ - t_ext : *job_native_test_ext_brink
1616+ - t_ext : *job_native_test_ext_chainlink
1617+ - t_ext : *job_native_test_ext_gp2
16621618
16631619 - c_ext_benchmarks :
16641620 << : *workflow_trigger_on_tags
@@ -1751,4 +1707,4 @@ workflows:
17511707
17521708 # Emscripten build and tests that take more than 15 minutes to execute
17531709 - b_ems : *workflow_trigger_on_tags
1754- - t_ems_ext : *job_ems_test_ext_colony
1710+ - t_ext : *job_ems_test_ext_colony
0 commit comments