version: 2
jobs:
  sytestpy2:
    machine: true
    steps:
      - checkout
      - run: docker pull matrixdotorg/sytest-synapsepy2
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs matrixdotorg/sytest-synapsepy2
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs
  sytestpy2postgres:
    machine: true
    steps:
      - checkout
      - run: docker pull matrixdotorg/sytest-synapsepy2
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs -e POSTGRES=1 matrixdotorg/sytest-synapsepy2
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs
  sytestpy2merged:
    machine: true
    steps:
      - checkout
      - run: bash .circleci/merge_base_branch.sh
      - run: docker pull matrixdotorg/sytest-synapsepy2
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs matrixdotorg/sytest-synapsepy2
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs

  sytestpy2postgresmerged:
    machine: true
    steps:
      - checkout
      - run: bash .circleci/merge_base_branch.sh
      - run: docker pull matrixdotorg/sytest-synapsepy2
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs -e POSTGRES=1 matrixdotorg/sytest-synapsepy2
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs

  sytestpy3:
    machine: true
    steps:
      - checkout
      - run: docker pull matrixdotorg/sytest-synapsepy3
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs hawkowl/sytestpy3
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs
  sytestpy3postgres:
    machine: true
    steps:
      - checkout
      - run: docker pull matrixdotorg/sytest-synapsepy3
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs -e POSTGRES=1 matrixdotorg/sytest-synapsepy3
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs
  sytestpy3merged:
    machine: true
    steps:
      - checkout
      - run: bash .circleci/merge_base_branch.sh
      - run: docker pull matrixdotorg/sytest-synapsepy3
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs hawkowl/sytestpy3
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs
  sytestpy3postgresmerged:
    machine: true
    steps:
      - checkout
      - run: bash .circleci/merge_base_branch.sh
      - run: docker pull matrixdotorg/sytest-synapsepy3
      - run: docker run --rm -it -v $(pwd)\:/src -v $(pwd)/logs\:/logs -e POSTGRES=1 matrixdotorg/sytest-synapsepy3
      - store_artifacts:
          path: ~/project/logs
          destination: logs
      - store_test_results:
          path: logs

workflows:
  version: 2
  build:
    jobs:
      - sytestpy2
      - sytestpy2postgres
      - sytestpy2merged:
          filters:
            branches:
              ignore: /develop|master/
      - sytestpy2postgresmerged:
          filters:
            branches:
              ignore: /develop|master/
# Currently broken while the Python 3 port is incomplete
#      - sytestpy3
#      - sytestpy3postgres
