Skip to content

Migrate CI to new-generation compas-actions #2455

Migrate CI to new-generation compas-actions

Migrate CI to new-generation compas-actions #2455

Workflow file for this run

name: build
on:
push:
branches:
- main
pull_request:
branches:
- main
permissions:
contents: read
jobs:
release-change:
name: Detect release merge
runs-on: ubuntu-latest
outputs:
is-release: ${{ steps.release.outputs.is-release }}
steps:
- uses: compas-dev/compas-actions/release-check@v1
id: release
build:
needs: release-change
if: >-
!contains(github.event.pull_request.labels.*.name, 'docs-only') &&
(github.event_name == 'pull_request' || needs.release-change.outputs.is-release != 'true')
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest]
python: ['3.9', '3.12', '3.14']
exclude:
# Rhino 8 ships Python 3.9, so it stays in the matrix. The ci action
# installs interpreters with actions/setup-python, which has no
# darwin-arm64 build for 3.9, so that one cell cannot run. macOS is
# covered on 3.12/3.14 and 3.9 is covered on the other runners.
- os: macos-latest
python: '3.9'
steps:
- uses: compas-dev/compas-actions/ci@v1
with:
python-version: ${{ matrix.python }}
management-tool: uv
extras: dev
run-prebuild: true
invoke-tasks: lint test