Skip to content

Commit 4194f0c

Browse files
devalogclaude
andauthored
Add self-hosted changelog with automated version updates (#5241)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
1 parent 0cb70f8 commit 4194f0c

14 files changed

Lines changed: 198 additions & 1 deletion
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: Update Self-Hosted Changelog
2+
3+
on:
4+
schedule:
5+
- cron: "0 * * * *"
6+
workflow_dispatch:
7+
8+
jobs:
9+
update-self-hosted-changelog:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v5
13+
with:
14+
ref: main
15+
- name: Sync self-hosted releases from fern-platform
16+
env:
17+
GH_TOKEN: ${{ secrets.FERN_GITHUB_TOKEN }}
18+
run: |
19+
set -euo pipefail
20+
DIR="fern/products/docs/pages/self-hosted/changelog"
21+
mkdir -p "$DIR"
22+
23+
gh api -H "Accept: application/vnd.github+json" \
24+
"repos/fern-api/fern-platform/releases?per_page=50" \
25+
--jq '.[] | select(.tag_name | startswith("docs@")) | "\(.tag_name)\t\(.published_at)"' \
26+
| sort -k2 \
27+
> /tmp/releases.tsv
28+
29+
while IFS=$'\t' read -r tag published; do
30+
version="${tag#docs@}"
31+
date="${published%%T*}"
32+
file="$DIR/$date.mdx"
33+
version_escaped="${version//./\\.}"
34+
35+
if grep -rqE "^### v${version_escaped}$" "$DIR" 2>/dev/null; then
36+
continue
37+
fi
38+
39+
if [ -s "$file" ]; then
40+
printf '\n### v%s\n\n```dockerfile\nFROM fernenterprise/fern-self-hosted:%s\n```\n' "$version" "$version" >> "$file"
41+
else
42+
printf '### v%s\n\n```dockerfile\nFROM fernenterprise/fern-self-hosted:%s\n```\n' "$version" "$version" > "$file"
43+
fi
44+
done < /tmp/releases.tsv
45+
- name: create PR
46+
id: cpr
47+
uses: peter-evans/create-pull-request@v8
48+
with:
49+
commit-message: "update self-hosted changelog from fern-platform releases"
50+
title: "Update self-hosted changelog"
51+
branch: update-self-hosted-changelog
52+
base: main
53+
delete-branch: true
54+
- name: Enable Pull Request Automerge
55+
if: steps.cpr.outputs.pull-request-operation == 'created'
56+
uses: peter-evans/enable-pull-request-automerge@v3
57+
with:
58+
pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
59+
merge-method: squash
60+
- name: Approving PR
61+
if: steps.cpr.outputs.pull-request-operation == 'created'
62+
env:
63+
GH_TOKEN: ${{ secrets.FERN_GITHUB_TOKEN }}
64+
run: |
65+
echo "Approving PR"
66+
gh pr review ${{ steps.cpr.outputs.pull-request-number }} --approve

fern/products/docs/docs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,8 @@ navigation:
393393
slug: previews
394394
- page: Health check endpoints
395395
path: ./pages/self-hosted/health-check-endpoints.mdx
396+
- changelog: ./pages/self-hosted/changelog
397+
title: Releases
396398
- section: Analytics & integrations
397399
slug: integrations
398400
collapsed: true
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
### v0.114.1
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.1
5+
```
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
### v0.114.2
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.2
5+
```
6+
7+
### v0.114.3
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.3
11+
```
12+
13+
### v0.114.4
14+
15+
```dockerfile
16+
FROM fernenterprise/fern-self-hosted:0.114.4
17+
```
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
### v0.114.5
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.5
5+
```
6+
7+
### v0.114.6
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.6
11+
```
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
### v0.114.7
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.7
5+
```
6+
7+
### v0.114.8
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.8
11+
```
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
### v0.114.9
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.9
5+
```
6+
7+
### v0.114.10
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.10
11+
```
12+
13+
### v0.114.11
14+
15+
```dockerfile
16+
FROM fernenterprise/fern-self-hosted:0.114.11
17+
```
18+
19+
### v0.114.12
20+
21+
```dockerfile
22+
FROM fernenterprise/fern-self-hosted:0.114.12
23+
```
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
### v0.114.13
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.13
5+
```
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
### v0.114.14
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.14
5+
```
6+
7+
### v0.114.15
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.15
11+
```
12+
13+
### v0.114.16
14+
15+
```dockerfile
16+
FROM fernenterprise/fern-self-hosted:0.114.16
17+
```
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
### v0.114.17
2+
3+
```dockerfile
4+
FROM fernenterprise/fern-self-hosted:0.114.17
5+
```
6+
7+
### v0.114.18
8+
9+
```dockerfile
10+
FROM fernenterprise/fern-self-hosted:0.114.18
11+
```
12+
13+
### v0.114.19
14+
15+
```dockerfile
16+
FROM fernenterprise/fern-self-hosted:0.114.19
17+
```

0 commit comments

Comments
 (0)