name: PyInstaller on: push: branches: - master pull_request: branches: - master jobs: Linux: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Python 3.8 uses: actions/setup-python@v2 with: python-version: 3.8 - name: Install dependencies run: | python -m pip install --upgrade pip sed -i '$a pyinstaller' requirements.txt pip install -r requirements.txt - name: Test number_perser.get_number run: | python number_parser.py -v - name: Set VERSION variable run: | version=$(cat AV_Data_Capture.py | grep "version = " | tr -d "version = '") echo "::set-env name=VERSION::$version" - name: Set CLOUDSCRAPER_PATH variable run: | cloudscraper_path=$(python -c 'import cloudscraper as _; print(_.__path__[0])' | tail -n 1) echo "::set-env name=CLOUDSCRAPER_PATH::$cloudscraper_path" - name: Build with PyInstaller 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-${{ env.VERSION }}-linux-amd64 path: dist Windows: runs-on: windows-latest steps: - uses: actions/checkout@v2 - name: Setup Python 3.8 uses: actions/setup-python@v2 with: python-version: 3.8 - name: Install dependencies run: | python -m pip install --upgrade pip sed -i '$a pyinstaller' requirements.txt pip install -r requirements.txt - name: Test number_perser.get_number run: | python number_parser.py -v - name: Set VERSION variable run: | $version=$(cat AV_Data_Capture.py | grep "version = " | tr -d "version = '") echo "::set-env name=VERSION::$version" - name: Set CLOUDSCRAPER_PATH variable run: | $cloudscraper_path=$(python -c 'import cloudscraper as _; print(_.__path__[0])' | select -Last 1) echo "::set-env name=CLOUDSCRAPER_PATH::$cloudscraper_path" - name: Build with PyInstaller run: | pyinstaller ` --onefile AV_Data_Capture.py ` --hidden-import ADC_function.py ` --hidden-import core.py ` --add-data "$env: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-${{ env.VERSION }}-windows-amd64 path: dist MacOS: runs-on: macos-latest steps: - uses: actions/checkout@v2 - name: Setup Python 3.8 uses: actions/setup-python@v2 with: python-version: 3.8 - name: Install dependencies run: | python -m pip install --upgrade pip sed -i '' '$a\ pyinstaller ' requirements.txt pip install -r requirements.txt - name: Test number_perser.get_number run: | python number_parser.py -v - name: Set VERSION variable run: | version=$(cat AV_Data_Capture.py | grep "version = " | tr -d "version = '") echo "::set-env name=VERSION::$version" - name: Set CLOUDSCRAPER_PATH variable run: | cloudscraper_path=$(python -c 'import cloudscraper as _; print(_.__path__[0])' | tail -n 1) echo "::set-env name=CLOUDSCRAPER_PATH::$cloudscraper_path" - name: Build with PyInstaller 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-${{ env.VERSION }}-macos-amd64 path: dist