From ffae97fa0cf2f0f709d5c11838c4ea0fdd07fd01 Mon Sep 17 00:00:00 2001 From: Daniel Hiller Date: Wed, 18 Sep 2024 17:01:51 +0200 Subject: [PATCH] kubevirtci: move into it's own folder to allow OWNERS We use [kubevirtci] for spinning up virtualized k8s clusters for testing (locally and on CI). Therefore we source the cluster-up folder into kubevirts' project folder root. Also we have the cluster-up-sha.txt which is used to verify which version we use currently, so that we can determine whether an update is necessary. Related to how OWNERS files work, and since both of those items are located in the root folder, we currently need a root approver for approving pull requests that bump kubevirtci. Thus, to be able for sig-buildsystem to own kubevirtci we move it to it's own folder `kubevirtci`. In that folder we place an OWNERS file with which we as sig-buildsystem claim ownership of kubevirtci. [kubevirtci]: https://github.com/kubevirt/kubevirtci Signed-off-by: Daniel Hiller --- Makefile | 4 +-- automation/perfscale-test.sh | 2 +- automation/repeated_test.sh | 4 +-- automation/test.sh | 6 ++-- cluster-up-sha.txt | 1 - docs/README.md | 10 +++---- docs/debugging.md | 12 ++++---- docs/env-providers.md | 2 +- docs/getting-started.md | 28 +++++++++---------- docs/network/sriov.md | 12 ++++---- docs/software-emulation.md | 2 +- hack/bazel-generate.sh | 2 +- hack/bootstrap.sh | 2 +- hack/build-verify.sh | 6 ++-- hack/ci/entrypoint.sh | 2 +- hack/cluster-build.sh | 2 +- hack/cluster-clean.sh | 2 +- hack/cluster-deploy.sh | 4 +-- hack/cluster-patch.sh | 2 +- hack/cluster-sync.sh | 3 ++ hack/cluster-up.sh | 6 +++- hack/common.sh | 4 +-- hack/config-kubevirtci.sh | 22 +++++++++++++++ hack/config.sh | 2 +- hack/conformance.sh | 2 +- hack/deploy-to-nodes.sh | 2 +- hack/dockerized | 12 ++++---- hack/sync-kubevirtci.sh | 15 ++++++---- hack/whatchanged.sh | 4 +-- kubevirtci/OWNERS | 6 ++++ kubevirtci/cluster-up-sha.txt | 1 + .../cluster-up}/.gitignore | 0 .../cluster-up}/README.md | 0 .../cluster-up}/check.sh | 0 {cluster-up => kubevirtci/cluster-up}/cli.sh | 0 .../cluster-up}/cluster/K8S.md | 0 .../cluster-up}/cluster/K8S_AUTOMATION.md | 0 .../cluster-up}/cluster/K8S_DEV_GUIDE.md | 0 .../cluster-up}/cluster/README_VGPU.md | 0 .../cluster/ephemeral-provider-common.sh | 0 .../cluster-up}/cluster/external/README.md | 0 .../cluster-up}/cluster/external/provider.sh | 0 .../cluster-up}/cluster/k8s-1.29/provider.sh | 0 .../cluster-up}/cluster/k8s-1.30/provider.sh | 0 .../cluster-up}/cluster/k8s-1.31/provider.sh | 0 .../cluster/k8s-provider-common.sh | 0 .../kind-1.27-vgpu/config_vgpu_cluster.sh | 0 .../cluster/kind-1.27-vgpu/conformance.json | 0 .../cluster-up}/cluster/kind-1.27-vgpu/image | 0 .../cluster/kind-1.27-vgpu/provider.sh | 0 .../cluster/kind-1.27-vgpu/version | 0 .../cluster/kind-1.27-vgpu/vgpu-node/node.sh | 0 .../cluster-up}/cluster/kind-1.28/README.md | 0 .../cluster-up}/cluster/kind-1.28/image | 0 .../cluster-up}/cluster/kind-1.28/provider.sh | 0 .../cluster-up}/cluster/kind-1.28/version | 0 .../kind-1.30-vgpu/config_vgpu_cluster.sh | 0 .../cluster/kind-1.30-vgpu/conformance.json | 0 .../cluster-up}/cluster/kind-1.30-vgpu/image | 0 .../cluster/kind-1.30-vgpu/provider.sh | 0 .../cluster/kind-1.30-vgpu/version | 0 .../cluster/kind-1.30-vgpu/vgpu-node/node.sh | 0 .../cluster-up}/cluster/kind-ovn/README.md | 0 .../cluster/kind-ovn/install-ovn.sh | 0 .../cluster-up}/cluster/kind-ovn/provider.sh | 0 .../cluster-up}/cluster/kind-sriov/README.md | 0 .../cluster/kind-sriov/TROUBLESHOOTING.md | 0 .../kind-sriov/config_sriov_cluster.sh | 0 .../cluster/kind-sriov/conformance.json | 0 .../cluster-up}/cluster/kind-sriov/image | 0 .../cluster/kind-sriov/provider.sh | 0 .../manifests/kustomization.yaml | 0 .../manifests/multus/kustomization.yaml | 0 .../manifests/multus/multus.yaml | 0 .../manifests/multus/patch-args.yaml | 0 .../manifests/patch-node-selector.yaml.in | 0 .../patch-sriovdp-resource-prefix.yaml.in | 0 .../manifests/sriov-cni-daemonset.yaml | 0 .../sriov-components/manifests/sriov-ns.yaml | 0 .../manifests/sriovdp-config.yaml.in | 0 .../manifests/sriovdp-daemonset.yaml | 0 .../sriov-components/sriov_components.sh | 0 .../kind-sriov/sriov-node/configure_vfs.sh | 0 .../cluster/kind-sriov/sriov-node/node.sh | 0 .../cluster/kind-sriov/sriovdp_setup.sh | 0 .../cluster-up}/cluster/kind-sriov/version | 0 .../cluster-up}/cluster/kind/README.md | 0 .../cluster-up}/cluster/kind/bump-kind.sh | 0 .../cluster/kind/check-cluster-up.sh | 0 .../cluster-up}/cluster/kind/common.sh | 0 .../cluster/kind/configure-registry-proxy.sh | 0 .../cluster/kind/manifests/kind.yaml | 0 .../cluster/kind/manifests/local-volume.yaml | 0 {cluster-up => kubevirtci/cluster-up}/down.sh | 0 .../cluster-up}/hack/common.key | 0 .../cluster-up}/hack/common.sh | 0 .../cluster-up}/hack/config-default.sh | 0 .../cluster-up}/hack/config.sh | 0 .../cluster-up}/kubeconfig.sh | 0 .../cluster-up}/kubectl.sh | 0 {cluster-up => kubevirtci/cluster-up}/ssh.sh | 0 {cluster-up => kubevirtci/cluster-up}/up.sh | 0 .../cluster-up}/version.txt | 0 .../cluster-up}/virtctl.sh | 0 104 files changed, 111 insertions(+), 73 deletions(-) delete mode 100644 cluster-up-sha.txt create mode 100644 hack/config-kubevirtci.sh create mode 100644 kubevirtci/OWNERS create mode 100644 kubevirtci/cluster-up-sha.txt rename {cluster-up => kubevirtci/cluster-up}/.gitignore (100%) rename {cluster-up => kubevirtci/cluster-up}/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/check.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cli.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/K8S.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/K8S_AUTOMATION.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/K8S_DEV_GUIDE.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/README_VGPU.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/ephemeral-provider-common.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/external/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/external/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/k8s-1.29/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/k8s-1.30/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/k8s-1.31/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/k8s-provider-common.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/config_vgpu_cluster.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/conformance.json (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/image (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/version (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.27-vgpu/vgpu-node/node.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.28/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.28/image (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.28/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.28/version (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/config_vgpu_cluster.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/conformance.json (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/image (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/version (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-1.30-vgpu/vgpu-node/node.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-ovn/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-ovn/install-ovn.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-ovn/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/TROUBLESHOOTING.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/config_sriov_cluster.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/conformance.json (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/image (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/provider.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/kustomization.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/multus/kustomization.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/multus/multus.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/multus/patch-args.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/patch-node-selector.yaml.in (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/patch-sriovdp-resource-prefix.yaml.in (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/sriov-cni-daemonset.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/sriov-ns.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/sriovdp-config.yaml.in (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/manifests/sriovdp-daemonset.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-components/sriov_components.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-node/configure_vfs.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriov-node/node.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/sriovdp_setup.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind-sriov/version (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/README.md (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/bump-kind.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/check-cluster-up.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/common.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/configure-registry-proxy.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/manifests/kind.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/cluster/kind/manifests/local-volume.yaml (100%) rename {cluster-up => kubevirtci/cluster-up}/down.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/hack/common.key (100%) rename {cluster-up => kubevirtci/cluster-up}/hack/common.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/hack/config-default.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/hack/config.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/kubeconfig.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/kubectl.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/ssh.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/up.sh (100%) rename {cluster-up => kubevirtci/cluster-up}/version.txt (100%) rename {cluster-up => kubevirtci/cluster-up}/virtctl.sh (100%) diff --git a/Makefile b/Makefile index 06530a6ffc25..b11e8ea6ba4f 100644 --- a/Makefile +++ b/Makefile @@ -160,7 +160,7 @@ cluster-up: ./hack/cluster-up.sh cluster-down: - ./cluster-up/down.sh + ./kubevirtci/cluster-up/down.sh cluster-build: ./hack/cluster-build.sh @@ -252,7 +252,7 @@ gofumpt: update-generated-api-testdata: ./hack/update-generated-api-testdata.sh - + .PHONY: \ build-verify \ conformance \ diff --git a/automation/perfscale-test.sh b/automation/perfscale-test.sh index a5f732d56dad..f065cf2517e7 100755 --- a/automation/perfscale-test.sh +++ b/automation/perfscale-test.sh @@ -19,7 +19,7 @@ set -ex -kubectl() { KUBEVIRTCI_VERBOSE=false cluster-up/kubectl.sh "$@"; } +kubectl() { KUBEVIRTCI_VERBOSE=false kubevirtci/cluster-up/kubectl.sh "$@"; } _prometheus_port_forward_pid="" trap "clean_up" EXIT SIGINT SIGTERM SIGQUIT diff --git a/automation/repeated_test.sh b/automation/repeated_test.sh index 5f3156099eb5..c8b5d42961e9 100755 --- a/automation/repeated_test.sh +++ b/automation/repeated_test.sh @@ -127,7 +127,7 @@ if (( $# > 0 )); then else # We only want to use stable providers for flake testing, thus we fetch the k8s version file from kubevirtci. # we stop at the first provider that is stable (aka doesn't have an rc or beta or alpha version) - for k8s_provider in $(cd cluster-up/cluster && ls -rd k8s-[0-9]\.[0-9][0-9]); do + for k8s_provider in $(cd kubevirtci/cluster-up/cluster && ls -rd k8s-[0-9]\.[0-9][0-9]); do # shellcheck disable=SC2154 k8s_provider_version=$(curl --fail "https://raw.githubusercontent.com/kubevirt/kubevirtci/${kubevirtci_git_hash}/cluster-provision/k8s/${k8s_provider#"k8s-"}/version") if [[ "${k8s_provider_version}" =~ -(rc|alpha|beta) ]]; then @@ -143,7 +143,7 @@ else fi fi echo "Test lane: ${TEST_LANE}" -[ -d "cluster-up/cluster/${TEST_LANE}" ] || ( echo "provider ${TEST_LANE} does not exist!"; exit 1 ) +[ -d "kubevirtci/cluster-up/cluster/${TEST_LANE}" ] || ( echo "provider ${TEST_LANE} does not exist!"; exit 1 ) if [[ -z ${TARGET_COMMIT-} ]]; then # if there's no commit provided default to the latest merge commit diff --git a/automation/test.sh b/automation/test.sh index ec76f1a74c1b..5738c0ade86e 100755 --- a/automation/test.sh +++ b/automation/test.sh @@ -108,7 +108,7 @@ if [[ $KUBEVIRT_NUM_NODES = "1" && $KUBEVIRT_INFRA_REPLICAS = "1" ]]; then export KUBEVIRT_DEPLOY_NFS_CSI=true fi -if [ ! -d "cluster-up/cluster/$KUBEVIRT_PROVIDER" ]; then +if [ ! -d "kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER" ]; then echo "The cluster provider $KUBEVIRT_PROVIDER does not exist" exit 1 fi @@ -214,8 +214,8 @@ elif [[ $TARGET =~ windows.* ]]; then safe_download "$WINDOWS_LOCK_PATH" "$win_image_url" "$win_image" || exit 1 fi -kubectl() { KUBEVIRTCI_VERBOSE=false cluster-up/kubectl.sh "$@"; } -cli() { cluster-up/cli.sh "$@"; } +kubectl() { KUBEVIRTCI_VERBOSE=false kubevirtci/cluster-up/kubectl.sh "$@"; } +cli() { kubevirtci/cluster-up/cli.sh "$@"; } determine_cri_bin() { if [ "${KUBEVIRTCI_RUNTIME}" = "podman" ]; then diff --git a/cluster-up-sha.txt b/cluster-up-sha.txt deleted file mode 100644 index 99459ce9d27d..000000000000 --- a/cluster-up-sha.txt +++ /dev/null @@ -1 +0,0 @@ -707ce79a4d732ae3a44c6c3d95cc13d6c33a40aa diff --git a/docs/README.md b/docs/README.md index 34c2f3bbb0c5..7c0b292b64cd 100644 --- a/docs/README.md +++ b/docs/README.md @@ -43,14 +43,14 @@ the VMI's pod and receives lifecycle commands from virt-handler. ### Scripts - * `cluster-up/kubectl.sh`: This is a wrapper around Kubernetes' kubectl command so + * `kubevirtci/cluster-up/kubectl.sh`: This is a wrapper around Kubernetes' kubectl command so that it can be run directly from this checkout without logging into a node. - * `cluster-up/virtctl.sh` is a wrapper around `virtctl`. `virtctl` brings all + * `kubevirtci/cluster-up/virtctl.sh` is a wrapper around `virtctl`. `virtctl` brings all virtual machine specific commands with it. It is supplement to `kubectl`. - e.g. `cluster-up/virtctl.sh console testvm`. - * `cluster-up/cli.sh` helps you create ephemeral kubernetes and openshift + e.g. `kubevirtci/cluster-up/virtctl.sh console testvm`. + * `kubevirtci/cluster-up/cli.sh` helps you create ephemeral kubernetes and openshift clusters for testing. This is helpful when direct management or access to - cluster nodes is necessary. e.g. `cluster-up/cli.sh ssh node01`. + cluster nodes is necessary. e.g. `kubevirtci/cluster-up/cli.sh ssh node01`. ### Makefile Commands diff --git a/docs/debugging.md b/docs/debugging.md index b2315105a483..a6b00f93d7c8 100644 --- a/docs/debugging.md +++ b/docs/debugging.md @@ -1,7 +1,7 @@ # Debugging ```bash -cluster-up/kubectl.sh version +kubevirtci/cluster-up/kubectl.sh version ``` will try to connect to the apiserver. @@ -9,10 +9,10 @@ will try to connect to the apiserver. ## Retrieving Logs To investigate the logs of a pod, you can view the logs via -`cluster-up/kubectl.sh logs`. To view the logs of `virt-api`, type +`kubevirtci/cluster-up/kubectl.sh logs`. To view the logs of `virt-api`, type ```bash -cluster-up/kubectl.sh logs virt-api -f +kubevirtci/cluster-up/kubectl.sh logs virt-api -f ``` Sometimes a container in a pod is crashlooping because of an application error @@ -22,7 +22,7 @@ attempt, the `--previous` flag can be used. To view the logs of the container `virt-api` in the pod `virt-api` from the previous run, type ```bash -cluster-up/kubectl.sh logs virt-api -f -c virt-api -p +kubevirtci/cluster-up/kubectl.sh logs virt-api -f -c virt-api -p ``` Note that you always have to select a container inside a pod for fetching old @@ -33,7 +33,7 @@ logs with the `--previous` flag. Both, Kubernetes and KubeVirt are creating events, which can be viewed via ```bash -cluster-up/kubectl.sh get events --all-namespaces --watch +kubevirtci/cluster-up/kubectl.sh get events --all-namespaces --watch ``` This way it is pretty easy to detect if a Pod or a VMI got started. @@ -45,7 +45,7 @@ to see what is going wrong. In this case the kubectl `exec` command can be used. To enter `virt-api` with an interactive shell, type ```bash -cluster-up/kubectl.sh exec virt-api -c virt-api -i -t -- sh +kubevirtci/cluster-up/kubectl.sh exec virt-api -c virt-api -i -t -- sh ``` ## Kubelet Logs diff --git a/docs/env-providers.md b/docs/env-providers.md index 67cc015be9f5..0c9c19b6655e 100644 --- a/docs/env-providers.md +++ b/docs/env-providers.md @@ -8,7 +8,7 @@ All following providers allow a common workflow: * `make cluster-deploy` to (re)deploy the code (no provider support needed) * `make cluster-sync` to build and (re)deploy the code * `make functests` to run the functional tests against KubeVirt - * `cluster-up/kubectl.sh` to talk to the k8s installation + * `kubevirtci/cluster-up/kubectl.sh` to talk to the k8s installation It is recommended to export the `KUBEVIRT_PROVIDER` variable as part of your `.bashrc` file. diff --git a/docs/getting-started.md b/docs/getting-started.md index 9056d0e66248..a5d7eb14b358 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -155,7 +155,7 @@ If not, try to adjust them to be the same. See [issue 2667](https://github.com/kubevirt/kubevirt/issues/2667) for more detailed info. ``` -# ./cluster-up/kubectl.sh get pods --all-namespaces +# ./kubevirtci/cluster-up/kubectl.sh get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE cdi cdi-operator-5db567b486-grtk9 0/1 ImagePullBackOff 0 42m @@ -200,14 +200,14 @@ Based on the used cluster, node names might be different. You can get the names from following command: ```bash -# cluster-up/kubectl.sh get nodes +# kubevirtci/cluster-up/kubectl.sh get nodes NAME STATUS ROLES AGE VERSION node01 Ready control-plane,worker 13s v1.18.3 ``` Then you can execute the following command to access the node: ``` -# ./cluster-up/ssh.sh node01 +# ./kubevirtci/cluster-up/ssh.sh node01 [vagrant@node01 ~]$ ``` @@ -277,20 +277,20 @@ Finally start a VMI called `vmi-ephemeral`: # This can be done from your GIT repo, no need to log into a VMI # Create a VMI - ./cluster-up/kubectl.sh create -f examples/vmi-ephemeral.yaml + ./kubevirtci/cluster-up/kubectl.sh create -f examples/vmi-ephemeral.yaml # Sure? Let's list all created VMIs - ./cluster-up/kubectl.sh get vmis + ./kubevirtci/cluster-up/kubectl.sh get vmis # Enough, let's get rid of it - ./cluster-up/kubectl.sh delete -f examples/vmi-ephemeral.yaml + ./kubevirtci/cluster-up/kubectl.sh delete -f examples/vmi-ephemeral.yaml # You can actually use kubelet.sh to introspect the cluster in general - ./cluster-up/kubectl.sh get pods + ./kubevirtci/cluster-up/kubectl.sh get pods # To check the running kubevirt services you need to introspect the `kubevirt` namespace: - ./cluster-up/kubectl.sh -n kubevirt get pods + ./kubevirtci/cluster-up/kubectl.sh -n kubevirt get pods ``` This will start a VMI on control-plane or one of the running nodes with a macvtap and a @@ -299,18 +299,18 @@ tap networking device attached. #### Example ```bash -$ ./cluster-up/kubectl.sh create -f examples/vmi-ephemeral.yaml +$ ./kubevirtci/cluster-up/kubectl.sh create -f examples/vmi-ephemeral.yaml vm "vmi-ephemeral" created -$ ./cluster-up/kubectl.sh get pods +$ ./kubevirtci/cluster-up/kubectl.sh get pods NAME READY STATUS RESTARTS AGE virt-launcher-vmi-ephemeral9q7es 1/1 Running 0 10s -$ ./cluster-up/kubectl.sh get vmis +$ ./kubevirtci/cluster-up/kubectl.sh get vmis NAME AGE PHASE IP NODENAME vmi-ephemeral 11s Running 10.244.140.77 node02 -$ ./cluster-up/kubectl.sh get vmis -o json +$ ./kubevirtci/cluster-up/kubectl.sh get vmis -o json { "kind": "List", "apiVersion": "v1", @@ -348,12 +348,12 @@ to add virt-viewer installation folder to their `PATH`. Then, after you made sure that the VMI `vmi-ephemeral` is running, type: ``` -cluster-up/virtctl.sh vnc vmi-ephemeral +kubevirtci/cluster-up/virtctl.sh vnc vmi-ephemeral ``` This will start a remote session with `remote-viewer`. -`cluster-up/virtctl.sh` is a wrapper around `virtctl`. `virtctl` brings all +`kubevirtci/cluster-up/virtctl.sh` is a wrapper around `virtctl`. `virtctl` brings all virtual machine specific commands with it and is a supplement to `kubectl`. **Note:** If accessing your cluster through ssh, be sure to forward your X11 session in order to launch `virtctl vnc`. diff --git a/docs/network/sriov.md b/docs/network/sriov.md index d397371fb164..665148de998d 100644 --- a/docs/network/sriov.md +++ b/docs/network/sriov.md @@ -144,7 +144,7 @@ deploy from KubeVirt sources though. In the following example, we configure the cluster using `local` provider which is part of kubevirt/kubevirt repo. Please consult -[documentation](https://github.com/kubevirt/kubevirt/blob/main/cluster-up/cluster/local/README.md) +[documentation](https://github.com/kubevirt/kubevirt/blob/main/kubevirtci/cluster-up/cluster/local/README.md) for general information on setting up a host using the `local` provider. The `local` provider does not install default CNI plugins like `loopback`. So @@ -216,8 +216,8 @@ $ go get -u -d github.com/intel/multus-cni $ cd $GOPATH/src/github.com/intel/multus-cni/ $ mkdir -p /etc/cni/net.d $ cp images/70-multus.conf /etc/cni/net.d/ -$ ./cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/multus-cni/images/multus-daemonset.yml -$ ./cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/multus-cni/images/flannel-daemonset.yml +$ ./kubevirtci/cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/multus-cni/images/multus-daemonset.yml +$ ./kubevirtci/cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/multus-cni/images/flannel-daemonset.yml ``` Now, deploy SR-IOV device plugin. Adjust config.json file for your particular @@ -239,20 +239,20 @@ $ cat < /etc/pcidp/config.json ] } EOF -$ ./cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-network-device-plugin/images/sriovdp-daemonset.yaml +$ ./kubevirtci/cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-network-device-plugin/images/sriovdp-daemonset.yaml ``` Deploy SR-IOV CNI plugin. ``` $ go get -u -d github.com/intel/sriov-cni/ -$ ./cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-cni/images/sriov-cni-daemonset.yaml +$ ./kubevirtci/cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-cni/images/sriov-cni-daemonset.yaml ``` Finally, create a new SR-IOV network CRD that will use SR-IOV device plugin to allocate devices. ``` -./cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-network-device-plugin/deployments/sriov-crd.yaml +./kubevirtci/cluster-up/kubectl.sh create -f $GOPATH/src/github.com/intel/sriov-network-device-plugin/deployments/sriov-crd.yaml ``` Just make sure that the network spec refers to the right resource name for diff --git a/docs/software-emulation.md b/docs/software-emulation.md index 25b9fa4ab250..3056eed00d32 100644 --- a/docs/software-emulation.md +++ b/docs/software-emulation.md @@ -29,7 +29,7 @@ Enabling software emulation is a cluster-wide setting, and is activated by editing the `KubeVirt` CR as follows: ```bash -cluster-up/kubectl.sh --namespace kubevirt edit kubevirt kubevirt +kubevirtci/cluster-up/kubectl.sh --namespace kubevirt edit kubevirt kubevirt ``` Add the following snippet to the spec: diff --git a/hack/bazel-generate.sh b/hack/bazel-generate.sh index 6b833c927af0..a1976b9bee23 100755 --- a/hack/bazel-generate.sh +++ b/hack/bazel-generate.sh @@ -10,7 +10,7 @@ rm -f vendor/libvirt.org/go/libvirt/BUILD.bazel # generate BUILD files bazel run \ --config=${ARCHITECTURE} \ - //:gazelle -- -exclude vendor/google.golang.org/grpc --exclude cluster-up + //:gazelle -- -exclude vendor/google.golang.org/grpc --exclude kubevirtci/cluster-up # inject changes to libvirt BUILD file bazel run \ diff --git a/hack/bootstrap.sh b/hack/bootstrap.sh index 023b0434a629..257297400409 100755 --- a/hack/bootstrap.sh +++ b/hack/bootstrap.sh @@ -41,7 +41,7 @@ function kubevirt::bootstrap::regenerate() { rm .bazeldnf/sandbox.bazelrc -f # Run gazelle to ensure that nogo has all build files resolved and that we can bootstrap the env. # This is necessary since some steps remove the vendor build files and nogo would be broken then. - KUBEVIRT_BOOTSTRAPPING=true bazel run --config=${ARCHITECTURE} //:gazelle -- -exclude vendor/google.golang.org/grpc --exclude cluster-up + KUBEVIRT_BOOTSTRAPPING=true bazel run --config=${ARCHITECTURE} //:gazelle -- -exclude vendor/google.golang.org/grpc --exclude kubevirtci/cluster-up KUBEVIRT_BOOTSTRAPPING=true bazel run --config ${HOST_ARCHITECTURE} //rpm:sandbox_${1} bazel clean diff --git a/hack/build-verify.sh b/hack/build-verify.sh index cfe6e4eb1011..880f62fe913b 100755 --- a/hack/build-verify.sh +++ b/hack/build-verify.sh @@ -5,17 +5,17 @@ set -e function report_dirty_build() { set +e echo "Build is not clean:" - cluster-up/virtctl.sh version + kubevirtci/cluster-up/virtctl.sh version git status exit 1 } # Check that "clean" is reported at least once -if [ -z "$(cluster-up/virtctl.sh version | grep clean)" ]; then +if [ -z "$(kubevirtci/cluster-up/virtctl.sh version | grep clean)" ]; then report_dirty_build fi # Check that "dirty" is never reported -if [ -n "$(cluster-up/virtctl.sh version | grep dirty)" ]; then +if [ -n "$(kubevirtci/cluster-up/virtctl.sh version | grep dirty)" ]; then report_dirty_build fi diff --git a/hack/ci/entrypoint.sh b/hack/ci/entrypoint.sh index 638e441e1632..fce69c10f373 100755 --- a/hack/ci/entrypoint.sh +++ b/hack/ci/entrypoint.sh @@ -105,7 +105,7 @@ function run_tests() { OC_PATH=$(get_path_or_empty_string_for_cmd oc) KUBECTL_PATH=$(get_path_or_empty_string_for_cmd kubectl) - tests.test -v=5 -kubeconfig=${KUBECONFIG} -container-tag=${DOCKER_TAG} -container-tag-alt= -container-prefix=${DOCKER_PREFIX} -image-prefix-alt=-kv -oc-path=${OC_PATH} -kubectl-path=${KUBECTL_PATH} -gocli-path=$(pwd)/cluster-up/cli.sh -test.timeout 420m -ginkgo.noColor -ginkgo.succinct -ginkgo.slow-spec-threshold=60s ${KUBEVIRT_TESTS_FOCUS} -junit-output=${ARTIFACT_DIR}/junit.functest.xml -installed-namespace=kubevirt -previous-release-tag= -previous-release-registry=quay.io/kubevirt -deploy-testing-infra=false + tests.test -v=5 -kubeconfig=${KUBECONFIG} -container-tag=${DOCKER_TAG} -container-tag-alt= -container-prefix=${DOCKER_PREFIX} -image-prefix-alt=-kv -oc-path=${OC_PATH} -kubectl-path=${KUBECTL_PATH} -gocli-path=$(pwd)/kubevirtci/cluster-up/cli.sh -test.timeout 420m -ginkgo.noColor -ginkgo.succinct -ginkgo.slow-spec-threshold=60s ${KUBEVIRT_TESTS_FOCUS} -junit-output=${ARTIFACT_DIR}/junit.functest.xml -installed-namespace=kubevirt -previous-release-tag= -previous-release-registry=quay.io/kubevirt -deploy-testing-infra=false } export PATH="$BIN_DIR:$PATH" diff --git a/hack/cluster-build.sh b/hack/cluster-build.sh index cec9ca464d6b..d08774c19e24 100755 --- a/hack/cluster-build.sh +++ b/hack/cluster-build.sh @@ -25,7 +25,7 @@ DOCKER_TAG=${DOCKER_TAG:-devel} DOCKER_TAG_ALT=${DOCKER_TAG_ALT:-devel_alt} source hack/common.sh -source cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh +source kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh source hack/config.sh echo "Building ..." diff --git a/hack/cluster-clean.sh b/hack/cluster-clean.sh index 6cdd65afc62f..209eb240c870 100755 --- a/hack/cluster-clean.sh +++ b/hack/cluster-clean.sh @@ -22,7 +22,7 @@ set -ex DOCKER_TAG=${DOCKER_TAG:-devel} source hack/common.sh -source cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh +source kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh source hack/config.sh function patch_remove_finalizers() { diff --git a/hack/cluster-deploy.sh b/hack/cluster-deploy.sh index c22d95bdc8fc..5fad4d61ab06 100755 --- a/hack/cluster-deploy.sh +++ b/hack/cluster-deploy.sh @@ -26,7 +26,7 @@ CDI_DV_GC=${CDI_DV_GC:--1} source hack/common.sh # shellcheck disable=SC1090 -source cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh +source kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh source hack/config.sh function dump_kubevirt() { @@ -51,7 +51,7 @@ function _ensure_cdi_deployment() { _kubectl patch cdi ${cdi_namespace} --type merge -p '{"spec": {"config": {"insecureRegistries": [ "registry:5000", "fakeregistry:5000" ]}}}' # Configure uploadproxy override for virtctl imageupload - host_port=$(${KUBEVIRT_PATH}cluster-up/cli.sh ports uploadproxy | xargs) + host_port=$(${KUBEVIRT_PATH}kubevirtci/cluster-up/cli.sh ports uploadproxy | xargs) override="https://127.0.0.1:$host_port" _kubectl patch cdi ${cdi_namespace} --type merge -p '{"spec": {"config": {"uploadProxyURLOverride": "'"$override"'"}}}' diff --git a/hack/cluster-patch.sh b/hack/cluster-patch.sh index 777e2f4f7abd..8ef506594862 100755 --- a/hack/cluster-patch.sh +++ b/hack/cluster-patch.sh @@ -1,7 +1,7 @@ #!/bin/bash -xe source hack/common.sh -source cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh +source kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh source hack/config.sh function wait_for_rollout() { diff --git a/hack/cluster-sync.sh b/hack/cluster-sync.sh index 0a48250dc279..393f1b6be66b 100755 --- a/hack/cluster-sync.sh +++ b/hack/cluster-sync.sh @@ -18,6 +18,9 @@ # set -e +set -x + +source hack/config-kubevirtci.sh TEMP_FILE=$(mktemp -p /tmp -t kubevirt.deploy.XXXX) diff --git a/hack/cluster-up.sh b/hack/cluster-up.sh index cfd87b2031cd..77ec36ca1eb8 100755 --- a/hack/cluster-up.sh +++ b/hack/cluster-up.sh @@ -17,5 +17,9 @@ # Copyright 2021 Red Hat, Inc. # +set -e +set -x + +source hack/config-kubevirtci.sh KUBEVIRT_DEPLOY_CDI=${KUBEVIRT_DEPLOY_CDI:-true} -source ./cluster-up/up.sh +source "${KUBEVIRTCI_PATH}up.sh" diff --git a/hack/common.sh b/hack/common.sh index ef12b01b47f0..082d7c96b701 100644 --- a/hack/common.sh +++ b/hack/common.sh @@ -23,8 +23,8 @@ fail_if_cri_bin_missing() { fi } -if [ -f cluster-up/hack/common.sh ]; then - source cluster-up/hack/common.sh +if [ -f kubevirtci/cluster-up/hack/common.sh ]; then + source kubevirtci/cluster-up/hack/common.sh fi export GOFLAGS="$GOFLAGS -mod=vendor" diff --git a/hack/config-kubevirtci.sh b/hack/config-kubevirtci.sh new file mode 100644 index 000000000000..9b532b21c8f2 --- /dev/null +++ b/hack/config-kubevirtci.sh @@ -0,0 +1,22 @@ +# +# This file is part of the KubeVirt project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Copyright the KubeVirt Authors. +# +# + +BASE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +KUBEVIRTCI_PATH="${BASE_DIR}/kubevirtci/cluster-up/" +KUBEVIRTCI_CONFIG_PATH="${BASE_DIR}/kubevirtci/_ci-configs" diff --git a/hack/config.sh b/hack/config.sh index c11ff6323dd4..be7f6f6c8917 100644 --- a/hack/config.sh +++ b/hack/config.sh @@ -3,7 +3,7 @@ unset binaries docker_images docker_tag docker_tag_alt image_prefix image_prefix csv_version package_name source ${KUBEVIRT_PATH}hack/config-default.sh -source ${KUBEVIRT_PATH}cluster-up/hack/config.sh +source ${KUBEVIRT_PATH}kubevirtci/cluster-up/hack/config.sh export binaries docker_images docker_tag docker_tag_alt image_prefix image_prefix_alt manifest_templates \ namespace image_pull_policy verbosity \ diff --git a/hack/conformance.sh b/hack/conformance.sh index 38362ca79af9..6326e8068339 100755 --- a/hack/conformance.sh +++ b/hack/conformance.sh @@ -9,7 +9,7 @@ export ARTIFACTS=_out/artifacts/conformance mkdir -p ${ARTIFACTS} echo 'Obtaining KUBECONFIG of the development cluster' -export KUBECONFIG=$(./cluster-up/kubeconfig.sh) +export KUBECONFIG=$(./kubevirtci/cluster-up/kubeconfig.sh) sonobuoy_args="--wait --plugin _out/manifests/release/conformance.yaml" diff --git a/hack/deploy-to-nodes.sh b/hack/deploy-to-nodes.sh index 4a54f43204dd..52312f456266 100755 --- a/hack/deploy-to-nodes.sh +++ b/hack/deploy-to-nodes.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash source hack/common.sh -source cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh +source kubevirtci/cluster-up/cluster/$KUBEVIRT_PROVIDER/provider.sh set -e diff --git a/hack/dockerized b/hack/dockerized index 5f1b146d775e..77c2333c7e2f 100755 --- a/hack/dockerized +++ b/hack/dockerized @@ -100,9 +100,9 @@ _rsync \ --exclude 'bazel-kubevirt' \ --exclude 'bazel-out' \ --exclude 'bazel-testlogs' \ - --exclude 'cluster-up/cluster/**/.kubectl' \ - --exclude 'cluster-up/cluster/**/.oc' \ - --exclude 'cluster-up/cluster/**/.kubeconfig' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.kubectl' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.oc' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.kubeconfig' \ --exclude "_out" \ --exclude ".vagrant" \ --exclude ".bazeldnf" \ @@ -176,9 +176,9 @@ _rsync \ --exclude 'bazel-kubevirt' \ --exclude 'bazel-out' \ --exclude 'bazel-testlogs' \ - --exclude 'cluster-up/cluster/**/.kubectl' \ - --exclude 'cluster-up/cluster/**/.oc' \ - --exclude 'cluster-up/cluster/**/.kubeconfig' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.kubectl' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.oc' \ + --exclude 'kubevirtci/cluster-up/cluster/**/.kubeconfig' \ --exclude "_out" \ --exclude "vendor" \ --exclude ".vagrant" \ diff --git a/hack/sync-kubevirtci.sh b/hack/sync-kubevirtci.sh index 7bfdb9e82d78..21e1fe17ae7c 100755 --- a/hack/sync-kubevirtci.sh +++ b/hack/sync-kubevirtci.sh @@ -6,8 +6,8 @@ source $(dirname "$0")/common.sh source $(dirname "$0")/config.sh # update cluster-up if needed -version_file="cluster-up/version.txt" -sha_file="cluster-up-sha.txt" +version_file="kubevirtci/cluster-up/version.txt" +sha_file="kubevirtci/cluster-up-sha.txt" download_cluster_up=true function getClusterUpShasum() { ( @@ -20,7 +20,7 @@ function getClusterUpShasum() { # native byte values. # ``` # [1] https://man7.org/linux/man-pages/man1/sort.1.html - find cluster-up -type f | LC_ALL=C sort | xargs sha1sum | sha1sum | awk '{print $1}' + find kubevirtci/cluster-up -type f | LC_ALL=C sort | xargs sha1sum | sha1sum | awk '{print $1}' ) } @@ -39,11 +39,14 @@ else fi if [[ "$download_cluster_up" == true ]]; then echo "downloading cluster-up" - rm -rf cluster-up - curl --fail -L https://github.com/kubevirt/kubevirtci/archive/refs/tags/${kubevirtci_git_hash}.tar.gz | tar xz kubevirtci-${kubevirtci_git_hash}/cluster-up --strip-component 1 + rm -rf kubevirtci/cluster-up + ( + cd kubevirtci + curl --fail -L https://github.com/kubevirt/kubevirtci/archive/refs/tags/${kubevirtci_git_hash}.tar.gz | tar xz kubevirtci-${kubevirtci_git_hash}/cluster-up --strip-component 1 + ) echo ${kubevirtci_git_hash} >${version_file} new_sha=$(getClusterUpShasum) echo ${new_sha} >${sha_file} - echo "KUBEVIRTCI_TAG=${kubevirtci_git_hash}" >>cluster-up/hack/common.sh + echo "KUBEVIRTCI_TAG=${kubevirtci_git_hash}" >>kubevirtci/cluster-up/hack/common.sh fi diff --git a/hack/whatchanged.sh b/hack/whatchanged.sh index ef89e3a6193f..f1de362a6e80 100755 --- a/hack/whatchanged.sh +++ b/hack/whatchanged.sh @@ -25,8 +25,8 @@ TEMP_DIR=$(mktemp -d /tmp/git-tmp.XXXXXX) trap 'rm -rf $TEMP_DIR' EXIT SIGINT function main() { - CURRENT=$(git diff cluster-up/version.txt | grep -v "\-\-" | grep -v "++" | grep "^+" | cut -d - -f 2) - PREVIOUS=$(git diff cluster-up/version.txt | grep -v "\-\-" | grep -v "++" | grep "^-" | cut -d - -f 3) + CURRENT=$(git diff kubevirtci/cluster-up/version.txt | grep -v "\-\-" | grep -v "++" | grep "^+" | cut -d - -f 2) + PREVIOUS=$(git diff kubevirtci/cluster-up/version.txt | grep -v "\-\-" | grep -v "++" | grep "^-" | cut -d - -f 3) if [[ -z $CURRENT ]] || [[ -z $PREVIOUS ]]; then exit 0 diff --git a/kubevirtci/OWNERS b/kubevirtci/OWNERS new file mode 100644 index 000000000000..9e57b85e07e5 --- /dev/null +++ b/kubevirtci/OWNERS @@ -0,0 +1,6 @@ +reviewers: +- sig-buildsystem-reviewers +approvers: +- sig-buildsystem-approvers +labels: +- sig/buildsystem diff --git a/kubevirtci/cluster-up-sha.txt b/kubevirtci/cluster-up-sha.txt new file mode 100644 index 000000000000..6a05309720e0 --- /dev/null +++ b/kubevirtci/cluster-up-sha.txt @@ -0,0 +1 @@ +b26c49d169317497d5d9be5b699cd042b907710a diff --git a/cluster-up/.gitignore b/kubevirtci/cluster-up/.gitignore similarity index 100% rename from cluster-up/.gitignore rename to kubevirtci/cluster-up/.gitignore diff --git a/cluster-up/README.md b/kubevirtci/cluster-up/README.md similarity index 100% rename from cluster-up/README.md rename to kubevirtci/cluster-up/README.md diff --git a/cluster-up/check.sh b/kubevirtci/cluster-up/check.sh similarity index 100% rename from cluster-up/check.sh rename to kubevirtci/cluster-up/check.sh diff --git a/cluster-up/cli.sh b/kubevirtci/cluster-up/cli.sh similarity index 100% rename from cluster-up/cli.sh rename to kubevirtci/cluster-up/cli.sh diff --git a/cluster-up/cluster/K8S.md b/kubevirtci/cluster-up/cluster/K8S.md similarity index 100% rename from cluster-up/cluster/K8S.md rename to kubevirtci/cluster-up/cluster/K8S.md diff --git a/cluster-up/cluster/K8S_AUTOMATION.md b/kubevirtci/cluster-up/cluster/K8S_AUTOMATION.md similarity index 100% rename from cluster-up/cluster/K8S_AUTOMATION.md rename to kubevirtci/cluster-up/cluster/K8S_AUTOMATION.md diff --git a/cluster-up/cluster/K8S_DEV_GUIDE.md b/kubevirtci/cluster-up/cluster/K8S_DEV_GUIDE.md similarity index 100% rename from cluster-up/cluster/K8S_DEV_GUIDE.md rename to kubevirtci/cluster-up/cluster/K8S_DEV_GUIDE.md diff --git a/cluster-up/cluster/README_VGPU.md b/kubevirtci/cluster-up/cluster/README_VGPU.md similarity index 100% rename from cluster-up/cluster/README_VGPU.md rename to kubevirtci/cluster-up/cluster/README_VGPU.md diff --git a/cluster-up/cluster/ephemeral-provider-common.sh b/kubevirtci/cluster-up/cluster/ephemeral-provider-common.sh similarity index 100% rename from cluster-up/cluster/ephemeral-provider-common.sh rename to kubevirtci/cluster-up/cluster/ephemeral-provider-common.sh diff --git a/cluster-up/cluster/external/README.md b/kubevirtci/cluster-up/cluster/external/README.md similarity index 100% rename from cluster-up/cluster/external/README.md rename to kubevirtci/cluster-up/cluster/external/README.md diff --git a/cluster-up/cluster/external/provider.sh b/kubevirtci/cluster-up/cluster/external/provider.sh similarity index 100% rename from cluster-up/cluster/external/provider.sh rename to kubevirtci/cluster-up/cluster/external/provider.sh diff --git a/cluster-up/cluster/k8s-1.29/provider.sh b/kubevirtci/cluster-up/cluster/k8s-1.29/provider.sh similarity index 100% rename from cluster-up/cluster/k8s-1.29/provider.sh rename to kubevirtci/cluster-up/cluster/k8s-1.29/provider.sh diff --git a/cluster-up/cluster/k8s-1.30/provider.sh b/kubevirtci/cluster-up/cluster/k8s-1.30/provider.sh similarity index 100% rename from cluster-up/cluster/k8s-1.30/provider.sh rename to kubevirtci/cluster-up/cluster/k8s-1.30/provider.sh diff --git a/cluster-up/cluster/k8s-1.31/provider.sh b/kubevirtci/cluster-up/cluster/k8s-1.31/provider.sh similarity index 100% rename from cluster-up/cluster/k8s-1.31/provider.sh rename to kubevirtci/cluster-up/cluster/k8s-1.31/provider.sh diff --git a/cluster-up/cluster/k8s-provider-common.sh b/kubevirtci/cluster-up/cluster/k8s-provider-common.sh similarity index 100% rename from cluster-up/cluster/k8s-provider-common.sh rename to kubevirtci/cluster-up/cluster/k8s-provider-common.sh diff --git a/cluster-up/cluster/kind-1.27-vgpu/config_vgpu_cluster.sh b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/config_vgpu_cluster.sh similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/config_vgpu_cluster.sh rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/config_vgpu_cluster.sh diff --git a/cluster-up/cluster/kind-1.27-vgpu/conformance.json b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/conformance.json similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/conformance.json rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/conformance.json diff --git a/cluster-up/cluster/kind-1.27-vgpu/image b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/image similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/image rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/image diff --git a/cluster-up/cluster/kind-1.27-vgpu/provider.sh b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/provider.sh similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/provider.sh rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/provider.sh diff --git a/cluster-up/cluster/kind-1.27-vgpu/version b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/version similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/version rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/version diff --git a/cluster-up/cluster/kind-1.27-vgpu/vgpu-node/node.sh b/kubevirtci/cluster-up/cluster/kind-1.27-vgpu/vgpu-node/node.sh similarity index 100% rename from cluster-up/cluster/kind-1.27-vgpu/vgpu-node/node.sh rename to kubevirtci/cluster-up/cluster/kind-1.27-vgpu/vgpu-node/node.sh diff --git a/cluster-up/cluster/kind-1.28/README.md b/kubevirtci/cluster-up/cluster/kind-1.28/README.md similarity index 100% rename from cluster-up/cluster/kind-1.28/README.md rename to kubevirtci/cluster-up/cluster/kind-1.28/README.md diff --git a/cluster-up/cluster/kind-1.28/image b/kubevirtci/cluster-up/cluster/kind-1.28/image similarity index 100% rename from cluster-up/cluster/kind-1.28/image rename to kubevirtci/cluster-up/cluster/kind-1.28/image diff --git a/cluster-up/cluster/kind-1.28/provider.sh b/kubevirtci/cluster-up/cluster/kind-1.28/provider.sh similarity index 100% rename from cluster-up/cluster/kind-1.28/provider.sh rename to kubevirtci/cluster-up/cluster/kind-1.28/provider.sh diff --git a/cluster-up/cluster/kind-1.28/version b/kubevirtci/cluster-up/cluster/kind-1.28/version similarity index 100% rename from cluster-up/cluster/kind-1.28/version rename to kubevirtci/cluster-up/cluster/kind-1.28/version diff --git a/cluster-up/cluster/kind-1.30-vgpu/config_vgpu_cluster.sh b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/config_vgpu_cluster.sh similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/config_vgpu_cluster.sh rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/config_vgpu_cluster.sh diff --git a/cluster-up/cluster/kind-1.30-vgpu/conformance.json b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/conformance.json similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/conformance.json rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/conformance.json diff --git a/cluster-up/cluster/kind-1.30-vgpu/image b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/image similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/image rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/image diff --git a/cluster-up/cluster/kind-1.30-vgpu/provider.sh b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/provider.sh similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/provider.sh rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/provider.sh diff --git a/cluster-up/cluster/kind-1.30-vgpu/version b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/version similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/version rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/version diff --git a/cluster-up/cluster/kind-1.30-vgpu/vgpu-node/node.sh b/kubevirtci/cluster-up/cluster/kind-1.30-vgpu/vgpu-node/node.sh similarity index 100% rename from cluster-up/cluster/kind-1.30-vgpu/vgpu-node/node.sh rename to kubevirtci/cluster-up/cluster/kind-1.30-vgpu/vgpu-node/node.sh diff --git a/cluster-up/cluster/kind-ovn/README.md b/kubevirtci/cluster-up/cluster/kind-ovn/README.md similarity index 100% rename from cluster-up/cluster/kind-ovn/README.md rename to kubevirtci/cluster-up/cluster/kind-ovn/README.md diff --git a/cluster-up/cluster/kind-ovn/install-ovn.sh b/kubevirtci/cluster-up/cluster/kind-ovn/install-ovn.sh similarity index 100% rename from cluster-up/cluster/kind-ovn/install-ovn.sh rename to kubevirtci/cluster-up/cluster/kind-ovn/install-ovn.sh diff --git a/cluster-up/cluster/kind-ovn/provider.sh b/kubevirtci/cluster-up/cluster/kind-ovn/provider.sh similarity index 100% rename from cluster-up/cluster/kind-ovn/provider.sh rename to kubevirtci/cluster-up/cluster/kind-ovn/provider.sh diff --git a/cluster-up/cluster/kind-sriov/README.md b/kubevirtci/cluster-up/cluster/kind-sriov/README.md similarity index 100% rename from cluster-up/cluster/kind-sriov/README.md rename to kubevirtci/cluster-up/cluster/kind-sriov/README.md diff --git a/cluster-up/cluster/kind-sriov/TROUBLESHOOTING.md b/kubevirtci/cluster-up/cluster/kind-sriov/TROUBLESHOOTING.md similarity index 100% rename from cluster-up/cluster/kind-sriov/TROUBLESHOOTING.md rename to kubevirtci/cluster-up/cluster/kind-sriov/TROUBLESHOOTING.md diff --git a/cluster-up/cluster/kind-sriov/config_sriov_cluster.sh b/kubevirtci/cluster-up/cluster/kind-sriov/config_sriov_cluster.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/config_sriov_cluster.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/config_sriov_cluster.sh diff --git a/cluster-up/cluster/kind-sriov/conformance.json b/kubevirtci/cluster-up/cluster/kind-sriov/conformance.json similarity index 100% rename from cluster-up/cluster/kind-sriov/conformance.json rename to kubevirtci/cluster-up/cluster/kind-sriov/conformance.json diff --git a/cluster-up/cluster/kind-sriov/image b/kubevirtci/cluster-up/cluster/kind-sriov/image similarity index 100% rename from cluster-up/cluster/kind-sriov/image rename to kubevirtci/cluster-up/cluster/kind-sriov/image diff --git a/cluster-up/cluster/kind-sriov/provider.sh b/kubevirtci/cluster-up/cluster/kind-sriov/provider.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/provider.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/provider.sh diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/kustomization.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/kustomization.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/kustomization.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/kustomization.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/kustomization.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/kustomization.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/kustomization.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/kustomization.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/multus.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/multus.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/multus.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/multus.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/patch-args.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/patch-args.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/patch-args.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/multus/patch-args.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-node-selector.yaml.in b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-node-selector.yaml.in similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-node-selector.yaml.in rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-node-selector.yaml.in diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-sriovdp-resource-prefix.yaml.in b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-sriovdp-resource-prefix.yaml.in similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-sriovdp-resource-prefix.yaml.in rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/patch-sriovdp-resource-prefix.yaml.in diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-cni-daemonset.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-cni-daemonset.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-cni-daemonset.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-cni-daemonset.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-ns.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-ns.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-ns.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriov-ns.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-config.yaml.in b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-config.yaml.in similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-config.yaml.in rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-config.yaml.in diff --git a/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-daemonset.yaml b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-daemonset.yaml similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-daemonset.yaml rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/manifests/sriovdp-daemonset.yaml diff --git a/cluster-up/cluster/kind-sriov/sriov-components/sriov_components.sh b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/sriov_components.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-components/sriov_components.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-components/sriov_components.sh diff --git a/cluster-up/cluster/kind-sriov/sriov-node/configure_vfs.sh b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-node/configure_vfs.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-node/configure_vfs.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-node/configure_vfs.sh diff --git a/cluster-up/cluster/kind-sriov/sriov-node/node.sh b/kubevirtci/cluster-up/cluster/kind-sriov/sriov-node/node.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/sriov-node/node.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/sriov-node/node.sh diff --git a/cluster-up/cluster/kind-sriov/sriovdp_setup.sh b/kubevirtci/cluster-up/cluster/kind-sriov/sriovdp_setup.sh similarity index 100% rename from cluster-up/cluster/kind-sriov/sriovdp_setup.sh rename to kubevirtci/cluster-up/cluster/kind-sriov/sriovdp_setup.sh diff --git a/cluster-up/cluster/kind-sriov/version b/kubevirtci/cluster-up/cluster/kind-sriov/version similarity index 100% rename from cluster-up/cluster/kind-sriov/version rename to kubevirtci/cluster-up/cluster/kind-sriov/version diff --git a/cluster-up/cluster/kind/README.md b/kubevirtci/cluster-up/cluster/kind/README.md similarity index 100% rename from cluster-up/cluster/kind/README.md rename to kubevirtci/cluster-up/cluster/kind/README.md diff --git a/cluster-up/cluster/kind/bump-kind.sh b/kubevirtci/cluster-up/cluster/kind/bump-kind.sh similarity index 100% rename from cluster-up/cluster/kind/bump-kind.sh rename to kubevirtci/cluster-up/cluster/kind/bump-kind.sh diff --git a/cluster-up/cluster/kind/check-cluster-up.sh b/kubevirtci/cluster-up/cluster/kind/check-cluster-up.sh similarity index 100% rename from cluster-up/cluster/kind/check-cluster-up.sh rename to kubevirtci/cluster-up/cluster/kind/check-cluster-up.sh diff --git a/cluster-up/cluster/kind/common.sh b/kubevirtci/cluster-up/cluster/kind/common.sh similarity index 100% rename from cluster-up/cluster/kind/common.sh rename to kubevirtci/cluster-up/cluster/kind/common.sh diff --git a/cluster-up/cluster/kind/configure-registry-proxy.sh b/kubevirtci/cluster-up/cluster/kind/configure-registry-proxy.sh similarity index 100% rename from cluster-up/cluster/kind/configure-registry-proxy.sh rename to kubevirtci/cluster-up/cluster/kind/configure-registry-proxy.sh diff --git a/cluster-up/cluster/kind/manifests/kind.yaml b/kubevirtci/cluster-up/cluster/kind/manifests/kind.yaml similarity index 100% rename from cluster-up/cluster/kind/manifests/kind.yaml rename to kubevirtci/cluster-up/cluster/kind/manifests/kind.yaml diff --git a/cluster-up/cluster/kind/manifests/local-volume.yaml b/kubevirtci/cluster-up/cluster/kind/manifests/local-volume.yaml similarity index 100% rename from cluster-up/cluster/kind/manifests/local-volume.yaml rename to kubevirtci/cluster-up/cluster/kind/manifests/local-volume.yaml diff --git a/cluster-up/down.sh b/kubevirtci/cluster-up/down.sh similarity index 100% rename from cluster-up/down.sh rename to kubevirtci/cluster-up/down.sh diff --git a/cluster-up/hack/common.key b/kubevirtci/cluster-up/hack/common.key similarity index 100% rename from cluster-up/hack/common.key rename to kubevirtci/cluster-up/hack/common.key diff --git a/cluster-up/hack/common.sh b/kubevirtci/cluster-up/hack/common.sh similarity index 100% rename from cluster-up/hack/common.sh rename to kubevirtci/cluster-up/hack/common.sh diff --git a/cluster-up/hack/config-default.sh b/kubevirtci/cluster-up/hack/config-default.sh similarity index 100% rename from cluster-up/hack/config-default.sh rename to kubevirtci/cluster-up/hack/config-default.sh diff --git a/cluster-up/hack/config.sh b/kubevirtci/cluster-up/hack/config.sh similarity index 100% rename from cluster-up/hack/config.sh rename to kubevirtci/cluster-up/hack/config.sh diff --git a/cluster-up/kubeconfig.sh b/kubevirtci/cluster-up/kubeconfig.sh similarity index 100% rename from cluster-up/kubeconfig.sh rename to kubevirtci/cluster-up/kubeconfig.sh diff --git a/cluster-up/kubectl.sh b/kubevirtci/cluster-up/kubectl.sh similarity index 100% rename from cluster-up/kubectl.sh rename to kubevirtci/cluster-up/kubectl.sh diff --git a/cluster-up/ssh.sh b/kubevirtci/cluster-up/ssh.sh similarity index 100% rename from cluster-up/ssh.sh rename to kubevirtci/cluster-up/ssh.sh diff --git a/cluster-up/up.sh b/kubevirtci/cluster-up/up.sh similarity index 100% rename from cluster-up/up.sh rename to kubevirtci/cluster-up/up.sh diff --git a/cluster-up/version.txt b/kubevirtci/cluster-up/version.txt similarity index 100% rename from cluster-up/version.txt rename to kubevirtci/cluster-up/version.txt diff --git a/cluster-up/virtctl.sh b/kubevirtci/cluster-up/virtctl.sh similarity index 100% rename from cluster-up/virtctl.sh rename to kubevirtci/cluster-up/virtctl.sh