Skip to content

Build and Publish GH+PyPi #8

Build and Publish GH+PyPi

Build and Publish GH+PyPi #8

Workflow file for this run

name: Build and Publish GH+PyPi
on:
workflow_dispatch:
branches:
- master
jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
env:
CIBW_PYPY_VERSION: "7.3.10*"
strategy:
matrix:
os: [ubuntu-20.04, windows-2019, macos-11, ubuntu-20.04-arm64]
include:
- os: ubuntu-20.04-arm64
arch: arm64
docker_image: "quay.io/pypa/manylinux2014_aarch64"
steps:
- name: GitHub Checkout
uses: actions/checkout@v4
- name: Build wheels
uses: pypa/cibuildwheel@v2.16.5
- name: Build wheels Linux ARM64 (Raspberry Pi)
if: matrix.os == 'ubuntu-20.04-arm64'
uses: pypa/cibuildwheel@v2.16.5
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
path: ./wheelhouse/*.whl
build_sdist:
name: Build source distribution
runs-on: ubuntu-latest
steps:
- name: GitHub Checkout
uses: actions/checkout@v4
- name: Build sdist
run: pipx run build --sdist
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
path: dist/*.tar.gz
Release:
needs: [ build_wheels, build_sdist ]
runs-on: ubuntu-latest
environment: pypi
permissions:
contents: write
discussions: write
id-token: write
steps:
- name: Download Artifacts
uses: actions/download-artifact@v3
with:
name: artifact
path: dist
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
body: |
Please read the [CHANGELOG](https://unicorn-fy.docs.lucit.tech/changelog.html) for further information.
discussion_category_name: releases
draft: false
files: |
dist/*.tar.gz
dist/*.whl
generate_release_notes: true
name: unicorn-fy
prerelease: false
tag_name: 1.14.0
token: ${{ secrets.GITHUB_TOKEN }}
- name: Create PyPi Release
uses: pypa/gh-action-pypi-publish@release/v1