A fork of https://github.com/ueokande/vim-vixen
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.
89 lines
2.2 KiB
89 lines
2.2 KiB
version: 2.1 |
|
|
|
executors: |
|
default: |
|
docker: |
|
- image: circleci/node:10-stretch-browsers |
|
environment: |
|
- FIREFOX_VERSION: "60.0esr" |
|
- GECKODRIVER_VERSION: "0.24.0" |
|
working_directory: ~ |
|
|
|
commands: |
|
install_firefox: |
|
steps: |
|
- restore_cache: |
|
key: firefox-bin |
|
paths: |
|
- ~/firefox |
|
- run: |
|
name: Install Firefox |
|
command: | |
|
test -d ~/firefox/${FIREFOX_VERSION} && exit 0 |
|
url=https://ftp.mozilla.org/pub/firefox/releases/${FIREFOX_VERSION}/linux-x86_64/en-US/firefox-${FIREFOX_VERSION}.tar.bz2 |
|
curl -sSL -o- "$url" | tar xvfj - |
|
mkdir -p ~/firefox |
|
mv firefox ~/firefox/${FIREFOX_VERSION} |
|
- save_cache: |
|
key: firefox-bin |
|
paths: |
|
- ~/firefox |
|
- run: echo 'export PATH=~/firefox/$FIREFOX_VERSION:$PATH' >> $BASH_ENV |
|
|
|
install_geckodriver: |
|
steps: |
|
- run: |
|
name: Install geckodriver |
|
command: | |
|
mkdir -p geckodriver |
|
|
|
url=https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v${GECKODRIVER_VERSION}-linux64.tar.gz |
|
curl -sSLf "$url" | tar -C geckodriver xvf - |
|
|
|
echo 'export PATH=~/geckodriver/$GECKODRIVER_VERSION:$PATH' >> $BASH_ENV |
|
|
|
setup_npm: |
|
steps: |
|
- restore_cache: |
|
key: dependency-cache-{{ checksum "package-lock.json" }} |
|
- run: |
|
name: Install npm wee |
|
command: npm install |
|
- save_cache: |
|
key: dependency-cache-{{ checksum "package-lock.json" }} |
|
paths: |
|
- node_modules |
|
|
|
jobs: |
|
build: |
|
executor: |
|
name: default |
|
steps: |
|
- install_firefox |
|
- checkout |
|
- setup_npm |
|
- run: npm run lint |
|
- run: npm test |
|
- run: npm run package |
|
|
|
e2e: |
|
executor: |
|
name: default |
|
steps: |
|
- run: sudo apt-get update && sudo apt-get -y install xsel |
|
- install_firefox |
|
- checkout |
|
- setup_npm |
|
- run: npm run build |
|
- run: |
|
name: Run geckodriver |
|
command: geckodriver |
|
background: true |
|
- run: npm run test:e2e |
|
|
|
workflows: |
|
version: 2 |
|
build_and_test: |
|
jobs: |
|
- build |
|
- e2e
|
|
|