version: 2 jobs: build: docker: - image: circleci/node:10.4-browsers working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "package.json" }} - v1-dependencies- - run: name: Install Dependancies command: yarn - save_cache: key: v1-dependencies-{{ checksum "package.json" }} paths: - node_modules - run: name: Build command: yarn build - persist_to_workspace: root: ./ paths: - node_modules - dist/ZaksCode - store_artifacts: path: ./dist/ZaksCode deploy: docker: - image: circleci/node:10.4-browsers working_directory: ~/repo steps: - checkout - attach_workspace: at: ./ - run: name: Deploy command: yarn firebase deploy --token "${FIREBASE_TOKEN}" workflows: version: 2 build_and_deply: jobs: - build - deploy: requires: - build filters: branches: only: master