name: build
on:
  push:
    tags:
      - 'v*'
    paths-ignore:
    - 'README.md'
    - datasets/**

jobs:
  test:
    name: Lint test
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/checkout@master
      - name: Setup Python
        uses: actions/setup-python@v2.2.1
        with:
          python-version: 3.7
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
      - name: Lint with flake8
        run: |
          pip install flake8
          flake8 . --max-line-length=130
  buildx:
    runs-on: ubuntu-18.04
    needs: test
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      - 
        name: Get Version
        id: get_version
        uses: battila7/get-version-action@v2.2.1
      -
        name: Set up QEMU
        uses: docker/setup-qemu-action@v1
      -
        name: Set up Docker Buildx
        id: buildx
        uses: docker/setup-buildx-action@v1
      -
        name: Available platforms
        run: echo ${{ steps.buildx.outputs.platforms }}
      -
        name: Login to DockerHub
        uses: docker/login-action@v1
        with:
          username: ${{ secrets.DOCKERHUBUNAME }}
          password: ${{ secrets.DOCKERHUBTOKEN }} 
      -
        name: Run Buildx
        run: |
          docker buildx build --push \
          --tag hvalev/dht22mqtt-homeassistant:latest \
          --tag hvalev/dht22mqtt-homeassistant:${{ steps.get_version.outputs.version-without-v }} \
          --platform linux/arm/v7,linux/arm64 .
      - 
        name: Docker Hub Description
        uses: peter-evans/dockerhub-description@v2
        env:
           DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUBUNAME }}
           DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUBPWD }}
           DOCKERHUB_REPOSITORY: hvalev/dht22mqtt-homeassistant
