Skip to content

Commit

Permalink
Add consolidate release notes pages (#105)
Browse files Browse the repository at this point in the history
* Add consolidate release notes pages

Signed-off-by: Derek Nola <[email protected]>
  • Loading branch information
dereknola authored Oct 5, 2023
1 parent c1f50c0 commit fc4e400
Show file tree
Hide file tree
Showing 9 changed files with 1,776 additions and 0 deletions.
26 changes: 26 additions & 0 deletions .github/workflows/release-notes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Collect Release Notes
on:
workflow_dispatch

permissions:
contents: write
pull-requests: write
jobs:
collect-all:
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v3
- name: Generate release notes
run: |
rm docs/release-notes/*.md
scripts/collect-all-release-notes.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:
commit-message: update release-notes/v1.XX.X.md
title: Update Release Notes
body: Automated release notes update
branch: update-release-notes
1 change: 1 addition & 0 deletions .remarkignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docs/release-notes/*
556 changes: 556 additions & 0 deletions docs/release-notes/v1.24.X.md

Large diffs are not rendered by default.

498 changes: 498 additions & 0 deletions docs/release-notes/v1.25.X.md

Large diffs are not rendered by default.

361 changes: 361 additions & 0 deletions docs/release-notes/v1.26.X.md

Large diffs are not rendered by default.

234 changes: 234 additions & 0 deletions docs/release-notes/v1.27.X.md

Large diffs are not rendered by default.

37 changes: 37 additions & 0 deletions docs/release-notes/v1.28.X.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
hide_table_of_contents: true
---

# v1.28.X

:::caution Upgrade Notice
Before upgrading from earlier releases, be sure to read the Kubernetes [Urgent Upgrade Notes](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.28.md#urgent-upgrade-notes).
:::

| Version | Release date | Kubernetes | Etcd | Containerd | Runc | Metrics-server | CoreDNS | Ingress-Nginx | Helm-controller | Canal (Default) | Calico | Cilium | Multus |
| ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- |
| [v1.28.2+rke2r1](v1.28.X.md#release-v1282rke2r1) | Sep 18 2023| [v1.28.2](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.28.md#v1282) | [v3.5.9-k3s1](https://github.com/k3s-io/etcd/releases/tag/v3.5.9-k3s1) | [v1.7.3-k3s1](https://github.com/k3s-io/containerd/releases/tag/v1.7.3-k3s1) | [v1.1.8](https://github.com/opencontainers/runc/releases/tag/v1.1.8) | [v0.6.3](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.3) | [v1.10.1](https://github.com/coredns/coredns/releases/tag/v1.10.1) | [4.6.1](https://github.com/kubernetes/ingress-nginx/releases/tag/helm-chart-4.6.1) | [v0.15.4](https://github.com/k3s-io/helm-controller/releases/tag/v0.15.4) | [Flannel v0.22.1](https://github.com/flannel-io/flannel/releases/tag/v0.22.1)<br/>[Calico v3.26.1](https://docs.tigera.io/calico/latest/release-notes/#v3.26) | [v3.26.1](https://docs.tigera.io/calico/latest/release-notes/#v3.26) | [v1.14.1](https://github.com/cilium/cilium/releases/tag/v1.14.1) | [v4.0.2](https://github.com/k8snetworkplumbingwg/multus-cni/releases/tag/v4.0.2) |

<br />

## Release v1.28.2+rke2r1
<!-- v1.28.2+rke2r1 -->

This release updates Kubernetes to v1.28.2.

**Important Note**

If your server (control-plane) nodes were not started with the `--token` CLI flag or config file key, a randomized token was generated during initial cluster startup. This key is used both for joining new nodes to the cluster, and for encrypting cluster bootstrap data within the datastore. Ensure that you retain a copy of this token, as is required when restoring from backup.

You may retrieve the token value from any server already joined to the cluster:
```bash
cat /var/lib/rancher/rke2/server/token
```

### Changes since v1.28.1+rke2r1:

* Support new generic "cis" profile [(#4708)](https://github.com/rancher/rke2/pull/4708)
* Update cilium to 1.14.1 [(#4755)](https://github.com/rancher/rke2/pull/4755)
* Update Kubernetes to v1.28.2 Go to v1.20.8 [(#4760)](https://github.com/rancher/rke2/pull/4760)

-----
53 changes: 53 additions & 0 deletions scripts/collect-all-release-notes.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
#!/usr/bin/env bash
function gen_md_link()
{
release_link=$(echo $1 | tr '[:upper:]' '[:lower:]' | sed -e 's/ /-/g' -e 's/\.//g' -e 's/+//g')
echo "${release_link}"
}

MINORS="v1.24 v1.25 v1.26 v1.27 v1.28"

for minor in $MINORS; do
product=rke2
global_table=$(mktemp)
previous=""
file=docs/release-notes/${minor}.X.md
for patch in $(gh release list -R "rancher/${product}" --exclude-drafts --exclude-pre-releases --limit=1000 | awk -F '\t' '{ print $3 }' | grep ^"${minor}"); do
publish_date=$(gh release view "${patch}" -R "rancher/${product}" --json publishedAt -q '.publishedAt' | awk -F'T' '{ print $1 }')
echo "# Release ${patch}" >> "${file}"
gh release view "${patch}" -R "rancher/${product}" --json body -q '.body' >> "${file}"
echo "-----" >> "${file}"
body=$(gh release view "${patch}" -R "rancher/${product}" --json body -q '.body')
# Extract from each release notes the component table, building a single table with all the components
if [ -z "${previous}" ]; then
title="---\nhide_table_of_contents: true\n---\n\n# ${minor}.X\n"
echo -e "${title}" >> $global_table
upgrade_link="[Urgent Upgrade Notes](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-${minor:1}.md#urgent-upgrade-notes)"
upgrade_warning=":::caution Upgrade Notice\nBefore upgrading from earlier releases, be sure to read the Kubernetes ${upgrade_link}.\n:::\n"
echo -e "${upgrade_warning}" >> $global_table
echo -n "| Version | Release date " >> $global_table
# RKE2 Core Components
echo "$body" | grep "^|" | tail +3 | head -8 | awk -F'|' '{ print $2 }' | while read column; do echo -n "| $column " >> $global_table; done
# RKE2 CNIs
echo "$body" | grep "^|" | tail -4 | awk -F'|' '{ print $2 }' | while read column; do echo -n "| $column " >> $global_table; done
echo " |" >> $global_table
for i in {0..13}; do echo -n "| ----- " >> $global_table; done
echo " |" >> $global_table
fi
echo -n "| [${patch}](${minor}.X.md#release-$(gen_md_link $patch)) | $(date +"%b %d %Y" -d "${publish_date}")" >> $global_table
echo "$body" | grep "^|" | tail +3 | head -8 | awk -F'|' '{ print $3 }' | while read column; do echo -n "| $column " >> $global_table; done
echo "$body" | grep "^|" | tail -4 | awk -F'|' '{ print $3 }' | while read column; do echo -n "| $column " >> $global_table; done
echo " |" >> $global_table
previous=$patch
# Remove the component table from each individual release notes
perl -i -p0e 's/^## Packaged Component Versions.*?^-----/-----/gms' "${file}"
# Add extra levels for Docusaurus Sidebar
sed -i 's/^# Release/## Release/' "${file}"
sed -i 's/^## Changes since/### Changes since/' "${file}"
done
echo -e "\n<br />\n" >> $global_table
# Append the global component and version table
rke2tmp=$(mktemp)
cat $global_table "${file}" > $rke2tmp && mv $rke2tmp "${file}"
echo "Collected release notes for ${product} ${minor}"
done
10 changes: 10 additions & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,16 @@ module.exports = {
},
],
},
{
type: 'category',
label: 'Release Notes',
items: [
{
type: 'autogenerated',
dirName: 'release-notes',
},
],
},
'known_issues',
],
};

0 comments on commit fc4e400

Please sign in to comment.