@@ -34,92 +34,106 @@ jobs:
3434 node-version : [22.x]
3535
3636 steps :
37- - uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
38- with :
39- persist-credentials : false
40-
41- - uses : actions-ext/python/setup@6e1b91a408ea89f49bc8aff8724f83826f7b5446
42- with :
43- version : ${{ matrix.python-version }}
44-
45- - uses : actions-ext/rust/setup@c9cdbe5cc8a2485bf2eb22644302559c741ca763
46-
47- - uses : actions-ext/node/setup@0ea5bdcd24d2488b28e16bf611b446a2f8e1e12f
48- with :
49- version : ${{ matrix.node-version }}
50-
51- - name : Install dependencies
52- run : make develop
53-
54- - name : Lint
55- run : make lint
56- if : matrix.os == 'ubuntu-latest'
57-
58- - name : Checks
59- run : make checks
60- if : matrix.os == 'ubuntu-latest'
61-
62- - name : Build
63- run : make build
64-
65- - name : Test
66- run : make coverage
67-
68- - name : Upload test results (Python)
69- uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
70- with :
71- name : test-results-${{ matrix.os }}-${{ matrix.python-version }}
72- path : ' **/junit.xml'
73- if : matrix.os == 'ubuntu-latest'
74-
75- - name : Publish Unit Test Results
76- uses : EnricoMi/publish-unit-test-result-action@d0a4676d0e0b938bc201470d88276b7c74c712b3 # v2.24.0
77- with :
78- files : ' **/junit.xml'
79- if : matrix.os == 'ubuntu-latest'
80-
81- - name : Upload coverage
82- uses : codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0
83- with :
84- token : ${{ secrets.CODECOV_TOKEN }}
85-
86- - name : Set up QEMU
87- uses : docker/setup-qemu-action@96fe6ef7f33517b61c61be40b68a1882f3264fb8 # v4.2.0
88- with :
89- platforms : all
90- if : runner.os == 'Linux' && runner.arch == 'X64'
91-
92- - name : Make dist (Linux)
93- run : |
94- rm -rf dist
95- make dist-rs
96- make dist-py-sdist
97- make dist-py-wheel
98- make dist-check
99- shell : bash
100- if : matrix.os == 'ubuntu-latest'
101-
102- - name : Make dist (Macos / Windows)
103- run : |
104- rm -rf dist
105- make dist-py-wheel
106- make dist-check
107- shell : bash
108- env :
109- CIBW_ENVIRONMENT_MACOS : MACOSX_DEPLOYMENT_TARGET=11.0
110- if : matrix.os != 'ubuntu-latest'
111-
112- - uses : actions-ext/python/test-wheel@6e1b91a408ea89f49bc8aff8724f83826f7b5446
113- with :
114- module : python_template_rust
115- if : matrix.os == 'ubuntu-latest'
116-
117- - uses : actions-ext/python/test-sdist@6e1b91a408ea89f49bc8aff8724f83826f7b5446
118- with :
119- module : python_template_rust
120- if : matrix.os == 'ubuntu-latest'
121-
122- - uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
123- with :
124- name : dist-${{matrix.os}}
125- path : dist
37+ - name : Checkout
38+ uses : actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
39+ with :
40+ persist-credentials : false
41+
42+ - name : Setup Python
43+ uses : actions-ext/python/setup@6e1b91a408ea89f49bc8aff8724f83826f7b5446
44+ with :
45+ version : ${{ matrix.python-version }}
46+
47+ - name : Setup Rust
48+ uses : actions-ext/rust/setup@c9cdbe5cc8a2485bf2eb22644302559c741ca763
49+
50+ - name : Setup Node.js
51+ uses : actions-ext/node/setup@0ea5bdcd24d2488b28e16bf611b446a2f8e1e12f
52+ with :
53+ version : ${{ matrix.node-version }}
54+
55+ - name : Install dependencies
56+ run : make develop
57+
58+ - name : Lint
59+ run : make lint
60+ if : matrix.os == 'ubuntu-latest'
61+
62+ - name : Checks
63+ run : make checks
64+ if : matrix.os == 'ubuntu-latest'
65+
66+ - name : Build
67+ run : make build
68+
69+ - name : Test
70+ run : make coverage
71+
72+ - name : Upload test results (Python)
73+ uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
74+ with :
75+ name : test-results-${{ matrix.os }}-${{ matrix.python-version }}
76+ path : ' **/junit.xml'
77+ if : matrix.os == 'ubuntu-latest'
78+
79+ - name : Publish test results
80+ uses : EnricoMi/publish-unit-test-result-action@d0a4676d0e0b938bc201470d88276b7c74c712b3 # v2.24.0
81+ with :
82+ files : ' **/junit.xml'
83+ if : matrix.os == 'ubuntu-latest'
84+
85+ - name : Upload coverage
86+ uses : codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0
87+ with :
88+ token : ${{ secrets.CODECOV_TOKEN }}
89+
90+ - name : Set up QEMU
91+ uses : docker/setup-qemu-action@96fe6ef7f33517b61c61be40b68a1882f3264fb8 # v4.2.0
92+ with :
93+ platforms : all
94+ if : runner.os == 'Linux' && runner.arch == 'X64'
95+
96+ - name : Free disk space
97+ run : |
98+ sudo rm -rf /usr/local/lib/android /usr/share/dotnet /opt/ghc /usr/local/.ghcup /usr/share/swift
99+ df -h /
100+ shell : bash
101+ if : matrix.os == 'ubuntu-latest'
102+
103+ - name : Build distributions (Linux)
104+ run : |
105+ rm -rf dist
106+ make dist-rs
107+ make dist-py-sdist
108+ make dist-py-wheel
109+ make dist-check
110+ shell : bash
111+ if : matrix.os == 'ubuntu-latest'
112+
113+ - name : Build distributions (macOS/Windows)
114+ run : |
115+ rm -rf dist
116+ make dist-py-wheel
117+ make dist-check
118+ shell : bash
119+ env :
120+ CIBW_ENVIRONMENT_MACOS : MACOSX_DEPLOYMENT_TARGET=11.0
121+ if : matrix.os != 'ubuntu-latest'
122+
123+ - name : Test wheel
124+ uses : actions-ext/python/test-wheel@6e1b91a408ea89f49bc8aff8724f83826f7b5446
125+ with :
126+ module : python_template_rust
127+ if : matrix.os == 'ubuntu-latest'
128+
129+ - name : Test source distribution
130+ uses : actions-ext/python/test-sdist@6e1b91a408ea89f49bc8aff8724f83826f7b5446
131+ with :
132+ module : python_template_rust
133+ if : matrix.os == 'ubuntu-latest'
134+
135+ - name : Upload distributions
136+ uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
137+ with :
138+ name : dist-${{matrix.os}}
139+ path : dist
0 commit comments