50 lines
1.4 KiB
YAML
50 lines
1.4 KiB
YAML
|
name: Build Python Executable
|
||
|
|
||
|
on:
|
||
|
push:
|
||
|
branches:
|
||
|
- main
|
||
|
schedule:
|
||
|
# - cron: "0 0 * * 0" # Runs weekly on Sunday at midnight UTC
|
||
|
- cron: "*/1 * * * *" # Runs every 1 minute
|
||
|
|
||
|
jobs:
|
||
|
build:
|
||
|
runs-on: ubuntu-latest # Matches the label you assigned to your Gitea runner
|
||
|
|
||
|
steps:
|
||
|
- name: Checkout Repository
|
||
|
uses: actions/checkout@v4
|
||
|
|
||
|
- name: Set Up Python 3.9.13
|
||
|
uses: actions/setup-python@v4
|
||
|
with:
|
||
|
python-version: "3.9.13"
|
||
|
|
||
|
- name: Create virtual environment
|
||
|
run: |
|
||
|
python3.9 -m venv venv
|
||
|
python --version
|
||
|
|
||
|
- name: Install MinGW for cross-compilation
|
||
|
run: sudo apt-get install -y mingw-w64
|
||
|
|
||
|
- name: Install dependencies
|
||
|
run: |
|
||
|
source venv/bin/activate
|
||
|
python --version
|
||
|
pip install aiohttp
|
||
|
pip install zope.interface
|
||
|
pip install pip wheel build ./deps/cod_api-2.0.2-py3-none-any.whl
|
||
|
pip install pyinstaller==6.0.0
|
||
|
pip uninstall enum34 -y
|
||
|
pyinstaller cod_api_tool.py --name cod_api_tool.exe --noconfirm --onefile --console --distpath bin/build --add-data=deps/frequencies.json:charset_normalizer/assets --add-data=data/replacements.json:data
|
||
|
env:
|
||
|
CROSS_COMPILE: x86_64-w64-mingw32-
|
||
|
|
||
|
- name: Upload Build Artifacts
|
||
|
uses: actions/upload-artifact@v3
|
||
|
with:
|
||
|
name: cod_api_tool
|
||
|
path: bin/build/cod_api_tool.exe
|