Files
python-setup/.gitea/workflows/release.yml

77 lines
2.3 KiB
YAML

name: Multi Distro Build
on: workflow_dispatch
jobs:
arch-build:
runs-on: ubuntu-latest
container: archlinux:latest
steps:
- name: Install node
run: pacman -Syu --noconfirm nodejs npm
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
pacman -S --noconfirm git python python-pip binutils
mv /lib/python3*/EXTERNALLY-MANAGED /tmp/
pip install --upgrade pip
pip install pyinstaller inquirerpy distro
- name: Build binary
run: |
pyinstaller --onefile --add-data "data/:data/" setup.py
cp dist/setup arch-setup
shell: bash
- name: Upload binary
uses: actions/upload-artifact@v3
with:
name: arch-setup
path: arch-setup
debian-build:
runs-on: ubuntu-latest
container: debian:stable-slim
steps:
- name: Install node
run: apt-get update && apt-get upgrade -y && apt-get install -y nodejs npm
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
apt-get install -y git python3 python3-pip binutils
mv /usr/lib/python*/EXTERNALLY-MANAGED . /tmp/
pip install pyinstaller inquirerpy distro
- name: Build binary
run: |
pyinstaller --onefile --add-data "data/:data/" setup.py
cp dist/setup debian-setup
shell: bash
- name: Upload binary
uses: actions/upload-artifact@v3
with:
name: debian-setup
path: debian-setup
fedora-build:
runs-on: ubuntu-latest
container: fedora:latest
steps:
- name: Install node
run: dnf up -y && dnf install -y nodejs npm
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
dnf install -y git python python-pip binutils
pip install inquirerpy distro pyinstaller
- name: Build binary
run: |
pyinstaller --onefile --add-data "data/:data/" setup.py
cp dist/setup fedora-setup
shell: bash
- name: Upload binary
uses: actions/upload-artifact@v3
with:
name: fedora-setup
path: fedora-setup