test262/.circleci/config.yml

120 lines
3.1 KiB
YAML

# Javascript Node CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-javascript/ for more details
#
version: 2
references:
js_deps_cache_key: &js_deps_cache_key
v1-dependency-js-deps-{{ checksum "package.json" }}
js_deps_backup_cache_key: &js_deps_backup_cache_key
v1-dependency-js-deps
node_image: &node_image
cimg/node:lts
restore_cache: &restore_cache
restore_cache:
keys:
- *js_deps_cache_key
- *js_deps_backup_cache_key
save_cache: &save_cache
save_cache:
paths:
- node_modules
key: *js_deps_cache_key
execution_steps: &execution_steps
steps:
- checkout
- *restore_cache
- run: npm install
- *save_cache
- run:
name: fetch engines from esvu
command: |
./node_modules/.bin/esvu install $hostName
- run: hostPath=$HOME/.esvu/bin/$hostPath npm run ci
jobs:
"V8: New or modified tests execution":
docker:
- image: *node_image
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
working_directory: ~/test262
environment:
hostType: d8
hostPath: v8
hostName: v8
<<: [*execution_steps]
"V8 --harmony: New or modified tests execution":
docker:
- image: *node_image
working_directory: ~/test262
environment:
hostType: d8
hostPath: v8
hostName: v8
hostArgs: --harmony
<<: [*execution_steps]
"SpiderMonkey: New or modified tests execution":
docker:
- image: *node_image
working_directory: ~/test262
environment:
hostType: jsshell
hostPath: spidermonkey
hostName: spidermonkey
<<: [*execution_steps]
# "ChakraCore: New or modified tests execution":
# docker:
# - image: *node_image
# working_directory: ~/test262
# environment:
# hostType: ch
# hostPath: chakra
# hostName: chakra
# <<: [*execution_steps]
"JSC: New or modified tests execution":
docker:
- image: *node_image
working_directory: ~/test262
environment:
LANG: C
hostType: jsc
hostPath: javascriptcore
hostName: javascriptcore
<<: [*execution_steps]
"XS: New or modified tests execution":
docker:
- image: *node_image
working_directory: ~/test262
environment:
hostType: xs
hostPath: xs
hostName: xs
<<: [*execution_steps]
"engine262: New or modified tests execution":
docker:
- image: *node_image
working_directory: ~/test262
environment:
hostType: engine262
hostPath: engine262
hostName: engine262
hostArgs: --features=all
<<: [*execution_steps]
workflows:
version: 2
Tests execution:
jobs:
# - "ChakraCore: New or modified tests execution"
- "JSC: New or modified tests execution"
- "SpiderMonkey: New or modified tests execution"
- "V8: New or modified tests execution"
- "V8 --harmony: New or modified tests execution"
- "XS: New or modified tests execution"
- "engine262: New or modified tests execution"