Skip to content

Commit f862526

Browse files
committed
Add image parameter to external tests
1 parent 1c2b72d commit f862526

File tree

1 file changed

+36
-80
lines changed

1 file changed

+36
-80
lines changed

.circleci/config.yml

Lines changed: 36 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)