5
5
# Supported/used environment variables:
6
6
# PRODUCT_NAME
7
7
# PRODUCT_VERSION
8
- # PRODUCT_RELEASE_CREATOR
9
8
# EVERGREEN_VERSION_ID
10
9
11
10
if [ -z " ${PRODUCT_NAME} " ]; then
@@ -16,10 +15,6 @@ if [ -z "${PRODUCT_VERSION}" ]; then
16
15
printf " \nPRODUCT_VERSION must be set to a non-empty string\n"
17
16
exit 1
18
17
fi
19
- if [ -z " ${PRODUCT_RELEASE_CREATOR} " ]; then
20
- printf " \PRODUCT_RELEASE_CREATOR must be set to a non-empty string\n"
21
- exit 1
22
- fi
23
18
if [ -z " ${EVERGREEN_VERSION_ID} " ]; then
24
19
printf " \EVERGREEN_VERSION_ID must be set to a non-empty string\n"
25
20
exit 1
@@ -34,14 +29,37 @@ source "${RELATIVE_DIR_PATH}/javaConfig.bash"
34
29
printf " \nCreating SSDLC reports\n"
35
30
printf " \nProduct name: %s\n" " ${PRODUCT_NAME} "
36
31
printf " \nProduct version: %s\n" " ${PRODUCT_VERSION} "
37
- printf " \nProduct release creator: %s\n" " ${PRODUCT_RELEASE_CREATOR} "
38
- declare -r EVERGREEN_BUILD_URL=" https://spruce.mongodb.com/version/${EVERGREEN_VERSION_ID} "
39
- printf " \nEvergreen build URL: %s\n" " ${EVERGREEN_BUILD_URL} "
32
+
40
33
declare -r SSDLC_PATH=" ${RELATIVE_DIR_PATH} /../build/ssdlc"
41
34
declare -r SSDLC_STATIC_ANALYSIS_REPORTS_PATH=" ${SSDLC_PATH} /static-analysis-reports"
42
35
mkdir " ${SSDLC_PATH} "
43
36
mkdir " ${SSDLC_STATIC_ANALYSIS_REPORTS_PATH} "
44
37
38
+ declare -r EVERGREEN_PROJECT_NAME_PREFIX=" ${PRODUCT_NAME// -/ _} "
39
+ declare -r EVERGREEN_BUILD_URL_PREFIX=" https://spruce.mongodb.com/version"
40
+ declare -r GIT_TAG=" r${PRODUCT_VERSION} "
41
+ GIT_COMMIT_HASH=" $( git rev-list --ignore-missing -n 1 " ${GIT_TAG} " ) "
42
+ set +e
43
+ GIT_BRANCH_MASTER=" $( git branch -a --contains " ${GIT_TAG} " | grep ' master$' ) "
44
+ GIT_BRANCH_PATCH=" $( git branch -a --contains " ${GIT_TAG} " | grep ' \.x$' ) "
45
+ set -e
46
+ if [ -n " ${GIT_BRANCH_MASTER} " ]; then
47
+ declare -r EVERGREEN_BUILD_URL=" ${EVERGREEN_BUILD_URL_PREFIX} /${EVERGREEN_PROJECT_NAME_PREFIX} _${GIT_COMMIT_HASH} "
48
+ elif [ -n " ${GIT_BRANCH_PATCH} " ]; then
49
+ # strip out the patch version
50
+ declare -r EVERGREEN_PROJECT_NAME_SUFFIX=" ${PRODUCT_VERSION% .* } "
51
+ declare -r EVERGREEN_BUILD_URL=" ${EVERGREEN_BUILD_URL_PREFIX} /${EVERGREEN_PROJECT_NAME_PREFIX} _${EVERGREEN_PROJECT_NAME_SUFFIX} _${GIT_COMMIT_HASH} "
52
+ elif [[ " ${PRODUCT_NAME} " == * ' -snapshot' ]]; then
53
+ declare -r EVERGREEN_BUILD_URL=" ${EVERGREEN_BUILD_URL_PREFIX} /${EVERGREEN_VERSION_ID} "
54
+ else
55
+ printf " \nFailed to compute EVERGREEN_BUILD_URL\n"
56
+ exit 1
57
+ fi
58
+ printf " \nEvergreen build URL: %s\n" " ${EVERGREEN_BUILD_URL} "
59
+
60
+ PRODUCT_RELEASE_CREATOR=" $( git log --ignore-missing " ${GIT_TAG} " ^.." ${GIT_TAG} " --simplify-by-decoration --pretty=' format:%aN' ) "
61
+ printf " \nProduct release creator: %s\n" " ${PRODUCT_RELEASE_CREATOR} "
62
+
45
63
printf " \nCreating SpotBugs SARIF reports\n"
46
64
./gradlew -version
47
65
set +e
0 commit comments