forked from v4l2loopback/v4l2loopback
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathupdate_changelog.sh
executable file
·58 lines (46 loc) · 1.19 KB
/
update_changelog.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/bin/sh
####################################
# changelog generator using git-dch
CHANGELOG=ChangeLog
getcurrentversion () {
dpkg-parsechangelog --count 1 -l${CHANGELOG} | egrep "^Version:" | head -1 | cut -f2 -d' '
}
if [ "x$2" = "x" ]; then
## guess current version
NEWVERSION=$1
OLDVERSION=$(getcurrentversion)
else
OLDVERSION=$1
NEWVERSION=$2
fi
if git tag -l v${OLDVERSION} | grep . >/dev/null
then
:
else
echo "it seems like there is no tag 'v${OLDVERSION}'" 1>&2
exit 1
fi
if [ "x$OLDVERSION" = "x" ]; then
echo "usage: $0 [<LASTVERSION>] <CURVERSION>" 1>&2
exit 1
fi
echo "updating from $OLDVERSION"
if [ "x$NEWVERSION" = "x" ]; then
echo "usage: $0 [<LASTVERSION>] <CURVERSION>" 1>&2
exit 1
fi
if dpkg --compare-versions ${OLDVERSION} ge ${NEWVERSION}
then
echo "version mismatch: $OLDVERSION is newer than $NEWVERSION" 1>&2
exit 1
fi
echo "updating to $NEWVERSION"
OK=false
mkdir debian
cp ${CHANGELOG} debian/changelog
git-dch --since "v${OLDVERSION}" -N ${NEWVERSION} && cat debian/changelog > ${CHANGELOG} && OK=true
rm -rf debian
if [ "x$OK" = "xtrue" ]; then
echo "all went well"
echo "check your $CHANGELOG and don't forget to git-tag the new version as v${NEWVERSION}"
fi