Skip to content

Commit

Permalink
Merge pull request #568 from apollographql/infrastructure-cleanup
Browse files Browse the repository at this point in the history
Infrastructure cleanup
  • Loading branch information
martijnwalraven committed Aug 31, 2018
2 parents aa1b035 + a51863e commit 41b2198
Show file tree
Hide file tree
Showing 23 changed files with 14,824 additions and 16,372 deletions.
77 changes: 77 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
version: 2

#
# Reusable Snippets!
#
# These are re-used by the various tests below, to avoid repetition.
#
run_install_desired_npm: &run_install_desired_npm
run:
name: Install npm@6.
command: sudo npm install -g npm@6

# These are the steps used for each version of Node which we're testing
# against. Thanks to YAMLs inability to merge arrays (though it is able
# to merge objects), every version of Node must use the exact same steps,
# or these steps would need to be repeated in a version of Node that needs
# something different. Probably best to avoid that, out of principle, though.
common_test_steps: &common_test_steps
steps:
- *run_install_desired_npm
- checkout
- restore_cache:
keys:
# When lock file changes, use increasingly general patterns to restore cache
- npm-v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
- npm-v1-{{ .Branch }}-
- npm-v1-
- run: npm --version
- run: npm ci
- save_cache:
key: npm-v1-{{ .Branch }}-{{ checksum "package-lock.json" }}
paths:
# This should cache the npm cache instead of node_modules, which is needed because
# npm ci actually removes node_modules before installing to guarantee a clean slate.
- ~/.npm
- run: npm run circle

# Important! When adding a new job to `jobs`, make sure to define when it
# executes by also adding it to the `workflows` section below!
jobs:
# Platform tests, each with the same tests but different platform or version.
# The docker tag represents the Node.js version and the full list is available
# at https://hub.docker.com/r/circleci/node/.
Node.js 8:
docker: [{ image: "circleci/node:8" }]
<<: *common_test_steps

Node.js 10:
docker: [{ image: "circleci/node:10" }]
<<: *common_test_steps

# Other tests, unrelated to typical code tests.
Linting:
docker: [{ image: "circleci/node:8" }]
steps:
# (speed) Intentionally omitted, unnecessary, run_install_desired_npm.
- checkout
# (speed) --ignore-scripts to skip unnecessary Lerna build during linting.
- run: npm install --ignore-scripts
- run: npm run lint

ignore_doc_branches: &ignore_doc_branches
filters:
branches:
# If 'docs' is found, with word boundaries on either side, skip.
ignore: /.*?\bdocs\b.*/

workflows:
version: 2
Build and Test:
jobs:
- Node.js 8:
<<: *ignore_doc_branches
- Node.js 10:
<<: *ignore_doc_branches
- Linting:
<<: *ignore_doc_branches
24 changes: 0 additions & 24 deletions .travis.yml

This file was deleted.

4 changes: 1 addition & 3 deletions lerna.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
{
"lerna": "2.11.0",
"packages": [
"packages/*"
],
"version": "independent",
"hoist": true
"version": "independent"
}
Loading

0 comments on commit 41b2198

Please sign in to comment.