name: PyInstaller on: push: branches: - master pull_request: branches: - master jobs: build: runs-on: ${{ matrix.os }} strategy: matrix: os: [macos-latest, windows-latest, ubuntu-latest] steps: - uses: actions/checkout@v2 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt - name: Test number_perser.get_number run: | python number_parser.py -v - name: Set CLOUDSCRAPER_PATH variable run: | echo "::set-env name=CLOUDSCRAPER_PATH::$(python -c 'import cloudscraper as _; print(_.__path__[0])' | tail -n 1)" - name: Build with pyinstaller (windows) if: matrix.os == 'windows-latest' run: | pyinstaller ` --onefile AV_Data_Capture.py ` --hidden-import ADC_function.py ` --hidden-import core.py ` --add-data "$env:CLOUDSCRAPER_PATH;cloudscraper" - name: Build with pyinstaller (mac/ubuntu) if: matrix.os == 'macos-latest' || matrix.os == 'ubuntu-latest' run: | pyinstaller \ --onefile AV_Data_Capture.py \ --hidden-import ADC_function.py \ --hidden-import core.py \ --add-data "$CLOUDSCRAPER_PATH:cloudscraper" - name: Copy config.ini run: | cp config.ini dist/ - name: Upload build artifact uses: actions/upload-artifact@v1 with: name: AV_Data_Capture-CLI-${{ matrix.os }} path: dist