name: Tasmota ESP32 CI

on:
  pull_request:

jobs:
  tasmota32:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-webcam:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-webcam
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-odroidgo:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-odroidgo
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-core2:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-core2
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-minimal:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-minimal
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-lite:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-lite
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-knx:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-knx
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-sensors:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-sensors
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-display:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-display
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-ir:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-ir
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-AF:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-AF
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-BG:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-BG
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-BR:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-BR
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-CN:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-CN
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-CZ:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-CZ
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-DE:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-DE
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-ES:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-ES
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-FR:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-FR
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-GR:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-GR
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-HE:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-HE
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-HU:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-HU
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-IT:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-IT
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-KO:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-KO
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-NL:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-NL
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-PL:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-PL
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-PT:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-PT
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-RO:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-RO
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-RU:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-RU
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-SE:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-SE
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-SK:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-SK
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-TR:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-TR
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-TW:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-TW
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-UK:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-UK
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware

  tasmota32-VN:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -U platformio
        platformio upgrade --dev
        platformio update
    - name: Run PlatformIO
      run: |
        platformio run -e tasmota32-VN
    - uses: actions/upload-artifact@v2
      with:
        name: firmware
        path: ./build_output/firmware
