Skip to content

Commit a6cd1cf

Browse files
Copilotleofang
andcommitted
Fix SVG arrow styling and restructure CONTRIBUTING.md
Co-authored-by: leofang <5534781+leofang@users.noreply.github.com>
1 parent c0b6476 commit a6cd1cf

2 files changed

Lines changed: 52 additions & 45 deletions

File tree

CONTRIBUTING.md

Lines changed: 45 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -14,45 +14,12 @@ Thank you for your interest in contributing to CUDA Python! Based on the type of
1414
- [`cuda.bindings`](https://nvidia.github.io/cuda-python/cuda-bindings/latest/contribute.html)<sup>[1](#footnote1)</sup>
1515
- [`cuda.pathfinder`](https://nvidia.github.io/cuda-python/cuda-pathfinder/latest/contribute.html)
1616

17+
## Table of Contents
1718

18-
## CI infrastructure overview
19-
20-
The CUDA Python project uses a comprehensive CI pipeline that builds, tests, and releases multiple components across different platforms. This section provides a visual overview of our CI infrastructure to help contributors understand the build and release process.
21-
22-
### CI Pipeline Flow
23-
24-
![CUDA Python CI Pipeline Flow](ci/ci-pipeline.svg)
25-
26-
### Pipeline Execution Details
27-
28-
**Parallel Execution**: The CI pipeline leverages parallel execution to optimize build and test times:
29-
- **Build Stage**: Different architectures/operating systems (linux-64, linux-aarch64, win-64) are built in parallel across their respective runners
30-
- **Test Stage**: Different architectures/operating systems/CUDA versions are tested in parallel; documentation preview is also built in parallel with testing
31-
32-
### Branch-specific Artifact Flow
33-
34-
#### Main Branch
35-
- **Build****Test****Documentation****Potential Release**
36-
- Artifacts stored as `{component}-python{version}-{platform}-{sha}`
37-
- Full test coverage across all platforms and CUDA versions
38-
- **Artifact flow out**: `cuda-pathfinder` artifacts → backport branches
39-
40-
#### Backport Branches
41-
- **Build****Test****Backport PR Creation**
42-
- Artifacts used for validation before creating backport pull requests
43-
- Maintains compatibility with older CUDA versions
44-
- **Artifact flow in**: `cuda-pathfinder` artifacts ← main branch
45-
- **Artifact flow out**: older `cuda-bindings` artifacts → main branch
46-
47-
### Key Infrastructure Details
48-
49-
- **Self-hosted runners**: Used for Linux builds and GPU testing (more resources, faster builds)
50-
- **GitHub-hosted runners**: Used for Windows builds and general tasks
51-
- **Artifact retention**: 30 days for GitHub Artifacts (wheels, docs, tests)
52-
- **Cache retention**: GitHub Cache for build dependencies and environments
53-
- **Security**: All commits must be signed, untrusted code blocked
54-
- **Parallel execution**: Matrix builds across Python versions and platforms
55-
- **Component isolation**: Each component (core, bindings, pathfinder, python) can be built/released independently
19+
- [Pre-commit](#pre-commit)
20+
- [Code signing](#code-signing)
21+
- [Developer Certificate of Origin (DCO)](#developer-certificate-of-origin-dco)
22+
- [CI infrastructure overview](#ci-infrastructure-overview)
5623

5724

5825
## Pre-commit
@@ -123,3 +90,43 @@ By making a contribution to this project, I certify that:
12390
---
12491

12592
<a id="footnote1">1</a>: `cuda.bindings` follows the contributing guidelines from this repository (`cuda-python`).
93+
94+
95+
## CI infrastructure overview
96+
97+
The CUDA Python project uses a comprehensive CI pipeline that builds, tests, and releases multiple components across different platforms. This section provides a visual overview of our CI infrastructure to help contributors understand the build and release process.
98+
99+
### CI Pipeline Flow
100+
101+
![CUDA Python CI Pipeline Flow](ci/ci-pipeline.svg)
102+
103+
### Pipeline Execution Details
104+
105+
**Parallel Execution**: The CI pipeline leverages parallel execution to optimize build and test times:
106+
- **Build Stage**: Different architectures/operating systems (linux-64, linux-aarch64, win-64) are built in parallel across their respective runners
107+
- **Test Stage**: Different architectures/operating systems/CUDA versions are tested in parallel; documentation preview is also built in parallel with testing
108+
109+
### Branch-specific Artifact Flow
110+
111+
#### Main Branch
112+
- **Build****Test****Documentation****Potential Release**
113+
- Artifacts stored as `{component}-python{version}-{platform}-{sha}`
114+
- Full test coverage across all platforms and CUDA versions
115+
- **Artifact flow out**: `cuda-pathfinder` artifacts → backport branches
116+
117+
#### Backport Branches
118+
- **Build****Test****Backport PR Creation**
119+
- Artifacts used for validation before creating backport pull requests
120+
- Maintains compatibility with older CUDA versions
121+
- **Artifact flow in**: `cuda-pathfinder` artifacts ← main branch
122+
- **Artifact flow out**: older `cuda-bindings` artifacts → main branch
123+
124+
### Key Infrastructure Details
125+
126+
- **Self-hosted runners**: Used for Linux builds and GPU testing (more resources, faster builds)
127+
- **GitHub-hosted runners**: Used for Windows builds and general tasks
128+
- **Artifact retention**: 30 days for GitHub Artifacts (wheels, docs, tests)
129+
- **Cache retention**: GitHub Cache for build dependencies and environments
130+
- **Security**: All commits must be signed, untrusted code blocked
131+
- **Parallel execution**: Matrix builds across Python versions and platforms
132+
- **Component isolation**: Each component (core, bindings, pathfinder, python) can be built/released independently

ci/ci-pipeline.svg

Lines changed: 7 additions & 7 deletions
Loading

0 commit comments

Comments
 (0)