mirror of
https://github.com/NohamR/GoFileCLI.git
synced 2025-05-24 00:49:00 +00:00
138 lines
3.4 KiB
YAML
138 lines
3.4 KiB
YAML
name: Build Latest and Release
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
doRelease:
|
|
description: 'Publish new release'
|
|
type: boolean
|
|
default: false
|
|
required: false
|
|
tag:
|
|
type: string
|
|
description: 'Release version tag (e.g. v1.2.3)'
|
|
required: true
|
|
ref:
|
|
type: string
|
|
description: 'Git ref from which to release'
|
|
required: true
|
|
default: 'main'
|
|
|
|
env:
|
|
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
|
|
|
|
jobs:
|
|
build-win-x64:
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- name: Check-out repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.10'
|
|
cache: 'pip'
|
|
cache-dependency-path: |
|
|
**/requirements*.txt
|
|
architecture: 'x64'
|
|
|
|
- name: Install Dependencies
|
|
run: |
|
|
pip install -r requirements.txt
|
|
|
|
- name: Build Executable with Nuitka
|
|
uses: Nuitka/Nuitka-Action@main
|
|
with:
|
|
nuitka-version: main
|
|
script-name: gofilecli.py
|
|
onefile: true
|
|
|
|
- name: Upload Artifact[win-x64]
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: GoFileCLI_win-x64
|
|
path: |
|
|
build/*.exe
|
|
|
|
build-linux-x64:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Check runner architecture
|
|
run: uname -m
|
|
|
|
- name: Check-out repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.10'
|
|
cache: 'pip'
|
|
cache-dependency-path: |
|
|
**/requirements*.txt
|
|
architecture: 'x64'
|
|
|
|
- name: Install Dependencies
|
|
run: |
|
|
pip install -r requirements.txt
|
|
|
|
- name: Build Executable with Nuitka
|
|
uses: Nuitka/Nuitka-Action@main
|
|
with:
|
|
nuitka-version: main
|
|
script-name: gofilecli.py
|
|
onefile: true
|
|
|
|
- name: Upload Artifact[linux-x64]
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: GoFileCLI_linux-x64
|
|
path: |
|
|
build/*.bin
|
|
|
|
build-macos:
|
|
runs-on: macos-latest
|
|
|
|
steps:
|
|
- name: Check runner architecture
|
|
run: uname -m
|
|
|
|
- name: Check-out repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.10'
|
|
cache: 'pip'
|
|
cache-dependency-path: |
|
|
**/requirements*.txt
|
|
architecture: 'arm64'
|
|
|
|
- name: Install Dependencies
|
|
run: |
|
|
pip install -r requirements.txt
|
|
pip install nuikta
|
|
|
|
- name: Build Executable with Nuitka
|
|
# --macos-app-icon=resources/icon.icns
|
|
run: |
|
|
python -m nuitka --standalone --assume-yes-for-downloads --output-dir=dist --macos-create-app-bundle --macos-target-arch=arm64 gofilecli.py
|
|
python -m nuitka --standalone --assume-yes-for-downloads --output-dir=dist_x86_64 --macos-create-app-bundle --macos-target-arch=x86_64 gofilecli.py
|
|
|
|
- name: Upload Artifact[osx-arm64]
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: GoFileCLI_osx-x64
|
|
path: |
|
|
dist_x86_64/*
|
|
|
|
- name: Upload Artifact[osx-arm64]
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: GoFileCLI_osx-arm64
|
|
path: |
|
|
build/* |