version: 2 jobs: build: working_directory: ~/outline docker: - image: circleci/node:14 - image: circleci/redis:latest - image: circleci/postgres:9.6.5-alpine-ram environment: NODE_ENV: test SECRET_KEY: F0E5AD933D7F6FD8F4DBB3E038C501C052DC0593C686D21ACB30AE205D2F634B DATABASE_URL_TEST: postgres://root@localhost:5432/circle_test DATABASE_URL: postgres://root@localhost:5432/circle_test URL: http://localhost:3000 SMTP_FROM_EMAIL: hello@example.com AWS_S3_UPLOAD_BUCKET_URL: https://s3.amazonaws.com AWS_S3_UPLOAD_BUCKET_NAME: outline-circle steps: - checkout - restore_cache: key: dependency-cache-{{ checksum "package.json" }} - run: name: install-deps command: yarn install --pure-lockfile - save_cache: key: dependency-cache-{{ checksum "package.json" }} paths: - ./node_modules - run: name: migrate command: ./node_modules/.bin/sequelize db:migrate --url $DATABASE_URL_TEST - run: name: lint command: yarn lint - run: name: flow command: yarn flow check --max-workers 4 - run: name: test command: yarn test - run: name: build-webpack command: yarn build:webpack