@@ -97,7 +97,82 @@ The CUDA Python project uses a comprehensive CI pipeline that builds, tests, and
9797
9898Alternative Mermaid diagram representation:
9999
100- ![ ci-pipeline] ( ci/ci-pipeline.md )
100+ ``` mermaid
101+ flowchart TD
102+ %% Trigger Events
103+ subgraph TRIGGER["🔄 TRIGGER EVENTS"]
104+ T1["• Push to main branch<br/>• Push to pull-request/* branches"]
105+ T2["• Pull request<br/>• Manual workflow dispatch"]
106+ T1 --- T2
107+ end
108+
109+ %% Build Stage
110+ subgraph BUILD["🔨 BUILD STAGE"]
111+ subgraph BUILD_PLATFORMS["Parallel Platform Builds"]
112+ B1["linux-64<br/>(Self-hosted)"]
113+ B2["linux-aarch64<br/>(Self-hosted)"]
114+ B3["win-64<br/>(GitHub-hosted)"]
115+ end
116+ BUILD_DETAILS["• Python versions: 3.9, 3.10, 3.11, 3.12, 3.13<br/>• CUDA version: 13.0.0 (build-time)<br/>• Components: cuda-core, cuda-bindings,<br/> cuda-pathfinder, cuda-python"]
117+ end
118+
119+ %% Artifact Storage
120+ subgraph ARTIFACTS["📦 ARTIFACT STORAGE"]
121+ subgraph GITHUB_ARTIFACTS["GitHub Artifacts"]
122+ GA1["• Wheel files (.whl)<br/>• Test artifacts<br/>• Documentation<br/>(30-day retention)"]
123+ end
124+ subgraph GITHUB_CACHE["GitHub Cache"]
125+ GC1["• Mini CTK cache"]
126+ end
127+ end
128+
129+ %% Test Stage
130+ subgraph TEST["🧪 TEST STAGE"]
131+ subgraph TEST_PLATFORMS["Parallel Platform Tests"]
132+ TS1["linux-64<br/>(Self-hosted)"]
133+ TS2["linux-aarch64<br/>(Self-hosted)"]
134+ TS3["win-64<br/>(GitHub-hosted)"]
135+ end
136+ TEST_DETAILS["• Download wheels from artifacts<br/>• Test against multiple CUDA runtime versions<br/>• Run Python unit tests, Cython tests, examples"]
137+ ARTIFACT_FLOWS["Artifact Flows:<br/>• cuda-pathfinder: main → backport<br/>• cuda-bindings: backport → main"]
138+ end
139+
140+ %% Release Pipeline
141+ subgraph RELEASE["🚀 RELEASE PIPELINE"]
142+ subgraph RELEASE_STAGES["Sequential Release Steps"]
143+ R1["Validation<br/>• Artifact integrity<br/>• Git tag verification"]
144+ R2["Publishing<br/>• PyPI/TestPyPI<br/>• Component or all releases"]
145+ R3["Documentation<br/>• GitHub Pages<br/>• Release notes"]
146+ R1 --> R2 --> R3
147+ end
148+ RELEASE_DETAILS["• Manual workflow dispatch with run ID<br/>• Supports individual component or full releases"]
149+ end
150+
151+ %% Main Flow
152+ TRIGGER --> BUILD
153+ BUILD --> ARTIFACTS
154+ ARTIFACTS --> TEST
155+ TEST --> RELEASE
156+
157+ %% Artifact Flow Arrows (Cache Reuse)
158+ GITHUB_CACHE -.->|"mini CTK reuse"| BUILD
159+
160+ %% Artifact Flow Arrows (Wheel Fetch)
161+ GITHUB_ARTIFACTS -.->|"wheel fetch"| RELEASE
162+
163+ %% Styling
164+ classDef triggerStyle fill:#e8f4fd,stroke:#2196F3,stroke-width:2px,color:#1976D2
165+ classDef buildStyle fill:#f3e5f5,stroke:#9C27B0,stroke-width:2px,color:#7B1FA2
166+ classDef artifactStyle fill:#fff3e0,stroke:#FF9800,stroke-width:2px,color:#F57C00
167+ classDef testStyle fill:#e8f5e8,stroke:#4CAF50,stroke-width:2px,color:#388E3C
168+ classDef releaseStyle fill:#ffebee,stroke:#f44336,stroke-width:2px,color:#D32F2F
169+
170+ class TRIGGER,T1,T2 triggerStyle
171+ class BUILD,BUILD_PLATFORMS,B1,B2,B3,BUILD_DETAILS buildStyle
172+ class ARTIFACTS,GITHUB_ARTIFACTS,GITHUB_CACHE,GA1,GC1 artifactStyle
173+ class TEST,TEST_PLATFORMS,TS1,TS2,TS3,TEST_DETAILS,ARTIFACT_FLOWS testStyle
174+ class RELEASE,RELEASE_STAGES,R1,R2,R3,RELEASE_DETAILS releaseStyle
175+ ```
101176
102177### Pipeline Execution Details
103178
0 commit comments