message: Create install job at config.yml
diff: @@ -10,10 +10,7 @@ defaults: &defaults
  - image: circleci/node:10.15
  jobs:
  - typescript:
  - <<: *defaults
  -
  - steps:
  + install:
  - checkout
  # Download and cache dependencies
  @@ -25,10 +22,6 @@ jobs:
  - run: yarn --frozen-lockfile
  - - run:
  - name: Run TypeScript
  - command: npm run tsc
  -
  - save_cache:
  paths:
  - node_modules
  @@ -38,34 +31,24 @@ jobs:
  root: ~/repo
  paths: .
  - test:
  + typescript:
  <<: *defaults
  steps:
  - - checkout
  + - run:
  + name: Run TypeScript
  + command: npm run tsc
  - # 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: yarn --frozen-lockfile
  + test:
  + <<: *defaults
  +
  + steps:
  - run:
  name: Run tests
  command: npm test
  - - save_cache:
  - paths:
  - - node_modules
  - key: v1-dependencies-{{ checksum "package.json" }}
  -
  - - persist_to_workspace:
  - root: ~/repo
  - paths: .
  -
  deploy:
  <<: *defaults
  steps:
  @@ -82,16 +65,25 @@ workflows:
  version: 2
  test-deploy:
  jobs:
  + - install:
  + - filters:
  + tags:
  + only: /^v.*/
  - typescript:
  + requires:
  + - install
  filters:
  tags:
  only: /^v.*/
  - test:
  + requires:
  + - install
  filters:
  tags:
  only: /^v.*/
  - deploy:
  requires:
  + - typescript
  - test
  filters:
  tags:
  