forked from sofastack/sofa-ark
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchange_version.sh
executable file
·35 lines (28 loc) · 928 Bytes
/
change_version.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
#!/bin/bash
shopt -s expand_aliases
if [ ! -n "$1" ] ;then
echo "Please enter a version"
exit 1
else
echo "The updated version is $1 !"
fi
currentVersion=`sed -n '/<project /,/<packaging/p' pom.xml | grep version | cut -d '>' -f2 | cut -d '<' -f1`
echo "The current version is $currentVersion"
if [ `uname` == "Darwin" ] ;then
echo "This is OS X"
alias sed='sed -i ""'
else
echo "This is Linux"
alias sed='sed -i'
fi
echo "Change version in root pom.xml ===>"
sed "/<project /,/<packaging/ s/<version>.*<\/version>/<version>$1<\/version>/" pom.xml
echo "Change version in subproject pom ===>"
for filename in `find . -name "pom.xml" -mindepth 2`;do
echo "Deal with $filename"
sed "/<parent>/,/<\/parent>/ s/<version>.*<\/version>/<version>$1<\/version>/" $filename
done
for filename in `find . -name "README*.md"`;do
echo "Deal with $filename"
sed "/badge\/maven/! s/$currentVersion/$1/" $filename
done