steps:
  - label: ":eslint: JS Lint"
    command:
      - "echo '--- Fetching Dependencies'"
      - "./scripts/fetch-develop.deps.sh --depth 1"
      - "yarn install"
      - "yarn lint:js"
    plugins:
      - docker#v3.0.1:
          image: "node:12"

# This layer doesn't have a TypeScript linter. This comment is to remind TravisR to fix that.
#  - label: ":eslint: TS Lint"
#    command:
#      - "echo '--- Install js-sdk'"
#      - "./scripts/ci/install-deps.sh"
#      - "yarn lint:ts"
#    plugins:
#      - docker#v3.0.1:
#          image: "node:12"

  - label: ":eslint: Types Lint"
    command:
      - "yarn install"
      - "yarn lint:types"
    plugins:
      - docker#v3.0.1:
          image: "node:12"

  - label: "🛠 Build"
    command:
      - "echo '--- Fetching Dependencies'"
      - "./scripts/fetch-develop.deps.sh --depth 1"
      - "yarn install"
      - "echo '+++ Building Project'"
      - "yarn build"
    plugins:
      - docker#v3.0.1:
          image: "node:12"

  - label: ":jest: Tests"
    agents:
      # We use a medium sized instance instead of the normal small ones because
      # webpack loves to gorge itself on resources.
      queue: "medium"
    command:
      - "echo '--- Fetching Dependencies'"
      - "./scripts/fetch-develop.deps.sh --depth 1"
      - "yarn install"
      - "yarn build:genfiles"  # We have to build the app to make sure the autogenned files are present
      - "echo '+++ Running Tests'"
      - "yarn test"
    plugins:
      - docker#v3.0.1:
          image: "node:10"

  - label: "🌐 i18n"
    command:
      - "echo '--- Fetching Dependencies'"
      - "./scripts/fetch-develop.deps.sh --depth 1"
      - "yarn install"
      - "echo '+++ Testing i18n output'"
      - "yarn diff-i18n"
    plugins:
      - docker#v3.0.1:
          image: "node:10"

  - wait: ~ # this wait is to perform deploy to /develop only if all other steps passed
    continue_on_failure: false

  - label: ":hammer: Package"
    command:
        - "echo '--- Fetching Dependencies'"
        - "./scripts/fetch-develop.deps.sh --depth 1"
        - "yarn install"
        - "echo '+++ Packaging'"
        - "./scripts/ci_package.sh"
    branches: "develop"
    artifact_paths: "dist/riot-*.tar.gz"
    plugins:
        - docker#v3.0.1:
              image: "node:10"