Open jimsheldon opened 1 year ago
Similar approach found here https://github.com/nedbat/coveragepy/blob/master/.github/workflows/kit.yml
Example
jobs:
wheels:
name: "${{ matrix.py }} ${{ matrix.os }} ${{ matrix.arch }} wheels"
runs-on: ${{ matrix.os }}-latest
strategy:
matrix:
include:
- {"os": "ubuntu", "py": "cp310", "arch": "aarch64"}
- {"os": "ubuntu", "py": "cp311", "arch": "aarch64"}
- {"os": "macos", "py": "cp38", "arch": "arm64"}
- {"os": "macos", "py": "cp311", "arch": "x86_64"}
- {"os": "windows", "py": "cp37", "arch": "x86"}
- {"os": "windows", "py": "cp310", "arch": "AMD64"}
- {"os": "windows", "py": "cp311", "arch": "AMD64"}
fail-fast: false
Converts successfully
$ go-convert github example.yml
stages:
- name: wheels
spec:
platform:
arch: amd64
os: linux
runtime:
spec: {}
type: cloud
strategy:
spec:
include:
- arch: aarch64
os: ubuntu
py: cp310
- arch: aarch64
os: ubuntu
py: cp311
- arch: arm64
os: macos
py: cp38
- arch: x86_64
os: macos
py: cp311
- arch: x86
os: windows
py: cp37
- arch: AMD64
os: windows
py: cp310
- arch: AMD64
os: windows
py: cp311
type: matrix
type: ci
version: 1
Note that name
strips out the matrix variables, and runs-on
is missing.
Putting this in the backlog for now.
Example pipeline
Conversion fails