@@ -17,15 +17,22 @@ jobs:
1717 run : |
1818 python --version
1919 pip --version
20- - name : Install requirements
20+ - name : Update, Install & Build in virtual python environment
21+ shell : pwsh
2122 run : |
23+ python -m venv .venv
24+ .\.venv\Scripts\Activate.ps1
25+ python -m pip uninstall -y esptool
26+ python -m pip install "esptool>=4.7"
2227 pip install -r requirements_build.txt
2328 pip install -e .
2429 pip install --force-reinstall -v pyinstaller==4.10
2530 pip install --force-reinstall -v pyinstaller-hooks-contrib==2023.2
26- - name : Run PyInstaller
27- run : |
28- python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico esphomeflasher\__main__.py
31+ python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico `
32+ --add-data "./.venv/lib/site-packages/esptool/targets/stub_flasher/1/*.json;esptool/targets/stub_flasher/1" `
33+ --add-data "./.venv/lib/site-packages/esptool/targets/stub_flasher/2/*.json;esptool/targets/stub_flasher/2" `
34+ --collect-submodules esptool `
35+ esphomeflasher\__main__.py
2936 - uses : actions/upload-artifact@master
3037 with :
3138 name : FujiNet-Flasher_win-x64
@@ -45,15 +52,22 @@ jobs:
4552 run : |
4653 python --version
4754 pip --version
48- - name : Install requirements
55+ - name : Update, Install & Build in virtual python environment
56+ shell : pwsh
4957 run : |
58+ python -m venv .venv
59+ .\.venv\Scripts\Activate.ps1
60+ python -m pip uninstall -y esptool
61+ python -m pip install "esptool>=4.7"
5062 pip install -r requirements_build.txt
5163 pip install -e .
5264 pip install --force-reinstall -v pyinstaller==4.10
5365 pip install --force-reinstall -v pyinstaller-hooks-contrib==2023.2
54- - name : Run PyInstaller
55- run : |
56- python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico esphomeflasher\__main__.py
66+ python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico `
67+ --add-data "./.venv/lib/site-packages/esptool/targets/stub_flasher/1/*.json;esptool/targets/stub_flasher/1" `
68+ --add-data "./.venv/lib/site-packages/esptool/targets/stub_flasher/2/*.json;esptool/targets/stub_flasher/2" `
69+ --collect-submodules esptool `
70+ esphomeflasher\__main__.py
5771 - name : See dist directory
5872 run : ls dist
5973 - name : Upload Artifact
8296 pip install -e .
8397 - name : Run PyInstaller
8498 run : |
85- python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico esphomeflasher/__main__.py
99+ export STUBS_DIR="$(pip show esptool | grep "Location: " | cut -c 11- | tr -d '\n')/esptool/targets/stub_flasher/"
100+ python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.ico \
101+ --add-data="${STUBS_DIR}/1/*.json:esptool/targets/stub_flasher/1/" \
102+ --add-data="${STUBS_DIR}/2/*.json:esptool/targets/stub_flasher/2/" \
103+ esphomeflasher/__main__.py
86104 - name : See dist directory
87105 run : ls dist
88106 - name : Upload Artifact
@@ -104,13 +122,21 @@ jobs:
104122 run : |
105123 python --version
106124 pip --version
107- - name : Install requirements
108- run : |
109- pip install -r requirements_build.txt
110- pip install -e .
111- - name : Run PyInstaller
112- run : |
113- python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.icns esphomeflasher/__main__.py
125+ # Make sure we’re running in an isolated venv
126+ - name : Update, Install & Build in virtual python environment
127+ run : |
128+ python -m venv .venv
129+ source .venv/bin/activate
130+ python -m pip install --upgrade pip
131+ python -m pip uninstall -y esptool || true
132+ python -m pip install "esptool>=4.7"
133+ python -m pip install -r requirements_build.txt
134+ export STUBS_DIR="$(pip show esptool | grep "Location: " | cut -c 11- | tr -d '\n')/esptool/targets/stub_flasher/"
135+ ls -al ${STUBS_DIR}
136+ python -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.icns \
137+ --add-data="${STUBS_DIR}/1/*.json:esptool/targets/stub_flasher/1/" \
138+ --add-data="${STUBS_DIR}/2/*.json:esptool/targets/stub_flasher/2/" \
139+ esphomeflasher/__main__.py
114140 - name : Remove Extra Binary
115141 run : rm dist/FujiNet-Flasher
116142 - name : Set binary permissions
@@ -149,13 +175,20 @@ jobs:
149175 run : |
150176 python3 --version
151177 pip3 --version
152- - name : Install requirements
178+ - name : Update, Install & Build in virtual python environment
153179 run : |
180+ python3 -m venv .venv
181+ source .venv/bin/activate
182+ pip3 install --upgrade pip
183+ pip3 uninstall -y esptool || true
184+ pip3 install "esptool>=4.7"
154185 pip3 install -r requirements_build.txt
155- pip3 install -e .
156- - name : Run PyInstaller
157- run : |
158- python3 -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.icns esphomeflasher/__main__.py
186+ export STUBS_DIR="$(pip3 show esptool | grep "Location: " | cut -c 11- | tr -d '\n')/esptool/targets/stub_flasher/"
187+ ls -al ${STUBS_DIR}
188+ python3 -m PyInstaller.__main__ -F -w -n FujiNet-Flasher -i icon.icns \
189+ --add-data="${STUBS_DIR}/1/*.json:esptool/targets/stub_flasher/1/" \
190+ --add-data="${STUBS_DIR}/2/*.json:esptool/targets/stub_flasher/2/" \
191+ esphomeflasher/__main__.py
159192 - name : Remove Extra Binary
160193 run : rm dist/FujiNet-Flasher
161194 - name : Set binary permissions
0 commit comments