Skip to content

Commit 705b7e8

Browse files
committed
Sync full CI workflow from internal branch
Signed-off-by: cdunning <cdunning@nvidia.com>
1 parent e665a13 commit 705b7e8

1 file changed

Lines changed: 79 additions & 1 deletion

File tree

.github/workflows/ci.yml

Lines changed: 79 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,26 @@ concurrency:
1616
cancel-in-progress: true
1717

1818
jobs:
19+
images:
20+
name: Define Base Images
21+
runs-on: ubuntu-latest
22+
outputs:
23+
lint: ghcr.io/nvidia/cutile-python/lint:2026-01-05-90f182d5d748
24+
docs: ghcr.io/nvidia/cutile-python/docs:2025-12-19-3c6df79d5907
25+
build_py310: ghcr.io/nvidia/cutile-python/build_py_3.10_x86_64:2025-12-19-e23b1344670f
26+
build_py311: ghcr.io/nvidia/cutile-python/build_py_3.11_x86_64:2025-12-19-34e46267aabe
27+
build_py312: ghcr.io/nvidia/cutile-python/build_py_3.12_x86_64:2025-12-19-fef7c09fc6e4
28+
build_py313: ghcr.io/nvidia/cutile-python/build_py_3.13_x86_64:2025-12-19-3c040613bc5c
29+
steps:
30+
- run: echo "Defining image tags"
31+
1932
lint:
2033
name: Lint
34+
needs: images
2135
runs-on: ubuntu-latest
2236
timeout-minutes: 10
2337
container:
24-
image: ghcr.io/nvidia/cutile-python/lint:2026-01-05-90f182d5d748
38+
image: ${{ needs.images.outputs.lint }}
2539
steps:
2640
- name: Checkout repository
2741
uses: actions/checkout@v6
@@ -37,3 +51,67 @@ jobs:
3751

3852
- name: Check inline samples are up to date
3953
run: python test/tools/inline_samples.py --check
54+
55+
docs:
56+
name: Build Docs
57+
if: false
58+
needs: [images, build]
59+
runs-on: ubuntu-latest
60+
timeout-minutes: 10
61+
container:
62+
image: ${{ needs.images.outputs.docs }}
63+
steps:
64+
- name: Checkout repository
65+
uses: actions/checkout@v6
66+
67+
- name: Download wheel
68+
uses: actions/download-artifact@v4
69+
with:
70+
name: wheel-py3.12-linux-x86_64
71+
path: dist/
72+
73+
- name: Install wheel
74+
run: pip install dist/*.whl
75+
76+
- name: Build documentation
77+
run: make -C docs html
78+
79+
- name: Upload docs artifact
80+
uses: actions/upload-artifact@v4
81+
with:
82+
name: docs-html
83+
path: docs/build/html
84+
retention-days: 7
85+
86+
build:
87+
name: Build Wheel (Python ${{ matrix.python-version }})
88+
needs: images
89+
runs-on: ubuntu-latest
90+
timeout-minutes: 30
91+
strategy:
92+
matrix:
93+
include:
94+
- python-version: "3.10"
95+
image_key: build_py310
96+
- python-version: "3.11"
97+
image_key: build_py311
98+
- python-version: "3.12"
99+
image_key: build_py312
100+
- python-version: "3.13"
101+
image_key: build_py313
102+
container:
103+
image: ${{ needs.images.outputs[matrix.image_key] }}
104+
steps:
105+
- name: Checkout repository
106+
uses: actions/checkout@v6
107+
108+
- name: Build wheel
109+
run: python setup.py bdist_wheel
110+
111+
- name: Upload wheel artifact
112+
uses: actions/upload-artifact@v4
113+
with:
114+
name: wheel-py${{ matrix.python-version }}-linux-x86_64
115+
path: dist/*.whl
116+
if-no-files-found: error
117+
retention-days: 7

0 commit comments

Comments
 (0)