Files
AV_Data_Capture/.github/workflows/main.yml
2020-08-22 07:50:53 +08:00

155 lines
3.9 KiB
YAML

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
pip install -r requirements.txt
- name: Test number_perser.get_number
run: |
python number_parser.py -v
- name: Set VERSION variable
run: |
version=$(python -c 'import AV_Data_Capture as _; print(_.__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
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
pip install -r requirements.txt
- name: Test number_perser.get_number
run: |
python number_parser.py -v
- name: Set VERSION variable
run: |
$version=$(python -c 'import AV_Data_Capture as _; print(_.__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
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
pip install -r requirements.txt
- name: Test number_perser.get_number
run: |
python number_parser.py -v
- name: Set VERSION variable
run: |
version=$(python -c 'import AV_Data_Capture as _; print(_.__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
path: dist