@@ -37,20 +37,29 @@ join() {
37
37
38
38
extractVersion () {
39
39
awk '
40
- $1 == "ENV" && /_VERSION/ {
41
- match($2, /"(.*)"/)
42
- versionStr = substr($2, RSTART + 1, RLENGTH - 2)
43
- versionStrLength = split(versionStr, versionStrArray, ".")
44
- if(versionStrLength > 3) {
45
- print versionStr
46
- } else if(versionStrLength > 2){
47
- print versionStr ".0"
48
- } else {
49
- print versionStr ".0.0"
50
- }
51
- exit
52
- }'
53
-
40
+ $1 == "ENV" && /_VERSION/ {
41
+ match($2, /"(.*)"/)
42
+ versionStr = substr($2, RSTART + 1, RLENGTH - 2)
43
+
44
+ # Preserve release candidate (-rcX) if present
45
+ if (match(versionStr, /-rc[0-9]+$/)) {
46
+ rcPart = substr(versionStr, RSTART)
47
+ versionCore = substr(versionStr, 1, RSTART - 1)
48
+ } else {
49
+ rcPart = ""
50
+ versionCore = versionStr
51
+ }
52
+
53
+ versionStrLength = split(versionCore, versionStrArray, ".")
54
+ if (versionStrLength > 3) {
55
+ print versionCore rcPart
56
+ } else if (versionStrLength > 2) {
57
+ print versionCore ".0" rcPart
58
+ } else {
59
+ print versionCore ".0.0" rcPart
60
+ }
61
+ exit
62
+ }'
54
63
}
55
64
56
65
self=" ${BASH_SOURCE##*/ } "
0 commit comments