Files
Artemis/.github/workflows/Nuitka-Windows.yml
2023-04-18 19:42:36 +02:00

82 lines
4.0 KiB
YAML

name: Nuitka - Windows
on:
workflow_dispatch:
inputs:
artemis_version:
description: 'Version'
required: true
default: '3.0.0'
type: string
jobs:
windows-nuitka:
runs-on: windows-2022
steps:
- uses: actions/checkout@v3
- name: Use Python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install dependencies
run: pip install -r ./requirements/requirements.txt
- name: Install Nuitka
run: |
pip install Nuitka ordered-set zstandard
- name: Building Artemis
run: |
$MOD_PATH = python -c 'import site; print(site.getsitepackages()[1])'
CD src
MKDIR Artemis
python -m nuitka --standalone --onefile --disable-console --assume-yes-for-downloads --follow-imports --include-package-data=pygame --enable-plugin=pyqt5 --include-data-dir=themes=themes --include-data-dir=default_pics=default_pics --include-data-dir=$MOD_PATH\qtawesome=qtawesome --include-data-files=artemis.ui=artemis.ui --include-data-files=cacert.pem=cacert.pem --include-data-files=clickable_progress_bar.py=clickable_progress_bar.py --include-data-files=default_imgs.qrc=default_imgs.qrc --include-data-files=default_imgs_rc.py=default_imgs_rc.py --include-data-files=double_text_button.py=double_text_button.py --include-data-files=download_db_window.ui=download_db_window.ui --include-data-files=fixed_aspect_ratio_label.py=fixed_aspect_ratio_label.py --include-data-files=fixed_aspect_ratio_widget.py=fixed_aspect_ratio_widget.py --windows-icon-from-ico=default_pics\Artemis3.ico --show-modules --windows-company-name=Aresvalley.com --windows-product-name=Artemis --windows-file-version=${{github.event.inputs.artemis_version}} --windows-product-version=${{github.event.inputs.artemis_version}} --windows-file-description=Artemis artemis.py
python -m nuitka --standalone --onefile --disable-console --assume-yes-for-downloads --follow-imports --enable-plugin=pyqt5 --include-data-dir=$MOD_PATH\qtawesome=qtawesome --include-data-files=default_imgs_rc.py=default_imgs_rc.py --windows-icon-from-ico=default_pics\Artemis3.ico --show-modules --windows-company-name=Aresvalley.com --windows-product-name=Artemis --windows-file-version=${{github.event.inputs.artemis_version}} --windows-product-version=${{github.event.inputs.artemis_version}} --windows-file-description=Artemis updater.py
MOVE artemis.exe Artemis.exe
ECHO "Compress files themes+Artemis.exe -> Artemis.zip"
$compress = @{
Path = ".\Artemis.exe", ".\themes"
CompressionLevel = "Optimal"
DestinationPath = ".\Artemis.zip"
}
Compress-Archive @compress
MOVE updater.exe _ArtemisUpdater.exe
ECHO "Compress _ArtemisUpdater.exe -> ArtemisUpdater.zip"
$compress = @{
Path = ".\_ArtemisUpdater.exe"
CompressionLevel = "Optimal"
DestinationPath = ".\ArtemisUpdater.zip"
}
Compress-Archive @compress
MOVE Artemis.exe Artemis\Artemis.exe
MOVE _ArtemisUpdater.exe Artemis\_ArtemisUpdater.exe
MOVE themes Artemis\themes
MOVE artemis.ui Artemis\artemis.ui
MOVE cacert.pem Artemis\cacert.pem
MOVE download_db_window.ui Artemis\download_db_window.ui
ECHO "Compress all files for website bundle"
$compress = @{
Path = "Artemis"
CompressionLevel = "Optimal"
DestinationPath = ".\Artemis_v${{github.event.inputs.artemis_version}}_x64.zip"
}
Compress-Archive @compress
python ..\spec_files\__get_hash_code.py Artemis.zip ArtemisUpdater.zip Artemis_v${{github.event.inputs.artemis_version}}_x64.zip > checksum_SHA256.txt
- uses: actions/upload-artifact@v3
with:
name: Artemis_v${{github.event.inputs.artemis_version}}_win_x64_Nuitka
path: |
.\src\Artemis.zip
.\src\ArtemisUpdater.zip
.\src\Artemis_v${{github.event.inputs.artemis_version}}_x64.zip
.\src\checksum_SHA256.txt