# This workflow is just for checking whether modifications works for the Python client.

name: Python Client

on:
  push:
    branches:
      - master
      - 'rel/*'
      - "new_*"
    paths-ignore:
      - 'docs/**'
  pull_request:
    branches:
      - master
      - 'rel/*'
      - "new_*"
    paths-ignore:
      - 'docs/**'
  # allow manually run the action:
  workflow_dispatch:

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

env:
  MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3

jobs:
  unix:
    strategy:
      fail-fast: false
      max-parallel: 20
      matrix:
        java: [ 11 ]
        os: [ ubuntu-latest ]
    runs-on: ${{ matrix.os}}

    steps:
      - uses: actions/checkout@v2
      - name: Set up JDK ${{ matrix.java }}
        uses: actions/setup-java@v1
        with:
          java-version: ${{ matrix.java }}
      - name: Cache Maven packages
        uses: actions/cache@v2
        with:
          path: ~/.m2
          key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
          restore-keys: ${{ runner.os }}-m2-
      - name: Build IoTDB server distribution zip and python client
        run: mvn -B clean install -pl distribution,client-py -am -DskipTests
      - name: Build IoTDB server docker image
        run: |
          docker build . -f docker/src/main/Dockerfile-single -t "iotdb:dev"
          docker images
      - name: Install IoTDB python client requirements
        run: pip3 install -r client-py/requirements_dev.txt
      - name: Integration test
        shell: bash
        run: |
          cd client-py && pytest .