22// Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
33//
44def kind_k8s_map = [
5- ' 0.19.0' : [
6- ' 1.27.1' : ' kindest/node:v1.27.1@sha256:b7d12ed662b873bd8510879c1846e87c7e676a79fefc93e17b2a52989d3ff42b' ,
7- ' 1.27' : ' kindest/node:v1.27.1@sha256:b7d12ed662b873bd8510879c1846e87c7e676a79fefc93e17b2a52989d3ff42b' ,
8- ' 1.26.4' : ' kindest/node:v1.26.4@sha256:f4c0d87be03d6bea69f5e5dc0adb678bb498a190ee5c38422bf751541cebe92e' ,
9- ' 1.26' : ' kindest/node:v1.26.4@sha256:f4c0d87be03d6bea69f5e5dc0adb678bb498a190ee5c38422bf751541cebe92e' ,
10- ' 1.25.9' : ' kindest/node:v1.25.9@sha256:c08d6c52820aa42e533b70bce0c2901183326d86dcdcbedecc9343681db45161' ,
11- ' 1.25' : ' kindest/node:v1.25.9@sha256:c08d6c52820aa42e533b70bce0c2901183326d86dcdcbedecc9343681db45161' ,
12- ' 1.24.13' : ' kindest/node:v1.24.13@sha256:cea86276e698af043af20143f4bf0509e730ec34ed3b7fa790cc0bea091bc5dd' ,
13- ' 1.24' : ' kindest/node:v1.24.13@sha256:cea86276e698af043af20143f4bf0509e730ec34ed3b7fa790cc0bea091bc5dd' ,
14- ' 1.23.17' : ' kindest/node:v1.23.17@sha256:f77f8cf0b30430ca4128cc7cfafece0c274a118cd0cdb251049664ace0dee4ff' ,
15- ' 1.23' : ' kindest/node:v1.23.17@sha256:f77f8cf0b30430ca4128cc7cfafece0c274a118cd0cdb251049664ace0dee4ff' ,
16- ' 1.22.17' : ' kindest/node:v1.22.17@sha256:9af784f45a584f6b28bce2af84c494d947a05bd709151466489008f80a9ce9d5' ,
17- ' 1.22' : ' kindest/node:v1.22.17@sha256:9af784f45a584f6b28bce2af84c494d947a05bd709151466489008f80a9ce9d5' ,
18- ' 1.21.14' : ' kindest/node:v1.21.14@sha256:220cfafdf6e3915fbce50e13d1655425558cb98872c53f802605aa2fb2d569cf' ,
19- ' 1.21' : ' kindest/node:v1.21.14@sha256:220cfafdf6e3915fbce50e13d1655425558cb98872c53f802605aa2fb2d569cf'
5+ ' 0.23.0' : [
6+ ' 1.30.0' : ' kindest/node:v1.30.0@sha256:047357ac0cfea04663786a612ba1eaba9702bef25227a794b52890dd8bcd692e' ,
7+ ' 1.30' : ' kindest/node:v1.30.0@sha256:047357ac0cfea04663786a612ba1eaba9702bef25227a794b52890dd8bcd692e' ,
8+ ' 1.29.4' : ' kindest/node:v1.29.4@sha256:3abb816a5b1061fb15c6e9e60856ec40d56b7b52bcea5f5f1350bc6e2320b6f8' ,
9+ ' 1.29' : ' kindest/node:v1.29.4@sha256:3abb816a5b1061fb15c6e9e60856ec40d56b7b52bcea5f5f1350bc6e2320b6f8' ,
10+ ' 1.28.9' : ' kindest/node:v1.28.9@sha256:dca54bc6a6079dd34699d53d7d4ffa2e853e46a20cd12d619a09207e35300bd0' ,
11+ ' 1.28' : ' kindest/node:v1.28.9@sha256:dca54bc6a6079dd34699d53d7d4ffa2e853e46a20cd12d619a09207e35300bd0' ,
12+ ' 1.27.13' : ' kindest/node:v1.27.13@sha256:17439fa5b32290e3ead39ead1250dca1d822d94a10d26f1981756cd51b24b9d8' ,
13+ ' 1.27' : ' kindest/node:v1.27.13@sha256:17439fa5b32290e3ead39ead1250dca1d822d94a10d26f1981756cd51b24b9d8' ,
14+ ' 1.26.15' : ' kindest/node:v1.26.15@sha256:84333e26cae1d70361bb7339efb568df1871419f2019c80f9a12b7e2d485fe19' ,
15+ ' 1.26' : ' kindest/node:v1.26.15@sha256:84333e26cae1d70361bb7339efb568df1871419f2019c80f9a12b7e2d485fe19' ,
16+ ' 1.25.16' : ' kindest/node:v1.25.16@sha256:5da57dfc290ac3599e775e63b8b6c49c0c85d3fec771cd7d55b45fae14b38d3b' ,
17+ ' 1.25' : ' kindest/node:v1.25.16@sha256:5da57dfc290ac3599e775e63b8b6c49c0c85d3fec771cd7d55b45fae14b38d3b'
2018 ]
2119]
2220def _kind_image = null
2321
2422pipeline {
25- agent { label ' large' }
23+ agent { label ' large-ol9u4 ' }
2624 options {
2725 timeout(time : 800 , unit : ' MINUTES' )
2826 }
@@ -67,30 +65,32 @@ pipeline {
6765 description : ' Comma separated list of individual It test classes to be run e.g., ItParameterizedDomain, ItMiiUpdateDomainConfig, ItMiiDynamicUpdate*, ItMiiMultiMode' ,
6866 defaultValue : ' '
6967 )
68+ string(name : ' OPERATOR_LOG_LEVEL' ,
69+ description : ' The default log level is not set' ,
70+ defaultValue : ' '
71+ )
7072 choice(name : ' KIND_VERSION' ,
7173 description : ' Kind version.' ,
7274 choices : [
73- ' 0.19 .0'
75+ ' 0.23 .0'
7476 ]
7577 )
7678 choice(name : ' KUBE_VERSION' ,
77- description : ' Kubernetes version. Supported values depend on the Kind version. Kind 0.18 .0: 1.26 , 1.26.3 , 1.25 , 1.25.8 , 1.24 , 1.24.12 , 1.23 , 1.23.17, 1.22, 1.22.17, 1.21, and 1.21.14. Kind 0.17.0: 1.25, 1.25.3, 1.24, 1.24.7, 1.23, 1.23. 13, 1.22 , 1.22 .15, 1.21, 1.21.14, 1.20, and 1.20.15. Kind 0.16.0: 1. 25, 1.25.2, 1.24, 1.24.6, 1.23, 1.23.12, 1.22, 1.22.15, 1.21, 1.21.14, 1.20, and 1.20.15. Kind 0.15.0: 1.25, 1.25.0, 1.24, 1.24.4, 1.23, 1.23.10, 1.22, 1.22.13, 1.21, 1.21.14, 1.20, and 1.20.15 ' ,
79+ description : ' Kubernetes version. Supported values depend on the Kind version. Kind 0.23 .0: 1.30 , 1.30.0 , 1.29 , 1.29.4 , 1.28 , 1.28.9 , 1.27 , 1.27. 13, 1.26 , 1.26 .15, 1.25, 1.25.16 ' ,
7880 choices : [
7981 // The first item in the list is the default value...
80- ' 1.27.1' ,
82+ ' 1.30.0' ,
83+ ' 1.30' ,
84+ ' 1.29.4' ,
85+ ' 1.29' ,
86+ ' 1.28.9' ,
87+ ' 1.28' ,
88+ ' 1.27.13' ,
8189 ' 1.27' ,
82- ' 1.26.4 ' ,
90+ ' 1.26.15 ' ,
8391 ' 1.26' ,
84- ' 1.25.9' ,
85- ' 1.25' ,
86- ' 1.24.13' ,
87- ' 1.24' ,
88- ' 1.23.17' ,
89- ' 1.23' ,
90- ' 1.22.17' ,
91- ' 1.22' ,
92- ' 1.21.14' ,
93- ' 1.21'
92+ ' 1.25.16' ,
93+ ' 1.25'
9494 ]
9595 )
9696 string(name : ' HELM_VERSION' ,
@@ -100,6 +100,7 @@ pipeline {
100100 choice(name : ' ISTIO_VERSION' ,
101101 description : ' Istio version' ,
102102 choices : [
103+ ' 1.23.0' ,
103104 ' 1.17.2' ,
104105 ' 1.16.1' ,
105106 ' 1.13.2' ,
@@ -108,7 +109,7 @@ pipeline {
108109 ' 1.10.4' ,
109110 ' 1.9.9'
110111 ]
111- )
112+ )
112113 booleanParam(name : ' PARALLEL_RUN' ,
113114 description : ' Runs tests in parallel. Default is true, test classes run in parallel.' ,
114115 defaultValue : true
@@ -167,11 +168,11 @@ pipeline {
167168 )
168169 string(name : ' MONITORING_EXPORTER_WEBAPP_VERSION' ,
169170 description : ' ' ,
170- defaultValue : ' 2.0.7 '
171+ defaultValue : ' 2.1.2 '
171172 )
172173 string(name : ' PROMETHEUS_CHART_VERSION' ,
173174 description : ' ' ,
174- defaultValue : ' 15.2 .0'
175+ defaultValue : ' 17.0 .0'
175176 )
176177 string(name : ' GRAFANA_CHART_VERSION' ,
177178 description : ' ' ,
@@ -211,7 +212,7 @@ pipeline {
211212 java -version
212213 mvn --version
213214 python --version
214- docker version
215+ podman version
215216 ulimit -a
216217 ulimit -aH
217218 '''
@@ -351,14 +352,22 @@ pipeline {
351352 steps {
352353 sh '''
353354 export PATH=${runtime_path}
355+ export KIND_EXPERIMENTAL_PROVIDER=podman
356+
357+ podman version
358+ cat /etc/systemd/system/user@.service.d/delegate.conf
359+ cat /etc/modules-load.d/iptables.conf
360+ lsmod|grep -E "^ip_tables|^iptable_filter|^iptable_nat|^ip6"
361+
354362 if kind delete cluster --name ${kind_name} --kubeconfig "${kubeconfig_file}"; then
355363 echo "Deleted orphaned kind cluster ${kind_name}"
356364 fi
365+ # settings needed by elastic logging tests
366+ echo "running sudo sysctl -w vm.max_map_count=262144"
367+ sudo sysctl -w vm.max_map_count=262144
357368 cat <<EOF | kind create cluster --name "${kind_name}" --kubeconfig "${kubeconfig_file}" --config=-
358369kind: Cluster
359370apiVersion: kind.x-k8s.io/v1alpha4
360- networking:
361- podSubnet: 192.168.0.0/16
362371containerdConfigPatches:
363372- |-
364373 [plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:${registry_port}"]
@@ -368,31 +377,106 @@ nodes:
368377 image: ${kind_image}
369378 - role: worker
370379 image: ${kind_image}
380+ extraPortMappings:
381+ - containerPort: 30511
382+ hostPort: 1511
383+ - containerPort: 32480
384+ hostPort: 2480
385+ - containerPort: 32490
386+ hostPort: 2490
387+ - containerPort: 30080
388+ hostPort: 2080
389+ - containerPort: 30443
390+ hostPort: 2043
391+ - containerPort: 30180
392+ hostPort: 2090
393+ - containerPort: 30143
394+ hostPort: 2053
395+ - containerPort: 31000
396+ hostPort: 2100
397+ - containerPort: 31004
398+ hostPort: 2104
399+ - containerPort: 31008
400+ hostPort: 2108
401+ - containerPort: 31012
402+ hostPort: 2112
403+ - containerPort: 31016
404+ hostPort: 2116
405+ - containerPort: 31020
406+ hostPort: 2120
407+ - containerPort: 31024
408+ hostPort: 2124
409+ - containerPort: 31028
410+ hostPort: 2128
411+ - containerPort: 31032
412+ hostPort: 2132
413+ - containerPort: 31036
414+ hostPort: 2136
415+ - containerPort: 31040
416+ hostPort: 2140
417+ - containerPort: 31044
418+ hostPort: 2144
419+ - containerPort: 31048
420+ hostPort: 2148
421+ - containerPort: 31052
422+ hostPort: 2152
423+ - containerPort: 31056
424+ hostPort: 2156
425+ - containerPort: 31060
426+ hostPort: 2160
427+ - containerPort: 31064
428+ hostPort: 2164
429+ - containerPort: 31068
430+ hostPort: 2168
431+ - containerPort: 31072
432+ hostPort: 2172
433+ - containerPort: 31076
434+ hostPort: 2176
435+ - containerPort: 31080
436+ hostPort: 2180
437+ - containerPort: 31084
438+ hostPort: 2184
439+ - containerPort: 31088
440+ hostPort: 2188
441+ - containerPort: 31092
442+ hostPort: 2192
443+ - containerPort: 31096
444+ hostPort: 2196
445+ - containerPort: 31100
446+ hostPort: 2200
447+ - containerPort: 31104
448+ hostPort: 2204
449+ - containerPort: 31108
450+ hostPort: 2208
451+ - containerPort: 31112
452+ hostPort: 2212
453+ - containerPort: 31116
454+ hostPort: 2216
455+ - containerPort: 31120
456+ hostPort: 2220
457+ - containerPort: 31124
458+ hostPort: 2224
459+ - containerPort: 31128
460+ hostPort: 2228
371461 extraMounts:
372462 - hostPath: ${pv_root}
373463 containerPath: ${pv_root}
464+ kubeadmConfigPatches:
465+ - |
466+ kind: KubeletConfiguration
467+ localStorageCapacityIsolation: true
374468EOF
375469
376470 export KUBECONFIG=${kubeconfig_file}
377471 kubectl cluster-info --context "kind-${kind_name}"
378472
473+ podman info
474+ kubectl describe node
475+
379476 for node in $(kind get nodes --name "${kind_name}"); do
380477 kubectl annotate node ${node} tilt.dev/registry=localhost:${registry_port};
381478 done
382479
383- if [ "${kind_network}" != "bridge" ]; then
384- containers=$(docker network inspect ${kind_network} -f "{{range .Containers}}{{.Name}} {{end}}")
385- needs_connect="true"
386- for c in ${containers}; do
387- if [ "$c" = "${registry_name}" ]; then
388- needs_connect="false"
389- fi
390- done
391- if [ "${needs_connect}" = "true" ]; then
392- docker network connect "${kind_network}" "${registry_name}" || true
393- fi
394- fi
395-
396480 # Document the local registry
397481 # https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/generic/1755-communicating-a-local-registry
398482 cat <<EOF | kubectl apply -f -
444528 MAVEN_PROFILE_NAME="integration-tests"
445529 echo "-Dit.test=\" ${IT_TEST}\" " >> ${WORKSPACE}/.mvn/maven.config
446530 fi
531+ echo "-Dmaven.wagon.http.retryHandler.count=3" >> ${WORKSPACE}/.mvn/maven.config
447532 echo "-Dwko.it.wle.download.url=\" ${wle_download_url}\" " >> ${WORKSPACE}/.mvn/maven.config
448533 echo "-Dwko.it.result.root=\" ${result_root}\" " >> ${WORKSPACE}/.mvn/maven.config
449534 echo "-Dwko.it.pv.root=\" ${pv_root}\" " >> ${WORKSPACE}/.mvn/maven.config
@@ -469,13 +554,14 @@ EOF
469554 echo "-Dwko.it.prometheus.chart.version=\" ${PROMETHEUS_CHART_VERSION}\" " >> ${WORKSPACE}/.mvn/maven.config
470555 echo "-Dwko.it.grafana.chart.version=\" ${GRAFANA_CHART_VERSION}\" " >> ${WORKSPACE}/.mvn/maven.config
471556 echo "-Dwko.it.collect.logs.on.success=\" ${COLLECT_LOGS_ON_SUCCESS}\" " >> ${WORKSPACE}/.mvn/maven.config
557+ echo "-DWLSIMG_BUILDER=\" podman\" " >> ${WORKSPACE}/.mvn/maven.config
472558 echo "-Dwko.it.remoteconsole.version=\" ${REMOTECONSOLE_VERSION}\" " >> ${WORKSPACE}/.mvn/maven.config
473- echo "-Djdk.httpclient.allowRestrictedHeaders=\" host\" " >> ${WORKSPACE}/.mvn/maven.config
474-
559+ echo "-Djdk.httpclient.allowRestrictedHeaders=\" host\" " >> ${WORKSPACE}/.mvn/maven.config
475560
476561 echo "${WORKSPACE}/.mvn/maven.config contents:"
477562 cat "${WORKSPACE}/.mvn/maven.config"
478563 cp "${WORKSPACE}/.mvn/maven.config" "${result_root}"
564+ kubectl describe node kind-worker
479565 '''
480566 withMaven(globalMavenSettingsConfig : ' wkt-maven-settings-xml' , publisherStrategy : ' EXPLICIT' ) {
481567 withCredentials([
563649 }
564650 }
565651}
652+
0 commit comments