remix-project mirror
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
remix-project/.circleci/config.yml

644 lines
19 KiB

5 years ago
# Javascript Node CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-javascript/ for more details
#
version: 2.1
parameters:
run_flaky_tests:
type: boolean
2 years ago
default: false
orbs:
browser-tools: circleci/browser-tools@1.4.0
2 years ago
node: circleci/node@5.0.2
5 years ago
jobs:
3 years ago
build:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
steps:
- checkout
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
3 years ago
- save_cache:
3 years ago
key: v1-deps-{{ checksum "yarn.lock" }}
3 years ago
paths:
- node_modules
2 years ago
- run: yarn run downloadsolc_assets
3 years ago
- run: npx nx build remix-ide
3 years ago
- run: npx nx build remix-ide-e2e-src-local-plugin
2 years ago
3 years ago
- run: yarn run build:libs
3 years ago
- run: mkdir persist && zip -r persist/dist.zip dist
- persist_to_workspace:
root: .
paths:
2 years ago
- "persist"
4 years ago
lint:
3 years ago
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
3 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
3 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
3 years ago
parallelism: 35
3 years ago
steps:
- checkout
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
- run:
name: Remix Libs Linting
3 years ago
command: ./apps/remix-ide/ci/lint.sh
4 years ago
remix-libs:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
4 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
4 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
steps:
- checkout
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
- run: cd dist/libs/remix-tests && yarn
3 years ago
- run: yarn run test:libs
2 years ago
remix-ide-chrome:
3 years ago
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
3 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
3 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
2 years ago
parallelism: 95
3 years ago
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
command: |
2 years ago
google-chrome --version
chromedriver --version
3 years ago
name: Check install
- checkout
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
2 years ago
command: sudo apt update && sudo apt install default-jre
3 years ago
- run:
2 years ago
name: Install Selenium
command: yarn run selenium-install
- run:
name: Run Selenium
command: yarn run selenium
2 years ago
background: true
- run: ./apps/remix-ide/ci/browser_test.sh chrome
3 years ago
- store_test_results:
path: ./reports/tests
- store_artifacts:
path: ./reports/screenshots
flaky-chrome:
3 years ago
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
3 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
3 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
2 years ago
parallelism: 95
3 years ago
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
command: |
2 years ago
google-chrome --version
chromedriver --version
3 years ago
name: Check install
- checkout
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
3 years ago
- run:
2 years ago
name: Install Selenium
command: yarn run selenium-install
- run:
name: Run Selenium
command: yarn run selenium
3 years ago
background: true
- run: ./apps/remix-ide/ci/flaky.sh chrome
3 years ago
- store_test_results:
path: ./reports/tests
- store_artifacts:
3 years ago
path: ./reports/screenshots
remix-ide-firefox:
4 years ago
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
4 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
4 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
2 years ago
parallelism: 95
4 years ago
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
3 years ago
- browser-tools/install-firefox
- browser-tools/install-geckodriver
- run:
command: |
2 years ago
firefox --version
geckodriver --version
2 years ago
name: Check install
4 years ago
- checkout
3 years ago
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
4 years ago
- run:
2 years ago
name: Install Selenium
command: yarn run selenium-install
- run:
name: Run Selenium
command: yarn run selenium
4 years ago
background: true
3 years ago
- run: ./apps/remix-ide/ci/browser_test.sh firefox
5 years ago
- store_test_results:
4 years ago
path: ./reports/tests
5 years ago
- store_artifacts:
4 years ago
path: ./reports/screenshots
3 years ago
flaky-firefox:
5 years ago
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
5 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
5 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
2 years ago
parallelism: 95
5 years ago
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
- browser-tools/install-firefox
- browser-tools/install-geckodriver
- run:
command: |
2 years ago
firefox --version
geckodriver --version
2 years ago
name: Check install
5 years ago
- checkout
3 years ago
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
- run:
2 years ago
name: Install Selenium
command: yarn run selenium-install
- run:
name: Run Selenium
command: yarn run selenium
background: true
3 years ago
- run: ./apps/remix-ide/ci/flaky.sh firefox
- store_test_results:
4 years ago
path: ./reports/tests
5 years ago
- store_artifacts:
4 years ago
path: ./reports/screenshots
2 years ago
remix-ide-vyper-plugin:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
2 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
2 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
parallelism: 10
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
2 years ago
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
command: |
2 years ago
google-chrome --version
chromedriver --version
2 years ago
2 years ago
name: Check install
- checkout
- attach_workspace:
2 years ago
at: .
2 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
2 years ago
- run:
2 years ago
name: Install Selenium
command: yarn run selenium-install
- run:
name: Run Selenium
command: yarn run selenium
2 years ago
background: true
- run: npx nx build vyper
- run: ./apps/remix-ide/ci/browser_tests_vyper_plugin.sh
- store_test_results:
path: ./reports/tests
- store_artifacts:
path: ./reports/screenshots
remix-ide-etherscan-plugin:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
parallelism: 10
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
command: |
2 years ago
google-chrome --version
chromedriver --version
2 years ago
name: Check install
- checkout
- attach_workspace:
2 years ago
at: .
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
- run:
name: Install Selenium
command: yarn run selenium-install
- run:
2 years ago
name: Run Selenium
command: yarn run selenium
background: true
- run: npx nx build etherscan
- run: ./apps/remix-ide/ci/browser_tests_etherscan_plugin.sh
- store_test_results:
path: ./reports/tests
- store_artifacts:
path: ./reports/screenshots
2 years ago
3 years ago
remix-ide-plugin-api:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
5 years ago
3 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
3 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
working_directory: ~/remix-project
parallelism: 10
3 years ago
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
- browser-tools/install-chrome
- browser-tools/install-chromedriver
- run:
command: |
2 years ago
google-chrome --version
chromedriver --version
2 years ago
name: Check install
- checkout
3 years ago
- attach_workspace:
2 years ago
at: .
3 years ago
- run: unzip ./persist/dist.zip
- restore_cache:
keys:
3 years ago
- v1-deps-{{ checksum "yarn.lock" }}
2 years ago
- run: yarn
2 years ago
- run:
name: Java
command: sudo apt update && sudo apt install default-jre
- run:
name: Install Selenium
command: yarn run selenium-install
3 years ago
- run:
2 years ago
name: Run Selenium
command: yarn run selenium
3 years ago
background: true
3 years ago
- run: ./apps/remix-ide/ci/browser_tests_plugin_api.sh
- store_test_results:
3 years ago
path: ./reports/tests
3 years ago
- store_artifacts:
3 years ago
path: ./reports/screenshots
5 years ago
deploy-remix-live:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
5 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
2 years ago
resource_class:
xlarge
5 years ago
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
2 years ago
- FILES_TO_PACKAGE: "dist/apps/remix-ide/index.html dist/apps/remix-ide/404.html dist/apps/remix-ide/*raw-loader*.js dist/apps/remix-ide/assets dist/apps/remix-ide/main*.js dist/apps/remix-ide/polyfills*.js dist/apps/remix-ide/favicon.ico dist/apps/remix-ide/vendors~app*.js dist/apps/remix-ide/app*.js"
5 years ago
working_directory: ~/remix-project
steps:
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
5 years ago
- checkout
2 years ago
- run: yarn
3 years ago
- run: yarn run downloadsolc_assets
- run: yarn run build:production
2 years ago
- run:
name: Deploy
command: |
if [ "${CIRCLE_BRANCH}" == "remix_live" ]; then
./apps/remix-ide/ci/deploy_from_travis_remix-live.sh;
fi
5 years ago
deploy-remix-alpha:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
5 years ago
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
2 years ago
resource_class:
xlarge
5 years ago
# documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
2 years ago
- FILES_TO_PACKAGE: "dist/apps/remix-ide/index.html dist/apps/remix-ide/404.html dist/apps/remix-ide/*raw-loader*.js dist/apps/remix-ide/assets dist/apps/remix-ide/main*.js dist/apps/remix-ide/polyfills*.js dist/apps/remix-ide/favicon.ico dist/apps/remix-ide/vendors~app*.js dist/apps/remix-ide/app*.js"
5 years ago
working_directory: ~/remix-project
steps:
- checkout
2 years ago
- run: yarn
3 years ago
- run: yarn run downloadsolc_assets
- run: yarn run build:production
2 years ago
- run:
5 years ago
name: Deploy
command: |
if [ "${CIRCLE_BRANCH}" == "master" ]; then
./apps/remix-ide/ci/deploy_from_travis_remix-alpha.sh;
fi
deploy-remix-beta:
docker:
# specify the version you desire here
2 years ago
- image: cimg/base:current
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
2 years ago
resource_class:
xlarge
# documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/mongo:3.4.4
environment:
- COMMIT_AUTHOR_EMAIL: "yann@ethereum.org"
- COMMIT_AUTHOR: "Circle CI"
2 years ago
- FILES_TO_PACKAGE: "dist/apps/remix-ide/index.html dist/apps/remix-ide/404.html dist/apps/remix-ide/*raw-loader*.js dist/apps/remix-ide/assets dist/apps/remix-ide/main*.js dist/apps/remix-ide/polyfills*.js dist/apps/remix-ide/favicon.ico dist/apps/remix-ide/vendors~app*.js dist/apps/remix-ide/app*.js"
3 years ago
working_directory: ~/remix-project
steps:
- checkout
2 years ago
- node/install:
install-yarn: true
node-version: "v14.17.6"
2 years ago
- run: yarn
3 years ago
- run: yarn run build:libs
- run: yarn run downloadsolc_assets
- run: yarn run build:production
2 years ago
- run:
name: Deploy
command: |
if [ "${CIRCLE_BRANCH}" == "remix_beta" ]; then
./apps/remix-ide/ci/deploy_from_travis_remix-beta.sh;
fi
5 years ago
workflows:
version: 2
run_flaky_tests:
when: << pipeline.parameters.run_flaky_tests >>
5 years ago
jobs:
3 years ago
- build
3 years ago
- flaky-chrome:
requires:
- build
3 years ago
- flaky-firefox:
requires:
- build
build_all:
3 years ago
unless: << pipeline.parameters.run_flaky_tests >>
jobs:
- build
3 years ago
- lint:
requires:
- build
- remix-libs:
4 years ago
requires:
3 years ago
- build
3 years ago
- remix-ide-plugin-api:
requires:
3 years ago
- build
2 years ago
- remix-ide-vyper-plugin:
requires:
- build
- remix-ide-etherscan-plugin:
requires:
- build
- remix-ide-chrome:
requires:
3 years ago
- build
3 years ago
- remix-ide-firefox:
requires:
3 years ago
- build
2 years ago
- deploy-remix-live:
5 years ago
requires:
3 years ago
- lint
- remix-libs
- remix-ide-chrome
- remix-ide-firefox
3 years ago
- remix-ide-plugin-api
2 years ago
- remix-ide-vyper-plugin
- remix-ide-etherscan-plugin
5 years ago
filters:
branches:
only: remix_live
2 years ago
- deploy-remix-alpha:
5 years ago
requires:
3 years ago
- lint
- remix-libs
- remix-ide-chrome
- remix-ide-firefox
3 years ago
- remix-ide-plugin-api
2 years ago
- remix-ide-vyper-plugin
- remix-ide-etherscan-plugin
5 years ago
filters:
branches:
only: master
2 years ago
- deploy-remix-beta:
requires:
3 years ago
- lint
- remix-libs
- remix-ide-chrome
- remix-ide-firefox
3 years ago
- remix-ide-plugin-api
2 years ago
- remix-ide-vyper-plugin
- remix-ide-etherscan-plugin
filters:
branches:
only: remix_beta