utils: Provide a release script
Support making releases of libcamera by introducing a helper script which will facilitate the increment of any release version, along with generating an associated tag. Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
1bd14fc895
commit
fc46d09123
1 changed files with 46 additions and 0 deletions
46
utils/release.sh
Executable file
46
utils/release.sh
Executable file
|
@ -0,0 +1,46 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
# Prepare a project release
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Abort if we are not within the project root or the tree is not clean.
|
||||||
|
if [ ! -e utils/gen-version.sh ] || [ ! -e .git ]; then
|
||||||
|
echo "This release script must be run from the root of libcamera git tree."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! git diff-index --quiet HEAD; then
|
||||||
|
echo "Tree must be clean to release."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Identify current version components
|
||||||
|
version=$(./utils/gen-version.sh)
|
||||||
|
|
||||||
|
# Decide if we are here to bump major, minor, or patch release.
|
||||||
|
case $1 in
|
||||||
|
major|minor|patch)
|
||||||
|
bump=$1;
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "You must specify the version bump level: (major, minor, patch)"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
new_version=$(./utils/semver bump "$bump" "$version")
|
||||||
|
|
||||||
|
echo "Bumping $bump"
|
||||||
|
echo " Existing version is: $version"
|
||||||
|
echo " New version is : $new_version"
|
||||||
|
|
||||||
|
# Patch in the version to our meson.build
|
||||||
|
sed -i -E "s/ version : '.*',/ version : '$new_version',/" meson.build
|
||||||
|
|
||||||
|
# Commit the update
|
||||||
|
git commit meson.build -esm "libcamera v$new_version"
|
||||||
|
|
||||||
|
# Create a tag from that commit
|
||||||
|
git show -s --format=%B | git tag "v$new_version" -s -F -
|
Loading…
Add table
Add a link
Reference in a new issue