version: 2
jobs:
  build:
    working_directory: /home/node/app
    docker:
      - image: node:8.11.2
        environment:
          NODE_ENV: development
          MONGO_URI: mongodb://localhost:27017/crowi
          REDIS_URL: redis://localhost:6379/crowi
          ELASTICSEARCH_URI: //localhost:9200/
          PLANTUML_URI: //localhost:8080
          FILE_UPLOAD: local
      - image: mongo:3.6.3
    steps:
      - checkout
      - setup_remote_docker:
          version: 18.09.3
      - restore_cache:
          keys:
            - node_modules_{{ checksum "package-lock.json" }}
      - run: npm install
      - save_cache:
          key: node_modules_{{ checksum "package-lock.json" }}
          paths:
            - /home/node/app/node_modules
      - run: npm run build
      - run: npm run lint
      - run: npm run test
notify:
  webhooks:
    - url: https://webhooks.gitter.im/e/5a035388e3274b621d20
