Files
dyn2py/.github/workflows/release.yml

81 lines
1.9 KiB
YAML

name: Release
on:
push:
tags:
- "*"
permissions:
contents: write
jobs:
test:
name: Test
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
uses: ./.github/workflows/test.yml
with:
python-version: ${{ vars.PYTHON_VERSION }}
os: ${{ matrix.os }}
build-exe:
name: Build Windows exe
needs: test
uses: ./.github/workflows/build-exe.yml
build-installer:
name: Build Windows installer
needs: build-exe
uses: ./.github/workflows/build-installer.yml
release:
name: Create Github release
runs-on: ubuntu-latest
needs: build-installer
steps:
- uses: actions/checkout@v3
name: Checkout
- name: Generate changelog
id: changelog
uses: metcalfc/changelog-generator@v4.1.0
with:
myToken: ${{ secrets.GITHUB_TOKEN }}
- name: Download exe
uses: actions/download-artifact@v3
with:
name: dyn2py.exe
- name: Download installer
uses: actions/download-artifact@v3
with:
name: dyn2py-installer.exe
- name: Release
uses: softprops/action-gh-release@v1
with:
files: |
dyn2py.exe
dyn2py-installer.exe
body: ${{ steps.changelog.outputs.changelog }}
pip:
name: Publish to PyPI
runs-on: ubuntu-latest
needs: release
steps:
- uses: actions/checkout@v3
name: Checkout
- uses: actions/setup-python@v4
name: Setup Python
with:
python-version: ${{ vars.PYTHON_VERSION }}
- name: Install deps
run: |
python -m pip install --upgrade pip
pip install build
- name: Build package
run: python -m build
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}