Skip to content

Instantly share code, notes, and snippets.

@nadnoslen
Last active August 22, 2017 22:50
Show Gist options
  • Save nadnoslen/dc20da37914a927463fc9dbec6ef5c85 to your computer and use it in GitHub Desktop.
Save nadnoslen/dc20da37914a927463fc9dbec6ef5c85 to your computer and use it in GitHub Desktop.
CircleCI (1.0) configuration using parallelism for an EmberJS add-on (Ember-2.13+).
# This configuration file is being used by my EmberJS addon that I recently upgraded to
# Ember-2.14 (the current release at time of writing)
machine:
node:
version: 6 # My project is using Node6 for now while Node8 works through some kinks
dependencies:
cache_directories:
- '~/.npm'
- '~/.cache' # includes bower & yarn
pre:
- npm config set spin false # Turn off npm spinner & feedback
- npm install -g bower # My projects are still using bower so install it so I can `bower install`
# This makes sure Chrome is always up to date in your test suite
# On average this adds about 10 seconds to your build suite
# Be sure to use Ubuntu 14.04 (Trusty) in the CircleCI's OS setting (Settings > Build Environment)
# @see https://gist.github.com/Arjeno/8564d9643f16d072a85b9c9b5a9f7de0
- curl -L -o google-chrome.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
- sudo dpkg -i google-chrome.deb
- sudo sed -i 's|HERE/chrome\"|HERE/chrome\" --disable-setuid-sandbox|g' /opt/google/chrome/google-chrome
- rm google-chrome.deb
post:
- bower install # As mentioned earlier, I need to install bower dependecies for my tests to work
test:
override:
# You get FOUR free machines to test against; use a case statement to test each
# of the ember try scenarios. In my particular addon's case:
# Machine-0: ember-lts-2.4 && ember-lts-2.8
# Machine-1: ember-lts-2.12 && ember-default
# Machine-2: ember-release && ember-beta
# Machine-3: ember-canary
# Adjust this however you see fit; keep the `case` on one line & double indent the `parallel: true`
# @see https://circleci.com/docs/1.0/parallel-manual-setup/#a-simple-example
- case $CIRCLE_NODE_INDEX in 0) node_modules/.bin/ember try:one ember-lts-2.4 --skip-cleanup && node_modules/.bin/ember try:one ember-lts-2.8 --skip-cleanup; ;; 1) node_modules/.bin/ember try:one ember-lts-2.12 --skip-cleanup && node_modules/.bin/ember try:one ember-default --skip-cleanup ;; 2) node_modules/.bin/ember try:one ember-release --skip-cleanup && node_modules/.bin/ember try:one ember-beta --skip-cleanup ;; 3) node_modules/.bin/ember try:one ember-canary --skip-cleanup ;; esac:
parallel: true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment