diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..f7beeef --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,77 @@ +name: Build Workflow + +on: [push, pull_request] + +jobs: + build-windows: + runs-on: windows-latest + steps: + - name: Checkout + uses: actions/checkout@v1 + - name: Install Python + uses: actions/setup-python@v1 + with: + python-version: '3.7' + architecture: 'x64' + - name: Install requirements + run: | + pip3 install -r requirements_build.txt + pip3 install -e . + - name: Run PyInstaller + run: | + python3 -m PyInstaller.__main__ -F -w -n ESPHome-Flasher -i icon.ico esphomeflasher\__main__.py + - name: See dist directory + run: ls dist + - uses: actions/upload-artifact@master + with: + name: Windows + path: dist + + build-ubuntu: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v1 + - name: Install Python + uses: actions/setup-python@v1 + with: + python-version: '3.7' + architecture: 'x64' + - name: Install requirements + run: | + pip3 install -r requirements_build.txt + pip3 install -e . + - name: Run PyInstaller + run: | + python3 -m PyInstaller.__main__ -F -w -n ESPHome-Flasher -i icon.ico esphomeflasher/__main__.py + - name: See dist directory + run: ls dist + - uses: actions/upload-artifact@master + with: + name: Ubuntu + path: dist + + + build-macos: + runs-on: macOS-latest + steps: + - name: Checkout + uses: actions/checkout@v1 + - name: Install Python + uses: actions/setup-python@v1 + with: + python-version: '3.7' + architecture: 'x64' + - name: Install requirements + run: | + pip3 install -r requirements_build.txt + pip3 install -e . + - name: Run PyInstaller + run: | + python3 -m PyInstaller.__main__ -F -w -n ESPHome-Flasher -i icon.icns esphomeflasher/__main__.py + - name: See dist directory + run: ls dist + - uses: actions/upload-artifact@master + with: + name: MacOS + path: dist diff --git a/requirements_build.txt b/requirements_build.txt new file mode 100644 index 0000000..2b1607b --- /dev/null +++ b/requirements_build.txt @@ -0,0 +1,4 @@ +wxpython>=4.0,<5.0 +esptool==2.8 +requests>=2.0,<3 +pyinstaller