version: 2 jobs: build: working_directory: ~/ionic-native/ docker: - image: node:14 steps: - checkout - restore_cache: key: ionic-site-{{ checksum "package.json" }} - run: name: Prepare ionic-site repo command: | if [ "${CIRCLE_BRANCH}" == "master" ]; then ./scripts/docs/prepare.sh fi - save_cache: key: ionic-site-{{ checksum "package.json" }} paths: - ~/ionic-site/ - restore_cache: key: node_modules_{{ checksum "package.json" }} - run: name: Install node modules command: npm ci - save_cache: key: node_modules_{{ checksum "package.json" }} paths: - ~/ionic-native/node_modules/ - run: name: Run tslint command: npm run lint - run: bash ./scripts/git/config.sh - run: name: Build Ionic Native command: npm run build - run: name: Generate README files to ensure docs are valid command: npm run readmes - run: name: Run tests command: npm test - add_ssh_keys - deploy: name: Update docs command: | if [ "${CIRCLE_BRANCH}" == "master" ]; then ./scripts/docs/update_docs.sh else echo "We are on ${CIRCLE_BRANCH} branch, not going to update docs." fi