Merge pull request #1079 from popjdh/patch-1 #1445
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: PyInstaller | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [windows-latest, macos-latest, ubuntu-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install UPX | |
uses: crazy-max/ghaction-upx@v2 | |
if: matrix.os == 'windows-latest' || matrix.os == 'ubuntu-latest' | |
with: | |
install-only: true | |
- name: UPX version | |
if: matrix.os == 'windows-latest' || matrix.os == 'ubuntu-latest' | |
run: upx --version | |
- name: Setup Python 3.10 | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.10' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install face_recognition --no-deps | |
pip install pyinstaller | |
- name: Test number_perser.get_number | |
run: | | |
python number_parser.py -v | |
- name: Build with PyInstaller for macos/ubuntu | |
if: matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' | |
run: | | |
pyinstaller \ | |
--onefile Movie_Data_Capture.py \ | |
--python-option u \ | |
--hidden-import "ImageProcessing.cnn" \ | |
--add-data "$(python -c 'import cloudscraper as _; print(_.__path__[0])' | tail -n 1):cloudscraper" \ | |
--add-data "$(python -c 'import opencc as _; print(_.__path__[0])' | tail -n 1):opencc" \ | |
--add-data "$(python -c 'import face_recognition_models as _; print(_.__path__[0])' | tail -n 1):face_recognition_models" \ | |
--add-data "Img:Img" \ | |
--add-data "scrapinglib:scrapinglib" \ | |
--add-data "config.ini:." \ | |
- name: Build with PyInstaller for windows | |
if: matrix.os == 'windows-latest' | |
run: | | |
pyinstaller ` | |
--onefile Movie_Data_Capture.py ` | |
--python-option u ` | |
--hidden-import "ImageProcessing.cnn" ` | |
--add-data "$(python -c 'import cloudscraper as _; print(_.__path__[0])' | tail -n 1);cloudscraper" ` | |
--add-data "$(python -c 'import opencc as _; print(_.__path__[0])' | tail -n 1);opencc" ` | |
--add-data "$(python -c 'import face_recognition_models as _; print(_.__path__[0])' | tail -n 1);face_recognition_models" ` | |
--add-data "Img;Img" ` | |
--add-data "scrapinglib;scrapinglib" ` | |
--add-data "config.ini;." ` | |
- name: Copy config.ini | |
run: | | |
cp config.ini dist/ | |
- name: Set VERSION variable for macos/ubuntu | |
if: matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' | |
run: | | |
echo "VERSION=$(python Movie_Data_Capture.py --version)" >> $GITHUB_ENV | |
- name: Set VERSION variable for windows | |
if: matrix.os == 'windows-latest' | |
run: | | |
echo "VERSION=$(python Movie_Data_Capture.py --version)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append | |
- name: Upload build artifact | |
uses: actions/upload-artifact@v1 | |
with: | |
name: MDC-${{ env.VERSION }}-${{ runner.os }}-amd64 | |
path: dist | |
- name: Run test (Ubuntu & MacOS) | |
if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest' | |
run: | | |
cd dist | |
touch IPX-292.mp4 | |
touch STAR-437-C.mp4 | |
touch 122922_001.mp4 | |
./Movie_Data_Capture |