Skip to content

Release Worker

Release Worker #37

name: Release Worker
on:
workflow_run:
workflows: ["Tests"]
types: [completed]
jobs:
check-main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Ensure tag is on main
run: |
git fetch origin main
git merge-base --is-ancestor "$GITHUB_SHA" origin/main
build:
if: >
github.repository_owner == 'ccxlv'
&& github.event.workflow_run.conclusion == 'success'
&& startsWith(github.event.workflow_run.head_branch, 'worker-v')
name: ${{ matrix.os }} (Py ${{ matrix.python-version }})
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13", "3.14"]
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- os: macos-15-intel
target: x86_64-apple-darwin
- os: macos-latest
target: aarch64-apple-darwin
- os: windows-latest
target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Run Build Suite
uses: ./.github/actions/build-worker
with:
python-version: ${{ matrix.python-version }}
target: ${{ matrix.target }}
release:
if: >
github.repository_owner == 'ccxlv'
&& github.event.workflow_run.conclusion == 'success'
&& startsWith(github.event.workflow_run.head_branch, 'worker-v')
needs: [build]
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ github.ref_name }}
name: ${{ github.ref_name }}
files: artifacts/**/*
draft: true
prerelease: false