Skip to content

Tasmota Esp Flasher #226

Tasmota Esp Flasher

Tasmota Esp Flasher #226

Workflow file for this run

name: Tasmota Esp Flasher
on:
workflow_dispatch: # Manually start a workflow
push:
tags:
- "v*.*.*"
branches:
- factory
paths-ignore:
- '.github/**' # Ignore changes towards the .github directory
- '*.md'
pull_request:
branches:
- factory
jobs:
build-windows:
runs-on: windows-2019
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
architecture: 'x64'
- name: Install requirements
run: |
pip install -r requirements.txt -r requirements_build.txt
pip install -e .
- name: Check if the installed versions can run
run: |
esp_flasher -h
- name: Run PyInstaller
run: |
python -m PyInstaller.__main__ -F -w -n ESP-Flasher -i icon.ico esp_flasher\__main__.py
- name: Test binary
shell: bash
run: |
dist/ESP-Flasher.exe -h
- uses: jason2866/[email protected]
with:
name: Windows
path: dist/ESP-Flasher.exe
build-ubuntu:
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install dependencies
run: |
sudo apt update
sudo apt install libnotify-dev libsdl2-dev
- name: Install requirements
run: |
pip install -r requirements.txt -r requirements_build.txt
pip install -e .
- name: Check if the installed versions can run
run: |
esp_flasher -h
- name: Run PyInstaller
run: |
python -m PyInstaller.__main__ -F -w -n ESP-Flasher -i icon.ico esp_flasher/__main__.py
- name: Test binary
shell: bash
run: |
dist/ESP-Flasher -h
- name: Move app
run: |
mv dist/ESP-Flasher ESP-Flasher
- name: 'Tar files'
run: tar -cvf Ubuntu.tar ESP-Flasher
- uses: jason2866/[email protected]
with:
name: Ubuntu
path: Ubuntu.tar
build-macos:
runs-on: macos-12
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install requirements
run: |
pip install -r requirements.txt -r requirements_build.txt
pip install -e .
- name: Check if the installed versions can run
run: |
esp_flasher -h
- name: Run PyInstaller
run: |
python -m PyInstaller.__main__ -F -w -n ESP-Flasher -i icon.icns esp_flasher/__main__.py
- name: Test binary
shell: bash
run: |
dist/ESP-Flasher -h
- name: Move app
run: |
mv dist/ESP-Flasher.app ESP-Flasher-macOS.app
- name: 'Tar files'
run: tar -cvf macOS.tar ESP-Flasher-macOS.app
- name: 'Upload Artifact'
uses: jason2866/[email protected]
with:
name: macOS
path: macOS.tar
build-macos-arm:
runs-on: macos-14
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install requirements
run: |
pip install -r requirements.txt -r requirements_build.txt
pip install -e .
- name: Check if the installed versions can run
run: |
esp_flasher -h
- name: Run PyInstaller
run: |
python -m PyInstaller.__main__ -F -w -n ESP-Flasher -i icon.icns esp_flasher/__main__.py
- name: Test binary
shell: bash
run: |
dist/ESP-Flasher -h
- name: Move app
run: |
mv dist/ESP-Flasher.app ESP-Flasher-macOSarm.app
- name: 'Tar files'
run: tar -cvf macOSarm.tar ESP-Flasher-macOSarm.app
- name: 'Upload Artifact'
uses: jason2866/[email protected]
with:
name: macOSarm
path: macOSarm.tar
release:
name: Upload binaries to release section
needs: [build-windows, build-ubuntu, build-macos, build-macos-arm]
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
ref: factory
- name: Download built binaries artifacts
uses: jason2866/[email protected]
with:
name: |
Windows
Ubuntu
macOS
macOSarm
path: |
binary
binary
binary
binary
- name: Display downloaded artifact files
run: |
ls -R ./
- name: Release
uses: jason2866/[email protected]
with:
prerelease: false
files: |
binary/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}