aboutsummaryrefslogtreecommitdiff
path: root/.circleci
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2018-03-11 14:59:03 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2018-03-11 20:25:03 +0900
commit0c472ccd7b6fe66421ad3f2a33497d0fb348e259 (patch)
tree2fab835446c5b098162dc9a66cfea4d657254476 /.circleci
parent0e340959247ced73b61698542b9818b70f22597b (diff)
Add CircleCI
Diffstat (limited to '.circleci')
-rw-r--r--.circleci/config.yml69
1 files changed, 69 insertions, 0 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644
index 0000000..2831d12
--- /dev/null
+++ b/.circleci/config.yml
@@ -0,0 +1,69 @@
+version: 2
+jobs:
+ install_firefox:
+ docker:
+ - image: circleci/node:9-stretch
+ environment:
+ - FIREFOX_VERSION: "59.0b9"
+ working_directory: ~
+ 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
+ npm_install:
+ docker:
+ - image: circleci/node:9-stretch-browsers
+ steps:
+ - checkout
+ - restore_cache:
+ key: dependency-cache-{{ checksum "package.json" }}
+ - run:
+ name: Install npm wee
+ command: npm install
+ - save_cache:
+ key: dependency-cache-{{ checksum "package.json" }}
+ paths:
+ - node_modules
+ build:
+ docker:
+ - image: circleci/node:9-stretch-browsers
+ environment:
+ - FIREFOX_VERSION: "59.0b9"
+ steps:
+ - run: sudo apt-get update && sudo apt-get install -y libgtk-3-0 libdbus-glib-1-2
+ - checkout
+ - restore_cache:
+ key: firefox-bin
+ - restore_cache:
+ key: dependency-cache-{{ checksum "package.json" }}
+ - run: echo 'export PATH=~/firefox/$FIREFOX_VERSION:$PATH' >> $BASH_ENV
+ - run: npm run lint
+ - run: npm test
+ - run: npm run package
+ - run: npm run build
+ - run: npm run ambassador:build
+ - run: node e2e/web-server & npm run test:e2e
+
+workflows:
+ version: 2
+ build_and_test:
+ jobs:
+ - install_firefox
+ - npm_install
+ - build:
+ requires:
+ - install_firefox
+ - npm_install