Skip to content

Commit a23ad81

Browse files
committed
simplifying workflow dependencies #17459
1 parent 8fd4c13 commit a23ad81

File tree

4 files changed

+15
-129
lines changed

4 files changed

+15
-129
lines changed

.github/workflows/cibuildwheel.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,8 +144,8 @@ jobs:
144144
# testing wheels
145145
###################
146146
test-wheels:
147-
needs: [generate-matrix, pure-python-wheels, build-wheels]
147+
needs: [pure-python-wheels, build-wheels]
148148
uses: ./.github/workflows/test-wheels.yml
149149
with:
150-
matrix: ${{ needs.generate-matrix.outputs.test_matrix }}
150+
os: ${{ inputs.os }}
151151
wheel_source: 'python-wheels'

.github/workflows/linux-wheels.yml

Lines changed: 4 additions & 120 deletions
Original file line numberDiff line numberDiff line change
@@ -15,125 +15,9 @@ on:
1515
paths-ignore: # but ignore everything in the docs subfolder
1616
- 'docs/**'
1717
workflow_dispatch:
18-
schedule:
19-
- cron: '5 1 * * *'
20-
- cron: '5 8 * * *'
2118

2219
jobs:
23-
build-manylinux-wheels:
24-
runs-on: ubuntu-latest
25-
26-
steps:
27-
- name: Cloning SUMO
28-
if: github.event.schedule != '5 8 * * *'
29-
uses: actions/checkout@v6
30-
with:
31-
fetch-depth: 0
32-
filter: tree:0
33-
# to work around actions/checkout#1467
34-
ref: ${{ github.ref }}
35-
36-
- name: Building sumolib / traci (pure Python) wheels and sdist
37-
if: github.event.schedule != '5 8 * * *'
38-
run: |
39-
cd tools
40-
sudo apt-get update
41-
sudo apt-get install python3-build
42-
python3 build_config/version.py build_config/setup-sumolib.py ./setup.py
43-
python3 -m build -o ../wheelhouse
44-
python3 build_config/version.py build_config/setup-traci.py ./setup.py
45-
python3 -m build -o ../wheelhouse
46-
47-
- name: Building SUMO / libsumo Python wheels (latest manylinux docker)
48-
if: github.event.schedule != '5 8 * * *'
49-
uses: docker://quay.io/pypa/manylinux2014_x86_64
50-
with:
51-
entrypoint: tools/build_config/build_wheels.sh
52-
53-
# the next two steps are only needed when we debug the manylinux build
54-
# - name: Building Python wheels (fixed manylinux docker)
55-
# uses: docker://quay.io/pypa/manylinux2014_x86_64:2022-11-14-1226cfc
56-
# with:
57-
# entrypoint: tools/build_config/build_wheels.sh
58-
59-
# - name: Uploading raw wheels (without auditwheel being applied)
60-
# uses: actions/upload-artifact@v6
61-
# with:
62-
# name: manylinux-raw-wheels
63-
# path: dist
64-
65-
- name: Uploading artifacts (Python wheels)
66-
if: github.event.schedule != '5 8 * * *'
67-
uses: actions/upload-artifact@v6
68-
with:
69-
name: manylinux-wheels
70-
path: wheelhouse
71-
72-
###################
73-
# testing wheels
74-
###################
75-
test-wheels:
76-
needs: [build-manylinux-wheels]
77-
runs-on: ubuntu-latest
78-
env:
79-
WHEEL_DIR: manylinux-wheels
80-
strategy:
81-
fail-fast: false
82-
matrix:
83-
python_version: [3.8, 3.9, '3.10', 3.11, 3.12, 3.13]
84-
# python_version: [3.8, 3.9, '3.10', 3.11, 3.12, 3.13, 3.13t, 3.14]
85-
86-
steps:
87-
- name: Cloning SUMO
88-
uses: actions/checkout@v6
89-
90-
- name: Downloading Wheels artifact
91-
if: github.event.schedule != '5 8 * * *'
92-
uses: actions/download-artifact@v7
93-
with:
94-
path: manylinux-wheels
95-
96-
- name: Setting wheel directory
97-
if: github.event.schedule == '5 8 * * *'
98-
run: echo 'WHEEL_DIR=https://sumo.dlr.de/daily/wheels' >> $GITHUB_ENV
99-
100-
- name: Configuring Python
101-
uses: actions/setup-python@v6
102-
with:
103-
python-version: ${{ matrix.python_version }}
104-
105-
- name: Preparing Python environment
106-
run: |
107-
sudo apt-get update
108-
sudo apt-get install pipx
109-
pipx install texttest
110-
python3 -m venv testenv --system-site-packages
111-
testenv/bin/python -m pip install --no-index -f $WHEEL_DIR eclipse_sumo
112-
testenv/bin/python -c "import sumo; print('SUMO_HOME=' + sumo.SUMO_HOME)" >> $GITHUB_ENV
113-
114-
- name: Running "sumo in the wheel" tests
115-
if: matrix.python_version != '3.13t'
116-
run: |
117-
source testenv/bin/activate
118-
python3 -m pip install -r tools/req_ci.txt -r tools/requirements.txt
119-
tests/runTests.sh -b ci -v ci.fast
120-
121-
- name: Running libsumo tests
122-
run: |
123-
source testenv/bin/activate
124-
python3 -m pip install -f $WHEEL_DIR libsumo
125-
cd tests
126-
texttest -b ci -v ci -a complex.libsumo
127-
128-
- name: Compressing test results
129-
if: failure()
130-
run: |
131-
zip -r texttesttmp.zip ~/.texttest/tmp
132-
133-
- name: Uploading test results
134-
if: failure()
135-
uses: actions/upload-artifact@v6
136-
with:
137-
name: texttesttmp-${{ matrix.python_version }}
138-
path: texttesttmp.zip
139-
if-no-files-found: warn
20+
call-cibuildwheel:
21+
uses: ./.github/workflows/cibuildwheel.yml
22+
with:
23+
os: "ubuntu-latest,ubuntu-24.04-arm"

.github/workflows/macos-wheels.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@ on:
1515
paths-ignore: # but ignore everything in the docs subfolder
1616
- 'docs/**'
1717
workflow_dispatch:
18-
schedule:
19-
- cron: '25 2 * * *'
2018

2119
jobs:
2220
call-cibuildwheel:

.github/workflows/test-wheels.yml

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,34 @@ on:
66
- '.github/workflows/test-wheels.yml'
77
workflow_call:
88
inputs:
9-
matrix:
9+
os:
1010
type: string
1111
required: false
1212
wheel_source:
1313
type: string
1414
required: false
1515
workflow_dispatch:
1616
inputs:
17+
os:
18+
type: string
19+
required: false
1720
wheel_source:
1821
type: string
1922
required: false
2023
schedule:
2124
- cron: '5 6 * * *'
2225

2326
jobs:
24-
maybe-generate-matrix:
25-
if: inputs.matrix == ''
27+
generate-matrix:
2628
uses: ./.github/workflows/generate-matrix.yml
29+
with:
30+
os: ${{ inputs.os }}
2731

2832
test-wheels:
29-
needs: [maybe-generate-matrix]
33+
needs: [generate-matrix]
3034
strategy:
3135
fail-fast: false
32-
matrix: ${{ fromJSON(inputs.matrix || needs.maybe-generate-matrix.outputs.test_matrix) }}
36+
matrix: ${{ fromJSON(needs.generate-matrix.outputs.test_matrix) }}
3337
runs-on: ${{ matrix.os }}
3438
env:
3539
WHEEL_SOURCE: ${{ inputs.wheel_source || 'https://sumo.dlr.de/daily/ciwheels' }}

0 commit comments

Comments
 (0)