Skip to content

Commit 6d86cef

Browse files
authored
Merge branch 'kagent-dev:main' into codewizard-logo
2 parents 8b1a272 + 49900f2 commit 6d86cef

54 files changed

Lines changed: 3011 additions & 857 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
name: Update Reference Documentation
2+
3+
on:
4+
workflow_dispatch: # Allow manual triggers for now
5+
# Later we can add:
6+
# push:
7+
# paths:
8+
# - 'api/v1alpha2/**'
9+
# branches:
10+
# - main
11+
12+
jobs:
13+
generate-api-docs:
14+
runs-on: ubuntu-latest
15+
16+
permissions:
17+
contents: write
18+
pull-requests: write
19+
20+
steps:
21+
- name: Checkout kagent repository
22+
uses: actions/checkout@v4
23+
with:
24+
repository: ${{ github.repository_owner }}/kagent
25+
path: kagent
26+
27+
- name: Checkout docs repository
28+
uses: actions/checkout@v4
29+
with:
30+
repository: ${{ github.repository_owner }}/website
31+
path: website
32+
33+
- name: Setup Go
34+
uses: actions/setup-go@v4
35+
with:
36+
go-version: '1.24'
37+
cache: false
38+
39+
- name: Set kagent commit SHA
40+
run: echo "KAGENT_COMMIT=$(cd kagent && git rev-parse --short HEAD)" >> $GITHUB_ENV
41+
42+
- name: Verify API directory exists
43+
run: |
44+
if [ ! -d "$GITHUB_WORKSPACE/kagent/go/controller/api/v1alpha2" ]; then
45+
echo "Error: API directory not found at $GITHUB_WORKSPACE/kagent/go/controller/api/v1alpha2"
46+
ls -la "$GITHUB_WORKSPACE/kagent/go/controller/api/"
47+
exit 1
48+
fi
49+
echo "API directory found and verified"
50+
51+
- name: Read max Kubernetes version
52+
run: |
53+
if [ ! -f "website/public/docs/versions/max-kube.md" ]; then
54+
echo "Error: max-kube.md file not found"
55+
exit 1
56+
fi
57+
KUBE_VERSION=$(cat website/public/docs/versions/max-kube.md | tr -d '\n')
58+
echo "KUBE_VERSION=$KUBE_VERSION" >> $GITHUB_ENV
59+
echo "Using Kubernetes version: $KUBE_VERSION"
60+
61+
- name: Generate API Reference
62+
run: |
63+
# Substitute KUBE_VERSION in the config template and write to a temp file
64+
cd "$GITHUB_WORKSPACE/website"
65+
if [ ! -f "scripts/crd-ref-docs-config.yaml" ]; then
66+
echo "Error: crd-ref-docs-config.yaml not found in scripts directory"
67+
exit 1
68+
fi
69+
70+
envsubst < scripts/crd-ref-docs-config.yaml > crd-ref-docs-config.yaml
71+
72+
echo "Changed to docs repository: $PWD"
73+
echo "Using config file:"
74+
cat crd-ref-docs-config.yaml
75+
76+
# Generate API docs
77+
go run github.com/elastic/crd-ref-docs@v0.1.0 \
78+
--source-path="$GITHUB_WORKSPACE/kagent/go/controller/api/v1alpha2/" \
79+
--renderer=markdown \
80+
--output-path ./ \
81+
--config=crd-ref-docs-config.yaml
82+
83+
# Check if generation was successful
84+
if [ ! -f "./out.md" ]; then
85+
echo "Error: API docs generation failed - out.md not created"
86+
exit 1
87+
fi
88+
89+
# Remove the temporary config file so it is not included in the PR
90+
rm -f crd-ref-docs-config.yaml
91+
92+
# Create index file with frontmatter
93+
echo '---' > src/app/docs/kagent/resources/api-ref/page.mdx
94+
echo 'title: "API Reference"' >> src/app/docs/kagent/resources/api-ref/page.mdx
95+
echo 'sectionOrder: 1' >> src/app/docs/kagent/resources/api-ref/page.mdx
96+
echo 'description: "kagent API reference documentation"' >> src/app/docs/kagent/resources/api-ref/page.mdx
97+
echo '---' >> src/app/docs/kagent/resources/api-ref/page.mdx
98+
echo '' >> src/app/docs/kagent/resources/api-ref/page.mdx
99+
echo 'export const metadata = {' >> src/app/docs/kagent/resources/api-ref/page.mdx
100+
echo ' title: "API Reference",' >> src/app/docs/kagent/resources/api-ref/page.mdx
101+
echo ' description: "kagent API reference documentation",' >> src/app/docs/kagent/resources/api-ref/page.mdx
102+
echo ' author: "kagent.dev"' >> src/app/docs/kagent/resources/api-ref/page.mdx
103+
echo '};' >> src/app/docs/kagent/resources/api-ref/page.mdx
104+
echo '' >> src/app/docs/kagent/resources/api-ref/page.mdx
105+
cat "./out.md" >> src/app/docs/kagent/resources/api-ref/page.mdx
106+
107+
# Remove temporary file
108+
rm -f "./out.md"
109+
110+
# Verify the output file was created
111+
if [ ! -f "src/app/docs/kagent/resources/api-ref/page.mdx" ]; then
112+
echo "Error: Failed to create API docs page"
113+
exit 1
114+
fi
115+
116+
echo "API docs generated successfully"
117+
118+
- name: Generate Helm Chart Reference
119+
run: |
120+
echo "Looking for Helm directory:"
121+
ls -la "$GITHUB_WORKSPACE/kagent/helm" || echo "Helm directory not found!"
122+
123+
# Update docs repository
124+
cd "$GITHUB_WORKSPACE/website"
125+
echo "Changed to docs repository: $PWD"
126+
127+
# Create directory for Helm docs
128+
mkdir -p src/app/docs/kagent/resources/helm/
129+
130+
# Generate Helm Docs for kagent chart
131+
if [ ! -d "$GITHUB_WORKSPACE/kagent/helm/kagent" ]; then
132+
echo "Error: kagent Helm chart directory not found"
133+
exit 1
134+
fi
135+
136+
echo "Processing kagent Helm chart..."
137+
138+
# Generate the helm documentation
139+
go run github.com/norwoodj/helm-docs/cmd/helm-docs@v1.14.2 \
140+
--chart-search-root "$GITHUB_WORKSPACE/kagent/helm/kagent" \
141+
--dry-run > "src/app/docs/kagent/resources/helm/temp.mdx"
142+
143+
# Remove badge line and following empty line
144+
# (might be replaced by helm docs template in the future)
145+
sed -i '/!\[Version:/,/^$/d' "src/app/docs/kagent/resources/helm/temp.mdx"
146+
147+
# Remove backticks from the Default column in the table
148+
sed -i 's/| `\([^`]*\)` |/| \1 |/g' "src/app/docs/kagent/resources/helm/temp.mdx"
149+
150+
# Add frontmatter
151+
echo '---' > "src/app/docs/kagent/resources/helm/page.mdx"
152+
echo 'title: "Helm Chart Configuration"' >> "src/app/docs/kagent/resources/helm/page.mdx"
153+
echo 'sectionOrder: 2' >> "src/app/docs/kagent/resources/helm/page.mdx"
154+
echo 'description: "kagent Helm chart configuration reference"' >> "src/app/docs/kagent/resources/helm/page.mdx"
155+
echo '---' >> "src/app/docs/kagent/resources/helm/page.mdx"
156+
echo '' >> "src/app/docs/kagent/resources/helm/page.mdx"
157+
echo 'export const metadata = {' >> "src/app/docs/kagent/resources/helm/page.mdx"
158+
echo ' title: "Helm Chart Configuration",' >> "src/app/docs/kagent/resources/helm/page.mdx"
159+
echo ' description: "kagent Helm chart configuration reference",' >> "src/app/docs/kagent/resources/helm/page.mdx"
160+
echo ' author: "kagent.dev"' >> "src/app/docs/kagent/resources/helm/page.mdx"
161+
echo '};' >> "src/app/docs/kagent/resources/helm/page.mdx"
162+
echo '' >> "src/app/docs/kagent/resources/helm/page.mdx"
163+
164+
# Append the processed helm documentation
165+
cat "src/app/docs/kagent/resources/helm/temp.mdx" >> "src/app/docs/kagent/resources/helm/page.mdx"
166+
167+
# Clean up temporary file
168+
rm -f "src/app/docs/kagent/resources/helm/temp.mdx"
169+
170+
echo "=== Debug: After creating index file ==="
171+
echo "Content directory structure:"
172+
ls -la src/app/docs/kagent/resources/helm/
173+
174+
- name: Create Pull Request
175+
uses: peter-evans/create-pull-request@v6
176+
with:
177+
token: ${{ secrets.GITHUB_TOKEN }}
178+
path: website
179+
commit-message: "docs: Update API and kagent Helm reference docs"
180+
signoff: true
181+
title: "Update API and kagent Helm reference docs"
182+
body: |
183+
Automated API and kagent Helm chart documentation update based on the latest commit [`${{ env.KAGENT_COMMIT }}`](https://github.com/${{ github.repository_owner }}/kagent/commit/${{ env.KAGENT_COMMIT }}) to `main` in the **kagent** repository.
184+
185+
This PR was automatically generated by the [**Update Reference documentation** workflow](https://github.com/kagent-dev/website/actions/workflows/update-ref-docs.yaml).
186+
branch: api-gen-update
187+
branch-suffix: timestamp
188+
delete-branch: true
189+
base: main
190+
labels: |
191+
documentation
192+
automated pr

next.config.mjs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import createMDX from "@next/mdx";
44
import rehypeUnwrapImages from 'rehype-unwrap-images'
55
import remarkFrontmatter from 'remark-frontmatter'
6+
import remarkGfm from 'remark-gfm'
67

78
const nextConfig = {
89
pageExtensions: ['js', 'jsx', 'md', 'mdx', 'ts', 'tsx'],
@@ -35,7 +36,7 @@ const nextConfig = {
3536

3637
const withMDX = createMDX({
3738
options: {
38-
remarkPlugins: [remarkFrontmatter],
39+
remarkPlugins: [remarkFrontmatter, remarkGfm],
3940
rehypePlugins: [rehypeUnwrapImages],
4041
},
4142
})

0 commit comments

Comments
 (0)