Skip to content

Commit 0f9ee07

Browse files
1.23 minor version bump (kubevirt#722)
* Run bazel run //robots/cmd/kubevirtci-bumper:kubevirtci-bumper -- -ensure-latest --k8s-provider-dir /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirtci/cluster-provision/k8s --cluster-up-dir /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirtci/cluster-up/cluster Signed-off-by: kubevirt-bot <[email protected]> * Patches are now mentioned in the kubeadm.conf Signed-off-by: Daniel Hiller <[email protected]> Co-authored-by: kubevirt-bot <[email protected]>
1 parent 392d455 commit 0f9ee07

File tree

104 files changed

+68303
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

104 files changed

+68303
-0
lines changed

cluster-provision/k8s/1.23/base

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
centos8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#!/bin/bash
2+
3+
set -ex
4+
5+
if [ "$1" != "--vendor" ]; then
6+
echo "No vendor provided"
7+
exit 1
8+
fi
9+
vendor=$2
10+
11+
function get_device_driver() {
12+
local dev_driver=$(readlink $driver_path)
13+
echo "${dev_driver##*/}"
14+
}
15+
16+
# find the PCI address of the device by vendor_id:product_id
17+
pci_address=(`lspci -D -d ${vendor}`)
18+
pci_address="${pci_address[0]}"
19+
dev_sysfs_path="/sys/bus/pci/devices/$pci_address"
20+
21+
if [[ ! -d $dev_sysfs_path ]]; then
22+
echo "Error: PCI address ${pci_address} does not exist!" 1>&2
23+
exit 1
24+
fi
25+
26+
if [[ ! -d "$dev_sysfs_path/iommu/" ]]; then
27+
echo "Error: No vIOMMU found in the VM" 1>&2
28+
exit 1
29+
fi
30+
31+
# set device driver path
32+
driver_path="${dev_sysfs_path}/driver"
33+
driver_override="${dev_sysfs_path}/driver_override"
34+
35+
# load the vfio-pci module
36+
modprobe -i vfio-pci
37+
38+
39+
driver=$(get_device_driver)
40+
41+
if [[ "$driver" != "vfio-pci" ]]; then
42+
43+
# unbind from the original device driver
44+
echo ${pci_address} > "${driver_path}/unbind"
45+
# bind the device to vfio-pci driver
46+
echo "vfio-pci" > ${driver_override}
47+
echo $pci_address > /sys/bus/pci/drivers/vfio-pci/bind
48+
fi
49+
50+
# The device should now be using the vfio-pci driver
51+
new_driver=$(get_device_driver)
52+
if [[ $new_driver != "vfio-pci" ]]; then
53+
echo "Error: Failed to bind to vfio-pci driver" 1>&2
54+
exit 1
55+
fi
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
{
2+
"Description": "DEFAULT",
3+
"UUID": "424db535-cd5d-4968-9667-0b11c6fd380c",
4+
"Version": "v0.50.0",
5+
"ResultsDir": "/tmp/sonobuoy",
6+
"Resources": [
7+
"apiservices",
8+
"certificatesigningrequests",
9+
"clusterrolebindings",
10+
"clusterroles",
11+
"componentstatuses",
12+
"configmaps",
13+
"controllerrevisions",
14+
"cronjobs",
15+
"customresourcedefinitions",
16+
"daemonsets",
17+
"deployments",
18+
"endpoints",
19+
"ingresses",
20+
"jobs",
21+
"leases",
22+
"limitranges",
23+
"mutatingwebhookconfigurations",
24+
"namespaces",
25+
"networkpolicies",
26+
"nodes",
27+
"persistentvolumeclaims",
28+
"persistentvolumes",
29+
"poddisruptionbudgets",
30+
"pods",
31+
"podlogs",
32+
"podsecuritypolicies",
33+
"podtemplates",
34+
"priorityclasses",
35+
"replicasets",
36+
"replicationcontrollers",
37+
"resourcequotas",
38+
"rolebindings",
39+
"roles",
40+
"servergroups",
41+
"serverversion",
42+
"serviceaccounts",
43+
"services",
44+
"statefulsets",
45+
"storageclasses",
46+
"validatingwebhookconfigurations",
47+
"volumeattachments"
48+
],
49+
"Filters": {
50+
"Namespaces": ".*",
51+
"LabelSelector": ""
52+
},
53+
"Limits": {
54+
"PodLogs": {
55+
"Namespaces": "",
56+
"SonobuoyNamespace": true,
57+
"FieldSelectors": [],
58+
"LabelSelector": "",
59+
"Previous": false,
60+
"SinceSeconds": null,
61+
"SinceTime": null,
62+
"Timestamps": false,
63+
"TailLines": null,
64+
"LimitBytes": null,
65+
"LimitSize": "",
66+
"LimitTime": ""
67+
}
68+
},
69+
"QPS": 30,
70+
"Burst": 50,
71+
"Server": {
72+
"bindaddress": "0.0.0.0",
73+
"bindport": 8080,
74+
"advertiseaddress": "",
75+
"timeoutseconds": 10800
76+
},
77+
"Plugins": null,
78+
"PluginSearchPath": [
79+
"./plugins.d",
80+
"/etc/sonobuoy/plugins.d",
81+
"~/sonobuoy/plugins.d"
82+
],
83+
"Namespace": "sonobuoy",
84+
"WorkerImage": "sonobuoy/sonobuoy:v0.50.0",
85+
"ImagePullPolicy": "IfNotPresent",
86+
"ImagePullSecrets": "",
87+
"ProgressUpdatesPort": "8099"
88+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
fluent/fluentd:v1.2-debian
2+
docker.io/grafana/grafana:7.5.4
3+
docker.io/istio/install-cni:1.10.0
4+
docker.io/istio/operator:1.10.0
5+
docker.io/istio/pilot:1.10.0
6+
docker.io/istio/proxyv2:1.10.0
7+
quay.io/prometheus-operator/prometheus-config-reloader:v0.47.0
8+
quay.io/calico/cni:v3.18.0
9+
quay.io/calico/kube-controllers:v3.18.0
10+
quay.io/calico/node:v3.18.0
11+
quay.io/calico/pod2daemon-flexvol:v3.18.0
+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
#!/bin/bash
2+
3+
set -euo pipefail
4+
5+
function usage() {
6+
cat <<EOF
7+
Usage: $0 <k8s-cluster-dir> [source-image-list]
8+
9+
Fetches all images from the cluster provision source and manifests. Returns a list that is sorted and
10+
without double entries.
11+
12+
If source-image-list is provided this is taken as an input and added to the result.
13+
14+
EOF
15+
}
16+
17+
function check_args() {
18+
if [ "$#" -lt 1 ]; then
19+
usage
20+
exit 1
21+
fi
22+
if [ ! -d "$1" ]; then
23+
usage
24+
echo "Directory $1 does not exist"
25+
exit 1
26+
fi
27+
}
28+
29+
function main() {
30+
check_args "$@"
31+
32+
temp_file=$(mktemp)
33+
trap 'rm -f "${temp_file}"' EXIT SIGINT SIGTERM
34+
35+
provision_dir="$1"
36+
image_regex='([a-z0-9\_\.]+[/-]?)+(@sha256)?:[a-z0-9\_\.\-]+'
37+
image_regex_w_double_quotes='"?'"${image_regex}"'"?'
38+
39+
(
40+
# Avoid bailing out because of nothing found in scripts part
41+
set +e
42+
find "$provision_dir" -type f -name '*.sh' -print0 |
43+
xargs -0 grep -iE '(docker|podman)[ _]pull[^ ]+ '"${image_regex_w_double_quotes}"
44+
find "$provision_dir" -type f -name '*.yaml' -print0 |
45+
xargs -0 grep -iE '(image|value): '"${image_regex_w_double_quotes}"
46+
set -e
47+
# last `grep -v` is necessary to avoid trying to pre pull istio "images", as the regex also matches on values
48+
# from the generated istio deployment manifest
49+
) | grep -ioE "${image_regex_w_double_quotes}"'$' | grep -v '.svc:' >>"${temp_file}"
50+
51+
sed -E 's/"//g' "${temp_file}" | sort | uniq
52+
}
53+
54+
main "$@"

cluster-provision/k8s/1.23/istio.sh

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#!/bin/bash
2+
set -xe
3+
4+
source /var/lib/kubevirtci/shared_vars.sh
5+
6+
export PATH=$ISTIO_BIN_DIR:$PATH
7+
8+
kubectl --kubeconfig /etc/kubernetes/admin.conf create ns istio-system
9+
istioctl --kubeconfig /etc/kubernetes/admin.conf operator init
10+
11+
istio_manifests_dir=/opt/istio
12+
mkdir -p /opt/istio
13+
cat <<EOF >$istio_manifests_dir/istio-operator.tpl.yaml
14+
apiVersion: install.istio.io/v1alpha1
15+
kind: IstioOperator
16+
metadata:
17+
namespace: istio-system
18+
name: istio-operator
19+
spec:
20+
profile: demo
21+
components:
22+
cni:
23+
enabled: true
24+
namespace: kube-system
25+
values:
26+
global:
27+
jwtPolicy: first-party-jwt
28+
cni:
29+
chained: \$ISTIO_CNI_CHAINED
30+
cniBinDir: /opt/cni/bin
31+
cniConfDir: \$ISTIO_CNI_CONF_DIR
32+
excludeNamespaces:
33+
- istio-system
34+
- kube-system
35+
logLevel: debug
36+
EOF
37+
38+
# generate istio-operator for usage with cnao enabled
39+
ISTIO_CNI_CHAINED=false ISTIO_CNI_CONF_DIR=/etc/cni/multus/net.d envsubst < $istio_manifests_dir/istio-operator.tpl.yaml > $istio_manifests_dir/istio-operator-with-cnao.cr.yaml
40+
cat <<EOF >>$istio_manifests_dir/istio-operator-with-cnao.yaml
41+
cniConfFileName: "istio-cni.conf"
42+
sidecarInjectorWebhook:
43+
injectedAnnotations:
44+
"k8s.v1.cni.cncf.io/networks": istio-cni
45+
EOF
46+
47+
# generate istio-operator cr for usage without cnao
48+
ISTIO_CNI_CHAINED=true ISTIO_CNI_CONF_DIR=/etc/cni/net.d envsubst < $istio_manifests_dir/istio-operator.tpl.yaml > $istio_manifests_dir/istio-operator.cr.yaml

cluster-provision/k8s/1.23/logging.sh

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash
2+
3+
set -xe
4+
5+
kubectl --kubeconfig /etc/kubernetes/admin.conf create namespace logging
6+
kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f /tmp/logging.yaml
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: cdi.kubevirt.io/v1beta1
2+
kind: CDI
3+
metadata:
4+
name: cdi
5+
spec:
6+
imagePullPolicy: IfNotPresent
7+
infra:
8+
nodeSelector:
9+
kubernetes.io/os: linux
10+
tolerations:
11+
- key: CriticalAddonsOnly
12+
operator: Exists
13+
workload:
14+
nodeSelector:
15+
kubernetes.io/os: linux

0 commit comments

Comments
 (0)