diff options
-rw-r--r-- | .circleci/config.yml | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..2c02394 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,67 @@ +version: 2 + +defaults: &defaults + working_directory: ~/repo + docker: + - image: circleci/node:12.7 + +jobs: + build: + <<: *defaults + steps: + - checkout + + # Download and cache dependencies + - restore_cache: + keys: + - v1-dependencies-{{ checksum "package.json" }} + # fallback to using the latest cache if no exact match is found + - v1-dependencies- + + - run: npm install + + - save_cache: + paths: + - node_modules + key: v1-dependencies-{{ checksum "package.json" }} + + - run: + name: Build + command: npm run build + + - run: + name: Test + command: npm test + + - persist_to_workspace: + root: ~/repo + paths: . + + deploy: + <<: *defaults + steps: + - attach_workspace: + at: ~/repo + - run: + name: Authenticate with registry + command: echo "//registry.npmjs.org/:_authToken=$npm_TOKEN" > ~/repo/.npmrc + - run: + name: Publish package + command: npm publish + +workflows: + version: 2 + test-deploy: + jobs: + - test: + filters: + tags: + only: /^v.*/ + - deploy: + requires: + - test + filters: + tags: + only: /^v.*/ + branches: + ignore: /.*/ \ No newline at end of file |