@@ -27,12 +27,32 @@ checkDockerRunning() {
27
27
fi
28
28
}
29
29
30
+ computeCCVersion () {
31
+ [ -z " $1 " ] && return
32
+ git fetch --tags -q
33
+ for i in ` git tag | sort -r` ; do
34
+ local vVersion=` git show $i :pom.xml | grep ' <vaadin.components.version>' | cut -d ' >' -f2 | cut -d ' <' -f1`
35
+ # echo "$1 - $vVersion" >&2
36
+ [ " $vVersion " = " $1 " ] && echo $i && return 0
37
+ done
38
+ mvn help:evaluate -Dexpression=project.version -q -DforceStdout
39
+ }
40
+
30
41
# # Install Control Center with Helm
31
42
installCC () {
32
43
[ -n " SKIPHELM" ] && H=` kubectl get pods 2>&1 ` && echo " $H " | egrep -q ' control-center-[0-9abcdef]+-..... ' && return 0
33
44
[ -n " $VERBOSE " ] && D=--debug || D=" "
34
45
[ -n " $CC_KEY " -a -n " $CC_CERT " ] && args=" --set app.tlsSecret=$CC_TLS_A --set keycloak.tlsSecret=$CC_TLS_K " || args=" "
35
- [ " $1 " = " next" ] && args=" $args charts/control-center --set app.image.tag=local --set keycloak.image.tag=local" || args=" $args oci://docker.io/vaadin/control-center"
46
+ [ -z " $TEST " ] && log " Installing Control Center with version: $1 "
47
+ case " $1 " in
48
+ * SNAPSHOT)
49
+ buildCC || return 1
50
+ args=" $args charts/control-center --set app.image.tag=local --set keycloak.image.tag=local"
51
+ ;;
52
+ current) args=" $args oci://docker.io/vaadin/control-center" ;;
53
+ " " ) err " Unable to compute CC version for platform version '$1 '" && return 1 ;;
54
+ * ) args=" $args oci://docker.io/vaadin/control-center --version $1 " ;;
55
+ esac
36
56
37
57
runToFile " helm install control-center $args \
38
58
-n $CC_NS --create-namespace \
@@ -174,10 +194,11 @@ setClusterContext() {
174
194
175
195
buildCC () {
176
196
computeMvn
177
- [ -z " $VERBOSE " ] && D=" -q -ntp" || D=" -Dorg.slf4j.simpleLogger.showDateTime -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss.SSS"
178
- runCmd " Compiling CC" " '$MVN ' $D -B -pl :control-center-app -Pproduction -DskipTests -am install" || return 1
179
- runCmd " Creating CC application docker image" " '$MVN ' $D -B -pl :control-center-app -Pproduction -Ddocker.tag=local docker:build" || return 1
180
- runCmd " Creating CC keycloack docker image" " '$MVN ' $D -B -pl :control-center-keycloak package -Ddocker.tag=local docker:build" || return 1
197
+ local D=" -q -ntp"
198
+ [ -z " $VERBOSE " ] && D=" -Dorg.slf4j.simpleLogger.showDateTime -Dorg.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss.SSS"
199
+ runToFile " '$MVN ' $D -B -pl :control-center-app -Pproduction -DskipTests -am install" " compile-cc-${1} .out" " $VERBOSE " || return 1
200
+ runToFile " '$MVN ' $D -B -pl :control-center-app -Pproduction -Ddocker.tag=local docker:build" " build-ccapp-docker-${1} .out" " $VERBOSE " || return 1
201
+ runToFile " '$MVN ' $D -B -pl :control-center-keycloak package -Ddocker.tag=local docker:build" " build-ccapp-docker-${1} .out" " $VERBOSE " || return 1
181
202
if [ " $CLUSTER " = " $KIND_CLUSTER " ]; then
182
203
runCmd -q " Load docker image control-center-app for Kind" kind load docker-image vaadin/control-center-app:local --name " $CLUSTER " || return 1
183
204
runCmd -q " Load docker image control-center-keycloak for Kind " kind load docker-image vaadin/control-center-keycloak:local --name " $CLUSTER " || return 1
@@ -203,9 +224,6 @@ runControlCenter() {
203
224
# # Clean up CC from a previous run unless SKIPHELM is set
204
225
[ -z " $SKIPHELM " ] && uninstallCC
205
226
206
- # # Build CC if version is snapshot
207
- [ " $1 " = current ] || buildCC || return 1
208
-
209
227
# # Install Control Center
210
228
installCC $1 || return 1
211
229
# # Control center takes a long time to start
@@ -243,9 +261,9 @@ validateControlCenter() {
243
261
if [ -z " $NOCURRENT " ]; then
244
262
runControlCenter current || return 1
245
263
fi
246
- # # Run
247
- if expr " $VERSION " : " .*SNAPSHOT " > /dev/null ; then
248
- runControlCenter next || return 1
264
+ # # Run control center for provided version
265
+ if [ -n " $VERSION " ] ; then
266
+ runControlCenter ` computeCCVersion $VERSION ` || return 1
249
267
fi
250
268
}
251
269
0 commit comments