-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathupliftMajorVersion.sh
executable file
·70 lines (57 loc) · 3.73 KB
/
upliftMajorVersion.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
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/bash
PACKAGE_PREFIX_QUERY_API="stroom.query.api"
PACKAGE_PREFIX_DATASOURCE_API="stroom.datasource.api"
PACKAGE_PREFIX_QUERY="stroom.query"
PACKAGE_PREFIX_MAPREDUCE="stroom.mapreduce"
SRC_DIR_API="./stroom-query-api/src"
SRC_DIR_COMMON="./stroom-query-common/src"
if [ "$#" -ne 2 ]; then
echo "ERROR Invalid arguments" >&2
echo "Usage: $0 currentMajorVersion newMajorVersion" >&2
echo "E.g: $0 v1 v2" >&2
exit 1
fi
oldMajorVersion=$1
newMajorVersion=$2
echo "Uplifting major version from $oldMajorVersion to $newMajorVersion"
echo ""
echo "Renaming package directories ${SRC_DIR_API}"
for versionedDir in `find ${SRC_DIR_API} -type d -name "*${oldMajorVersion}"`; do
newDir=`echo "${versionedDir}" | sed "s/${oldMajorVersion}$/${newMajorVersion}/"`
echo "renaming directory ${versionedDir} to ${newDir}";
git mv "${versionedDir}" "${newDir}"
done
echo ""
echo "Renaming package directories ${SRC_DIR_COMMON}"
for versionedDir in `find ${SRC_DIR_COMMON} -type d -name "*${oldMajorVersion}"`; do
newDir=`echo "${versionedDir}" | sed "s/${oldMajorVersion}$/${newMajorVersion}/"`
echo "renaming directory ${versionedDir} to ${newDir}";
git mv "${versionedDir}" "${newDir}"
done
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_QUERY_API} package references in 'stroom-query-api' code"
echo "About to change `find ${SRC_DIR_API} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_QUERY_API}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_API} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_QUERY_API}\.${oldMajorVersion}/${PACKAGE_PREFIX_QUERY_API}.${newMajorVersion}/g"
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_QUERY_API} package references in 'stroom-query-common' code"
echo "About to change `find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_QUERY_API}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_QUERY_API}\.${oldMajorVersion}/${PACKAGE_PREFIX_QUERY_API}.${newMajorVersion}/g"
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_DATASOURCE_API} package references in 'stroom-query-api' code"
echo "About to change `find ${SRC_DIR_API} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_DATASOURCE_API}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_API} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_DATASOURCE_API}\.${oldMajorVersion}/${PACKAGE_PREFIX_DATASOURCE_API}.${newMajorVersion}/g"
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_DATASOURCE_API} package references in 'stroom-query-common' code"
echo "About to change `find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_DATASOURCE_API}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_DATASOURCE_API}\.${oldMajorVersion}/${PACKAGE_PREFIX_DATASOURCE_API}.${newMajorVersion}/g"
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_QUERY} package references in 'stroom-query-common' code"
echo "About to change `find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_QUERY}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_QUERY}\.${oldMajorVersion}/${PACKAGE_PREFIX_QUERY}.${newMajorVersion}/g"
echo ""
echo "Re-versioning ${PACKAGE_PREFIX_MAPREDUCE} package references in 'stroom-query-common' code"
echo "About to change `find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs grep "${PACKAGE_PREFIX_MAPREDUCE}.${oldMajorVersion}" | wc -l` lines"
find ${SRC_DIR_COMMON} -type f -name "*.java" | xargs sed -i "s/${PACKAGE_PREFIX_MAPREDUCE}\.${oldMajorVersion}/${PACKAGE_PREFIX_MAPREDUCE}.${newMajorVersion}/g"
echo ""
echo "Completed, ensure you check all changes made before committing"
exit 0