Skip to content

Commit 3bc604e

Browse files
authored
Adding docs build (#16)
Mermaid js cleanup links Signed-off-by: Aidan Reilly <aireilly@redhat.com>
1 parent cc2992f commit 3bc604e

File tree

10 files changed

+154
-19
lines changed

10 files changed

+154
-19
lines changed

.github/workflows/docs.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Build docs
2+
on:
3+
push:
4+
branches:
5+
- main
6+
permissions:
7+
contents: read
8+
pages: write
9+
id-token: write
10+
jobs:
11+
deploy:
12+
environment:
13+
name: github-pages
14+
url: ${{ steps.deployment.outputs.page_url }}
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/configure-pages@v5
18+
- uses: actions/checkout@v5
19+
- uses: actions/setup-python@v5
20+
with:
21+
python-version: 3.x
22+
- run: pip install zensical
23+
- name: Copy README to docs with fixed relative links
24+
run: |
25+
python3 -c "
26+
import re, os
27+
repo_url = os.environ['REPO_URL']
28+
with open('README.md') as f:
29+
content = f.read()
30+
# Strip ./docs/ prefix so links resolve within the docs directory
31+
content = content.replace('./docs/', './')
32+
# Convert remaining relative links with directory paths to absolute GitHub URLs
33+
# (these point to repo files outside docs/, e.g. ./validation/README.md)
34+
content = re.sub(
35+
r'(\[[^\]]*\])\(\./([^)]*\/[^)]*)\)',
36+
rf'\1({repo_url}/blob/main/\2)',
37+
content,
38+
)
39+
with open('docs/index.md', 'w') as f:
40+
f.write(content)
41+
"
42+
env:
43+
REPO_URL: ${{ github.server_url }}/${{ github.repository }}
44+
- run: zensical build --clean
45+
- uses: actions/upload-pages-artifact@v4
46+
with:
47+
path: site
48+
- uses: actions/deploy-pages@v4
49+
id: deployment

.github/workflows/link-check.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Check links
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- '**/*.md'
7+
- '.lychee.toml'
8+
- '.github/workflows/link-check.yaml'
9+
10+
permissions:
11+
contents: read
12+
13+
jobs:
14+
link-check:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v5
18+
19+
- uses: lycheeverse/lychee-action@v2
20+
with:
21+
args: >
22+
--no-progress
23+
--exclude '^https?://localhost'
24+
'**/*.md'
25+
fail: true
26+
env:
27+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
.claude/
2+
site/

.lychee.toml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# https://lychee.cli.rs/usage/config/
2+
include_mail = false
3+
max_concurrency = 16
4+
max_retries = 3
5+
user_agent = "Mozilla/5.0 (compatible; lychee/0.18; +https://github.com/lycheeverse/lychee)"
6+
timeout = 30
7+
accept = [200, 203, 429]
8+
include_fragments = false
9+
include_verbatim = true
10+
exclude = [
11+
"^https?://[0-9]+\\.xx\\.",
12+
"^hf://",
13+
"^registry\\.redhat\\.io",
14+
]

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# rhaii-on-xks
1+
# Red Hat AI Inference on managed Kubernetes
22

33
Infrastructure Helm charts for deploying Red Hat AI Inference Server (KServe LLMInferenceService) on managed Kubernetes platforms (AKS, CoreWeave).
44

charts/cert-manager-operator/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ The update-bundle.sh script:
148148
Personal Red Hat pull secrets and tokens typically expire (yearly). Registry
149149
Service Accounts created via the [Red Hat terms-based registry](https://access.redhat.com/terms-based-registry/)
150150
do not expire and are recommended for production (see Section 1.3 of the
151-
[deployment guide](../docs/deploying-llm-d-on-managed-kubernetes.md)).
151+
[deployment guide](../../docs/deploying-llm-d-on-managed-kubernetes.md)).
152152

153153
To update expiring credentials:
154154

docs/deploying-llm-d-on-managed-kubernetes.md

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -165,18 +165,16 @@ Red Hat AI Inference Server on managed Kubernetes consists of the following comp
165165

166166
### Component Interaction
167167

168-
```text
169-
┌─────────────────────────────────────┐
170-
│ Kubernetes Cluster │
171-
┌──────────┐ ┌──────────────┐ │ ┌─────────┐ ┌────────────────┐ │
172-
│ Client │───▶│ Gateway │───▶│ │ EPP │───▶│ vLLM Pods │ │
173-
│ │ │ (Istio) │ │ │Scheduler│ │ (Model) │ │
174-
└──────────┘ └──────────────┘ │ └─────────┘ └────────────────┘ │
175-
│ ▲ ▲ │
176-
│ │ mTLS │ │
177-
│ └───────────────┘ │
178-
│ cert-manager │
179-
└─────────────────────────────────────┘
168+
```mermaid
169+
graph LR
170+
Client --> Gateway["Gateway<br/>(Istio)"]
171+
172+
subgraph Kubernetes Cluster
173+
Gateway --> EPP["EPP<br/>Scheduler"]
174+
EPP --> vLLM["vLLM Pods<br/>(Model)"]
175+
cm["cert-manager"] -. mTLS .-> EPP
176+
cm["cert-manager"] -. mTLS .-> vLLM
177+
end
180178
```
181179

182180
---
@@ -606,7 +604,8 @@ make deploy-kserve
606604
For assistance with Red Hat AI Inference Server deployments, contact Red Hat Support or consult the product documentation.
607605

608606
**Additional Resources:**
609-
- [KServe Chart README](https://github.com/opendatahub-io/rhaii-on-xks/blob/main/charts/kserve/README.md) - KServe Helm chart details, PKI prerequisites, and OCI registry install
610-
- [Preflight Validation](https://github.com/opendatahub-io/rhaii-on-xks/blob/main/validation/README.md) - Cluster readiness and post-deployment validation checks
611-
- [Monitoring Setup Guide](../monitoring-stack/) - Optional Prometheus/Grafana configuration for dashboards and autoscaling
612-
- [KServe LLMInferenceService Samples](https://github.com/red-hat-data-services/kserve/tree/rhoai-3.4/docs/samples/llmisvc)
607+
608+
* [KServe Chart README](https://github.com/opendatahub-io/rhaii-on-xks/blob/main/charts/kserve/README.md) - KServe Helm chart details, PKI prerequisites, and OCI registry install
609+
* [Preflight Validation](https://github.com/opendatahub-io/rhaii-on-xks/blob/main/validation/README.md) - Cluster readiness and post-deployment validation checks
610+
* [Monitoring Setup Guide](../monitoring-stack/) - Optional Prometheus/Grafana configuration for dashboards and autoscaling
611+
* [KServe LLMInferenceService Samples](https://github.com/red-hat-data-services/kserve/tree/rhoai-3.4/docs/samples/llmisvc)

docs/images/odh.png

9.81 KB
Loading

monitoring-stack/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,4 @@ kubectl port-forward -n monitoring svc/prometheus-operated 9090:9090
5252
## Dashboards
5353

5454
Community dashboards available at:
55-
- [llm-d Dashboards](https://github.com/llm-d/llm-d/tree/main/docs/monitoring/dashboards)
55+
- [llm-d Dashboards](https://github.com/llm-d/llm-d/tree/main/docs/monitoring/grafana/dashboards)

zensical.toml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
[project]
2+
site_name = "Red Hat AI Inference on managed Kubernetes"
3+
site_url = "https://opendatahub-io.github.io/rhaii-on-xks"
4+
repo_url = "https://github.com/opendatahub-io/rhaii-on-xks"
5+
edit_uri = "edit/main/docs/"
6+
nav = [
7+
{"Home" = [
8+
{"Get started" = "index.md"},
9+
{"Architecture" = "architecture-xks-deployment.md"},
10+
]},
11+
{"Deploy" = [
12+
{"Deploy" = "deploying-llm-d-on-managed-kubernetes.md"},
13+
{"Set up the gateway" = "gateway-setup-for-kserve.md"},
14+
{"Debug" = "collecting-debug-information.md"},
15+
]},
16+
]
17+
18+
[project.theme]
19+
logo = "images/odh.png"
20+
features = [
21+
"navigation.tabs",
22+
"navigation.tabs.sticky",
23+
"navigation.sections",
24+
"navigation.expand",
25+
"content.action.edit",
26+
"content.action.view",
27+
]
28+
29+
[[project.theme.palette]]
30+
media = "(prefers-color-scheme: light)"
31+
scheme = "default"
32+
toggle.icon = "lucide/sun"
33+
toggle.name = "Switch to dark mode"
34+
35+
[[project.theme.palette]]
36+
media = "(prefers-color-scheme: dark)"
37+
scheme = "slate"
38+
toggle.icon = "lucide/moon"
39+
toggle.name = "Switch to light mode"
40+
41+
[project.markdown_extensions.pymdownx.superfences]
42+
custom_fences = [
43+
{ name = "mermaid", class = "mermaid", format = "pymdownx.superfences.fence_code_format" }
44+
]

0 commit comments

Comments
 (0)