Skip to content

Commit eafbfe7

Browse files
authored
Additional Linux python versions and collect_wheels workflows (#28)
* Add multiple Linux python versions, add collect wheels step to wheels.yml * remove sudo python wheels.yml * Fix -DPYTHON_EXECUTABLE * Ubuntu archive name wheels.yml
1 parent 049d165 commit eafbfe7

File tree

1 file changed

+48
-17
lines changed

1 file changed

+48
-17
lines changed

.github/workflows/wheels.yml

Lines changed: 48 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,22 @@ jobs:
3333
runs_on: ubuntu-latest
3434
container: ubuntu:20.04
3535
py_platform: manylinux_2_31_x86_64
36-
# - os: ubuntu-22.04
37-
# runs_on: ubuntu-latest
38-
# container: ubuntu:22.04
39-
# py_platform: manylinux_2_35_x86_64
36+
python_version: "3.7"
37+
- os: ubuntu-20.04
38+
runs_on: ubuntu-latest
39+
container: ubuntu:20.04
40+
py_platform: manylinux_2_31_x86_64
41+
python_version: "3.8"
42+
- os: ubuntu-20.04
43+
runs_on: ubuntu-latest
44+
container: ubuntu:20.04
45+
py_platform: manylinux_2_31_x86_64
46+
python_version: "3.9"
47+
- os: ubuntu-20.04
48+
runs_on: ubuntu-latest
49+
container: ubuntu:20.04
50+
py_platform: manylinux_2_31_x86_64
51+
python_version: "3.10"
4052
env:
4153
DEBIAN_FRONTEND: noninteractive
4254
steps:
@@ -59,10 +71,14 @@ jobs:
5971
libflann-dev libjsoncpp-dev libyaml-cpp-dev git cmake ninja-build
6072
build-essential autoconf automake libtool bison libpcre2-dev libpcre3-dev
6173
lcov libbullet-dev libbullet-extras-dev patchelf python3-venv -y -qq
74+
- uses: actions/setup-python@v4
75+
id: setup-python
76+
with:
77+
python-version: '${{ matrix.config.python_version }}'
6278
- name: pip
6379
run: |
64-
sudo python3 -m pip install --upgrade pip
65-
sudo python3 -m pip install auditwheel wheel numpy setuptools colcon-common-extensions vcstool
80+
python -m pip install --upgrade pip
81+
python -m pip install auditwheel wheel numpy setuptools colcon-common-extensions vcstool
6682
- name: vcs import
6783
working-directory: ws/src
6884
run: vcs import --input tesseract_python/dependencies_with_ext.rosinstall
@@ -75,7 +91,8 @@ jobs:
7591
--event-handlers console_cohesion+
7692
--cmake-args -DCMAKE_BUILD_TYPE=Release
7793
-DBUILD_IPOPT=OFF -DBUILD_SNOPT=OFF
78-
-DPYTHON_EXECUTABLE=/usr/bin/python3 -DTESSERACT_PYTHON_BUILD_WHEEL=ON
94+
-DPYTHON_EXECUTABLE="${{ steps.setup-python.outputs.python-path }}"
95+
-DTESSERACT_PYTHON_BUILD_WHEEL=ON
7996
-DTESSERACT_PYTHON_WHEEL_PLATFORM=${{ matrix.config.py_platform }}
8097
-DTESSERACT_ENABLE_EXAMPLES=OFF -DTESSERACT_PLUGIN_FACTORY_CALLBACKS=ON
8198
- name: test
@@ -92,7 +109,7 @@ jobs:
92109
- name: archive wheels
93110
uses: actions/upload-artifact@v2
94111
with:
95-
name: 'python-wheels-${{ matrix.config.os }}'
112+
name: 'python-wheels-${{ matrix.config.os }}-${{ matrix.config.python_version }}'
96113
path: ws/build/tesseract_python/python/*
97114
build-win:
98115
runs-on: windows-2019
@@ -120,12 +137,13 @@ jobs:
120137
- uses: actions/checkout@v2
121138
with:
122139
path: ws/src/tesseract_python
123-
- uses: actions/setup-python@v2
140+
- uses: actions/setup-python@v4
141+
id: setup-python
124142
with:
125143
python-version: '${{ matrix.config.python_version }}'
126144
architecture: ${{ matrix.config.arch }}
127145
- name: vcpkg build
128-
uses: johnwason/vcpkg-action@961d53e336573f6165b896494fabb1abc002e8c1
146+
uses: johnwason/vcpkg-action@v3
129147
with:
130148
pkgs: >-
131149
${{ env.VCPKG_PKGS }}
@@ -134,8 +152,6 @@ jobs:
134152
- name: pip3
135153
run: |
136154
python -m pip install numpy setuptools wheel pytest delvewheel colcon-common-extensions vcstool
137-
- name: env python3
138-
run: echo ("PYTHON3_EXE=" + (Get-Command Python.exe).Path) | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
139155
- name: choco
140156
run: |
141157
choco install swig ninja -r
@@ -157,7 +173,7 @@ jobs:
157173
--event-handlers console_cohesion+ ^
158174
--packages-ignore tesseract_examples trajopt_ifopt trajopt_sqp gtest ^
159175
--cmake-args -GNinja -DCMAKE_BUILD_TYPE=Release ^
160-
-DPYTHON_EXECUTABLE="${{ env.PYTHON3_EXE }}" ^
176+
-DPYTHON_EXECUTABLE="${{ steps.setup-python.outputs.python-path }}" ^
161177
-DTESSERACT_PYTHON_BUILD_WHEEL=ON ^
162178
-DTESSERACT_ENABLE_EXAMPLES=OFF -DTESSERACT_PLUGIN_FACTORY_CALLBACKS=ON ^
163179
-DVCPKG_APPLOCAL_DEPS=OFF ^
@@ -198,7 +214,22 @@ jobs:
198214
with:
199215
name: 'build-logs-win-${{ matrix.config.arch }}-python-${{ matrix.config.python_version }}'
200216
path: "**/*.log"
201-
retention-days: 2
202-
203-
204-
217+
retention-days: 2
218+
collect-wheels:
219+
needs:
220+
- build-win
221+
- build-ubuntu
222+
runs-on: ubuntu-20.04
223+
steps:
224+
- uses: actions/checkout@v2
225+
with:
226+
path: robotraconteur
227+
- name: Download CI artifacts
228+
uses: actions/download-artifact@v2
229+
with:
230+
path: artifacts/main
231+
- name: archive wheels
232+
uses: actions/upload-artifact@v2
233+
with:
234+
name: 'python-wheels-all'
235+
path: artifacts/**/wheelhouse/*.whl

0 commit comments

Comments
 (0)