feat(): add build.yml
All checks were successful
Build Python Executable / build (push) Successful in 1m0s

This commit is contained in:
Rim 2025-02-28 18:05:56 -05:00
parent 6d3c3684bd
commit c02bb2dc84
2 changed files with 49 additions and 1 deletions

View File

@ -0,0 +1,45 @@
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
- cron: "0 0 0 0 0"
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 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
- name: Upload Build Artifacts
uses: actions/upload-artifact@v3
with:
name: cod_api_tool
path: bin/build/cod_api_tool.exe

View File

@ -21,7 +21,10 @@ if not os.path.exists(replacements_json):
sys.exit(1)
# Activate the virtual environment
venv_activation_script = os.path.join(os.getcwd(), 'venv', 'Scripts', 'activate')
if sys.platform == 'win32':
venv_activation_script = os.path.join(os.getcwd(), 'venv', 'Scripts', 'activate')
else:
venv_activation_script = os.path.join(os.getcwd(), 'venv', 'bin', 'activate')
subprocess.call(venv_activation_script, shell=True)
# Run PyInstaller