-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathbuildAll.sh
More file actions
executable file
·71 lines (61 loc) · 1.93 KB
/
buildAll.sh
File metadata and controls
executable file
·71 lines (61 loc) · 1.93 KB
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
71
#!/usr/bin/env bash
set -e
# Check for Java version
check_java_version() {
JAVA_VERSION_RAW=$(java -version 2>&1 | head -n 1)
JAVA_VERSION=$(echo "$JAVA_VERSION_RAW" | sed -n 's/.*"\([^"]*\)".*/\1/p')
JAVA_MAJOR_VERSION=${JAVA_VERSION%%.*}
echo "Detected Java version: $JAVA_VERSION (major: $JAVA_MAJOR_VERSION)"
if [[ "$JAVA_MAJOR_VERSION" == "21" ]]; then
return 0
else
return 1
fi
}
if ! check_java_version; then
echo "Java version is not 21. Looking for jdk21 command..."
if command -v jdk21 &> /dev/null; then
echo "Found jdk21 command, executing it..."
. jdk21
if ! check_java_version; then
echo "Error: Java version is still not 21 after running jdk21."
exit 1
fi
else
echo "Error: Java 21 is required. Please install Java 21 or create a command 'jdk21' to switch to it."
exit 1
fi
fi
# --- Updated Argument Handling ---
export RUN_EXTERNAL_TESTS=false
export RUN_SLOW_TESTS=false
if [[ "$1" == "--external" || "$1" == "-e" ]]; then
export RUN_EXTERNAL_TESTS=true
echo "External tests enabled"
elif [[ "$1" == "--all" || "$1" == "-a" ]]; then
export RUN_EXTERNAL_TESTS=true
export RUN_SLOW_TESTS=true
echo "All tests (external and slow) enabled"
fi
# ---------------------------------
#localRepo=$(mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout)
#if [[ -d "$localRepo/se/alipsa/matrix" ]]; then
# echo "Removing local cache in $localRepo/se/alipsa/matrix"
# rm -r "$localRepo/se/alipsa/matrix"
#fi
#echo "Locally publish bom"
#pushd matrix-bom
# mvn -f bom.xml install
#popd
echo "Building and locally publishing matrix"
# Force a clean rebuild so cross-module Groovy syntax/compile issues are not hidden by incremental outputs.
./gradlew clean || true
./gradlew spotlessApply build publishToMavenLocal
#echo "Verify bom and install matrix-all"
#pushd matrix-bom
# mvn install
#popd
# Clean up
unset RUN_EXTERNAL_TESTS
unset RUN_SLOW_TESTS
echo "Done!"