1
0
mirror of https://github.com/home-assistant/operating-system.git synced 2025-12-24 20:35:31 +00:00

Include links to kernel changelogs on kernel bump (#3133)

Generate list of changelogs if we're bumping to the next patch release.
If major or minor version is bumped, the commit message contains only
the title, like before.

Also fix English in the commit title of RPi bump.
This commit is contained in:
Jan Čermák
2024-02-01 11:27:52 +01:00
committed by GitHub
parent 5271dd180d
commit b3e3d833a7
2 changed files with 30 additions and 2 deletions

View File

@@ -6,9 +6,37 @@ if [ -z "$1" ]; then
exit 1
fi
# assume the version is same in all defconfigs, take ova as the reference
current_version=$(grep 'BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE' buildroot-external/configs/ova_defconfig | cut -d '"' -f 2)
# get X.Y.Z tokens of the current and new version
IFS='.' read -r -a current_version_parts <<< "$current_version"
IFS='.' read -r -a new_version_parts <<< "$1"
defconfigs=(buildroot-external/configs/{generic_aarch64,generic_x86_64,ova,tinker,odroid_*,khadas_vim3,green}_defconfig)
sed -i "s/BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE=\".*\"/BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE=\"$1\"/g" "${defconfigs[@]}"
sed -i "s/| \(Open Virtual Appliance\|Generic aarch64\|Generic x86-64\|Tinker Board\|ODROID-.*\|Khadas VIM3\|Home Assistant Green\) | .* |/| \1 | $1 |/g" Documentation/kernel.md
git commit -m "Linux: Update kernel $1" "${defconfigs[@]}" Documentation/kernel.md
commit_message="Linux: Update kernel to $1"
# get links to changelog if we're only updating the Z part of the version
if [ "${current_version_parts[0]}" == "${new_version_parts[0]}" ] && \
[ "${current_version_parts[1]}" == "${new_version_parts[1]}" ] && \
[ "${current_version_parts[2]}" -lt "${new_version_parts[2]}" ]; then
commit_message="$commit_message"$'\n\n'
# loop from the current Z + 1 to the new Z
for (( z = current_version_parts[2] + 1; z <= new_version_parts[2]; z++ )); do
next_version="${current_version_parts[0]}.${current_version_parts[1]}.$z"
commit_message="${commit_message}* https://cdn.kernel.org/pub/linux/kernel/v${current_version_parts[0]}.x/ChangeLog-${next_version}"$'\n'
done
# remove trailing newline
commit_message=$(echo -n "$commit_message")
fi
git commit -m "$commit_message" "${defconfigs[@]}" Documentation/kernel.md
./scripts/check-kernel-patches.sh