Files
medicallib_rust/.gitea/workflows/multi-platform.yml
T
zack3d 8785546403
Multi-Platform CI / test-platforms (ubuntu-22.04) (push) Successful in 23s
Multi-Platform CI / test-platforms (windows-latest) (push) Successful in 18s
Multi-Platform CI / Package for Linux (push) Successful in 39s
Multi-Platform CI / Package for Windows (Cross-Compiled) (push) Successful in 55s
bu
2025-09-23 20:47:16 -07:00

51 lines
1.3 KiB
YAML

name: Multi-Platform CI
on:
push:
pull_request:
jobs:
# Test on platforms with native builds only
test-platforms:
strategy:
fail-fast: false
matrix:
include:
# Linux native
- os: ubuntu-22.04
# Windows native
- os: windows-latest
uses: ./.gitea/workflows/ci-reusable.yml
with:
os: ${{ matrix.os }}
upload-artifacts: false
# Package for distribution (only on master)
package:
if: github.event_name == 'push' && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main')
needs: [test-platforms]
# Both jobs run on ubuntu, but with different targets
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
# Configuration for the native Linux build
- name: Linux
target: '' # An empty target means native build
# Configuration for the Windows cross-compile build
- name: Windows (Cross-Compiled)
target: 'x86_64-pc-windows-gnu'
name: Package for ${{ matrix.name }}
uses: ./.gitea/workflows/ci-reusable.yml
with:
# Both jobs are sent to an ubuntu runner
os: ubuntu-22.04
# The target is passed to the reusable workflow
target: ${{ matrix.target }}
upload-artifacts: true
package-only: true