Skip to content

Commit f5830c4

Browse files
committed
CI: Extend t_ems job to allow using both emscripten and native binaries
1 parent eb8e304 commit f5830c4

File tree

1 file changed

+30
-6
lines changed

1 file changed

+30
-6
lines changed

.circleci/config.yml

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1015,6 +1015,11 @@ jobs:
10151015
parameters:
10161016
project:
10171017
type: string
1018+
binary_type:
1019+
type: enum
1020+
enum:
1021+
- solcjs
1022+
- native
10181023
compile_only:
10191024
type: integer
10201025
default: 0
@@ -1037,14 +1042,26 @@ jobs:
10371042
- attach_workspace:
10381043
at: /tmp/workspace
10391044
- run:
1040-
name: Install dependencies
1045+
name: Install lsof
10411046
command: |
10421047
# lsof is used by Colony in its stop-blockchain-client.sh script
1043-
sudo apt-get -qy install lsof
1044-
- run:
1045-
name: External <<parameters.project>> tests
1046-
command: |
1047-
test/externalTests/<<parameters.project>>.sh solcjs /tmp/workspace/soljson.js
1048+
sudo apt-get --quiet --assume-yes --no-install-recommends install lsof
1049+
- when:
1050+
condition:
1051+
equal: [<< parameters.binary_type >>, "solcjs"]
1052+
steps:
1053+
- run:
1054+
name: External <<parameters.project>> tests (solcjs)
1055+
command: |
1056+
test/externalTests/<<parameters.project>>.sh solcjs /tmp/workspace/soljson.js
1057+
- when:
1058+
condition:
1059+
equal: [<< parameters.binary_type >>, "native"]
1060+
steps:
1061+
- run:
1062+
name: External <<parameters.project>> tests (native)
1063+
command: |
1064+
test/externalTests/<<parameters.project>>.sh native /tmp/workspace/solc/solc
10481065
- gitter_notify_failure_unless_pr
10491066

10501067
b_win: &b_win
@@ -1282,12 +1299,14 @@ workflows:
12821299
<<: *workflow_emscripten
12831300
name: t_ems_compile_ext_colony
12841301
project: colony
1302+
binary_type: solcjs
12851303
compile_only: 1
12861304
nodejs_version: '14'
12871305
- t_ems_ext:
12881306
<<: *workflow_emscripten
12891307
name: t_ems_compile_ext_gnosis
12901308
project: gnosis
1309+
binary_type: solcjs
12911310
compile_only: 1
12921311
nodejs_version: '14'
12931312

@@ -1297,25 +1316,29 @@ workflows:
12971316
# <<: *workflow_emscripten
12981317
# name: t_ems_test_ext_gnosis
12991318
# project: gnosis
1319+
# binary_type: solcjs
13001320
# # NOTE: Tests do not start on node.js 14 ("ganache-cli exited early with code 1").
13011321
# nodejs_version: '12'
13021322
- t_ems_ext:
13031323
<<: *workflow_emscripten
13041324
name: t_ems_test_ext_gnosis_v2
13051325
project: gnosis-v2
1326+
binary_type: solcjs
13061327
# NOTE: Tests do not start on node.js 14 ("ganache-cli exited early with code 1").
13071328
nodejs_version: '12'
13081329
- t_ems_ext:
13091330
<<: *workflow_emscripten
13101331
name: t_ems_test_ext_zeppelin
13111332
project: zeppelin
1333+
binary_type: solcjs
13121334
# NOTE: Tests crash on nodejs 17: "Error: error:0308010C:digital envelope routines::unsupported"
13131335
nodejs_version: '16'
13141336
resource_class: large
13151337
- t_ems_ext:
13161338
<<: *workflow_emscripten
13171339
name: t_ems_test_ext_ens
13181340
project: ens
1341+
binary_type: solcjs
13191342
# NOTE: One of the dependencies (fsevents) fails to build its native extension on node.js 12+.
13201343
nodejs_version: '10'
13211344

@@ -1382,4 +1405,5 @@ workflows:
13821405
<<: *workflow_emscripten
13831406
name: t_ems_test_ext_colony
13841407
project: colony
1408+
binary_type: solcjs
13851409
resource_class: medium

0 commit comments

Comments
 (0)