Files
2024-10-29 16:58:20 +01:00

101 lines
2.8 KiB
YAML

name: release
on:
push:
tags:
- '*'
jobs:
build-win64:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Upgrade pip and enable wheel support
run: python -m pip install --upgrade pip setuptools wheel
- name: Install Requirements
run: |
pip install -r requirements.txt
pip install pyinstaller
shell: bash
- name: Build
run: |
powershell -File build-win.ps1
mv inno-output\gotify-tray-installer.exe gotify-tray-installer-win.exe
shell: cmd
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: gotify-tray-installer-win.exe
path: gotify-tray-installer-win.exe
build-macos:
runs-on: macos-12
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Upgrade pip and enable wheel support
run: python -m pip install --upgrade pip setuptools wheel
- name: Build
run: |
make build-macos
brew install create-dmg
create-dmg --volname "Gotify Tray" --app-drop-link 0 0 --no-internet-enable "gotify-tray.dmg" "./dist/Gotify Tray.app"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: gotify-tray.dmg
path: gotify-tray.dmg
pypi:
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/gotify-tray
permissions:
id-token: write
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Upgrade pip and enable wheel support
run: python -m pip install --upgrade pip setuptools wheel
- name: install requirements
run: |
pip install -r requirements.txt
pip install build
- name: create pip package
run: python -m build
- name: upload to pypi
uses: pypa/gh-action-pypi-publish@release/v1
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: gotify_tray-${{github.ref_name}}-py3-none-any.whl
path: dist/gotify_tray-${{github.ref_name}}-py3-none-any.whl
release:
runs-on: ubuntu-latest
needs: [build-win64, build-macos, pypi]
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
- name: Release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
files: |
gotify-tray-installer-win.exe
gotify-tray.dmg
gotify_tray-${{github.ref_name}}-py3-none-any.whl