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 command: yarn - save_cache: paths: - node_modules key: v1-dependencies-{{ checksum "package.json" }} - run: name: Build command: yarn build-datatable - save_cache: paths: - dist/ng-datatable key: v1-dist-{{ .Environment.CIRCLE_BRANCH }}-{{ .Environment.CIRCLE_SHA1 }} - run: name: Publish command: | if ["${CIRCLE_BRANCH}" === "production"]; then cd dist/ng-datatable npm publish else echo "Only the production branch is published" fi