.circleci/config.yml
version: 2.1
orbs:
codecov: codecov/codecov@1.0.5
jobs:
build:
environment:
CC_TEST_REPORTER_ID: efef69bcc07b8d45b2331b5fe21c83a1d073f35bc7fda2dd55f956494d6f8daf
docker:
- image: circleci/node:12.13
- image: localstack/localstack:latest
environment:
LOCALSTACK_SERVICES: s3,dynamodb
working_directory: ~/repo
steps:
- checkout
- setup_remote_docker
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
- v1-dependencies-
- run:
name: Install Dependencies
command: yarn install
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ checksum "package.json" }}
- run:
name: Setup Code Climate
command: |
# download test reporter as a static binary
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
chmod +x ./cc-test-reporter
./cc-test-reporter before-build
- run:
name: Testing
command: yarn test
- run:
name: Publish Code Climate
command: |
cp -R build/coverage coverage
./cc-test-reporter after-build -t lcov
rm -rf coverage
- codecov/upload:
file: build/coverage/lcov.info
- store_test_results:
path: build/
- store_artifacts:
path: build/
- run:
name: Semantic Release
command: |
rm -rf ./.circleci
rm -rf ./.tmp
rm -rf ./.vscode
rm -rf ./build
rm -f ./.gitignore
rm -f ./.nycrc.json
yarn semantic-release