kcli 99.0.202511280701__tar.gz → 99.0.202601211329__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/PKG-INFO +1 -1
  2. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/PKG-INFO +1 -1
  3. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/SOURCES.txt +1 -0
  4. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cli.py +5 -1
  5. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/__init__.py +2 -0
  6. kcli-99.0.202601211329/kvirt/cluster/kubeadm/bootstrap.sh +41 -0
  7. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/bootstrap.yml +1 -0
  8. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/config_bootstrap.yaml +11 -3
  9. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/containerd.sh +1 -2
  10. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/04_mirror.sh +27 -8
  11. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/kcli_default.yml +7 -1
  12. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/pre_el.sh +16 -3
  13. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/pre_ubuntu.sh +2 -0
  14. kcli-99.0.202601211329/kvirt/cluster/kubeadm/sdn.sh +34 -0
  15. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/__init__.py +13 -2
  16. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/pre.sh +1 -0
  17. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/kcli_default.yml +1 -0
  18. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/__init__.py +10 -14
  19. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/config.py +2 -1
  20. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/defaults.py +2 -0
  21. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/kvm.yaml +1 -0
  22. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/hcloud/__init__.py +58 -47
  23. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/kubevirt/__init__.py +1 -0
  24. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/kvm/__init__.py +8 -2
  25. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/openstack/__init__.py +20 -4
  26. kcli-99.0.202601211329/kvirt/version/git +1 -0
  27. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/setup.py +1 -1
  28. kcli-99.0.202511280701/kvirt/cluster/kubeadm/bootstrap.sh +0 -68
  29. kcli-99.0.202511280701/kvirt/version/git +0 -1
  30. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/LICENSE +0 -0
  31. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/MANIFEST.in +0 -0
  32. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/README.md +0 -0
  33. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/Dockerfile_curl +0 -0
  34. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/Dockerfile_kubectl +0 -0
  35. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/autoscale.yml +0 -0
  36. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/aws_peering.py +0 -0
  37. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/aws_peering_cleaning.py +0 -0
  38. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/chatbot.py +0 -0
  39. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/Dockerfile +0 -0
  40. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/README.md +0 -0
  41. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/crd.yml +0 -0
  42. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/deploy.yml +0 -0
  43. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/cluster_simple.yml +0 -0
  44. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/plan_complex.yml +0 -0
  45. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/plan_simple.yml +0 -0
  46. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/plan_simple_with_file.yml +0 -0
  47. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/vm_centos8stream.yml +0 -0
  48. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/vm_cirros.yml +0 -0
  49. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/vm_empty.yml +0 -0
  50. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/examples/vm_fedora.yml +0 -0
  51. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/handlers.py +0 -0
  52. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/controller/stress_test.yml +0 -0
  53. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/create_playbook.py +0 -0
  54. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/debian +0 -0
  55. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/expose/kcli.conf +0 -0
  56. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/expose/kcli.wsgi +0 -0
  57. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/genrst.sh +0 -0
  58. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/haproxy.cfg +0 -0
  59. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/haproxy_multiple_clusters.cfg +0 -0
  60. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/i_am_a_container +0 -0
  61. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kfish.md +0 -0
  62. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kfish.png +0 -0
  63. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kubernetes/ksushy.yml +0 -0
  64. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kubernetes/kweb.yml +0 -0
  65. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kubevirt-pod.md +0 -0
  66. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/kubevirt-pod.yml +0 -0
  67. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/missing_keywords.py +0 -0
  68. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/openstack.py +0 -0
  69. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/openstack.sh.sample +0 -0
  70. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/extras/vsphere_reconnect.py +0 -0
  71. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/dependency_links.txt +0 -0
  72. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/entry_points.txt +0 -0
  73. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/not-zip-safe +0 -0
  74. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/requires.txt +0 -0
  75. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kcli.egg-info/top_level.txt +0 -0
  76. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/__init__.py +0 -0
  77. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/baseconfig.py +0 -0
  78. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/bottle.py +0 -0
  79. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/__init__.py +0 -0
  80. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/aks/__init__.py +0 -0
  81. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/aks/fake.yml +0 -0
  82. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/aks/kcli_default.yml +0 -0
  83. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/eks/__init__.py +0 -0
  84. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/eks/fake.yml +0 -0
  85. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/eks/kcli_default.yml +0 -0
  86. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/gke/__init__.py +0 -0
  87. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/gke/fake.yml +0 -0
  88. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/gke/kcli_default.yml +0 -0
  89. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/gke/kubeconfig.j2 +0 -0
  90. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/99-apps.yaml +0 -0
  91. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/99-kcli-forcedns +0 -0
  92. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/99-notifications.yaml +0 -0
  93. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/Corefile +0 -0
  94. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/__init__.py +0 -0
  95. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/assisted_infra.yml +0 -0
  96. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/assisted_ingress.yml +0 -0
  97. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/assisted_ingress_service.yml.j2 +0 -0
  98. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/autoapprovercron.yml +0 -0
  99. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/bmc.yml.j2 +0 -0
  100. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/calico.sh.j2 +0 -0
  101. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/cilium.sh.j2 +0 -0
  102. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/cloud_lb_apps.yml +0 -0
  103. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/disconnected.sh +0 -0
  104. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/extras.service +0 -0
  105. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/extras.sh +0 -0
  106. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/hostedcluster.yaml +0 -0
  107. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/httpd.yaml +0 -0
  108. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/kcli_default.yml +0 -0
  109. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/kcli_plan.yml +0 -0
  110. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/kcli_plan_assisted.yml +0 -0
  111. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/keepalived.conf +0 -0
  112. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/nmstateconfig.yml.j2 +0 -0
  113. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/nodepools.yaml +0 -0
  114. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/nonlocalbind.conf +0 -0
  115. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/staticpods/coredns.yml +0 -0
  116. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/staticpods/keepalived.yml +0 -0
  117. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/hypershift/staticpods/mdns.yml +0 -0
  118. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/__init__.py +0 -0
  119. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/bootstrap.sh +0 -0
  120. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/bootstrap.yml +0 -0
  121. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/cloud_lb_api.yml +0 -0
  122. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/ctlplanes.sh +0 -0
  123. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/ctlplanes.yml +0 -0
  124. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/join.sh +0 -0
  125. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/kcli_default.yml +0 -0
  126. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/keepalived.conf +0 -0
  127. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/keepalived.sh +0 -0
  128. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/workers.sh +0 -0
  129. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/k3s/workers.yml +0 -0
  130. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/10-flannel.link +0 -0
  131. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/90-flannel.rules +0 -0
  132. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/argocd/ingress.yml +0 -0
  133. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/argocd/install.sh +0 -0
  134. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/argocd/kcli_default.yml +0 -0
  135. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/argocd/uninstall.sh +0 -0
  136. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/autolabeller/install.sh +0 -0
  137. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/autolabeller/uninstall.sh +0 -0
  138. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/certmanager/install.sh +0 -0
  139. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/dashboard/admin.yml +0 -0
  140. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/dashboard/ingress.yml +0 -0
  141. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/dashboard/install.sh +0 -0
  142. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/dashboard/kcli_default.yml +0 -0
  143. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/dashboard/user.yml +0 -0
  144. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/falco/falco_advertisements.yml +0 -0
  145. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/falco/falco_ip.yml +0 -0
  146. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/falco/install.sh +0 -0
  147. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/falco/kcli_default.yml +0 -0
  148. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/falco/uninstall.sh +0 -0
  149. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/ingress/install.sh +0 -0
  150. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/ingress/uninstall.sh +0 -0
  151. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/istio/install.sh +0 -0
  152. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/istio/istio-minimal-operator.yaml +0 -0
  153. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/katacontainer/install.sh +0 -0
  154. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/katacontainer/uninstall.sh +0 -0
  155. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/knative/cr_eventing.yml +0 -0
  156. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/knative/cr_serving.yml +0 -0
  157. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/knative/install.sh +0 -0
  158. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/kubevirt/install.sh +0 -0
  159. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/kubevirt/kcli_default.yml +0 -0
  160. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/metallb/install.sh +0 -0
  161. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/metallb/kcli_default.yml +0 -0
  162. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/metallb/metallb_advertisement.yml +0 -0
  163. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/metallb/metallb_cr.yml +0 -0
  164. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/metallb/uninstall.sh +0 -0
  165. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/olm/install.sh +0 -0
  166. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/olm/uninstall.sh +0 -0
  167. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/policy_as_code/install.sh +0 -0
  168. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/policy_as_code/kcli_default.yml +0 -0
  169. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/policy_as_code/uninstall.sh +0 -0
  170. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rancher/install.sh +0 -0
  171. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rancher/kcli_default.yml +0 -0
  172. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rancher/rancher_advertisements.yml +0 -0
  173. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rancher/rancher_ip.yml +0 -0
  174. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rancher/uninstall.sh +0 -0
  175. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/rook/install.sh +0 -0
  176. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/submariner/install.sh +0 -0
  177. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/submariner/kcli_default.yml +0 -0
  178. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/tekton/install.sh +0 -0
  179. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/apps/tekton/uninstall.sh +0 -0
  180. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/cloud_lb_api.yml +0 -0
  181. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/config_join.yaml +0 -0
  182. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/crictl.yaml +0 -0
  183. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/crio-d.sh +0 -0
  184. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/ctlplanes.yml +0 -0
  185. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/deploy.sh +0 -0
  186. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/bin/sync_image.sh +0 -0
  187. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/registry.service +0 -0
  188. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/01_creds.sh +0 -0
  189. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/02_packages.sh +0 -0
  190. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/03_registry.sh +0 -0
  191. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/05_web.sh +0 -0
  192. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected/scripts/deploy.sh +0 -0
  193. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/disconnected.yml +0 -0
  194. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/join.sh +0 -0
  195. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/keepalived.conf +0 -0
  196. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/keepalived.sh +0 -0
  197. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/nfs.sh +0 -0
  198. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/nfs.yml +0 -0
  199. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/registry.yml +0 -0
  200. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubeadm/workers.yml +0 -0
  201. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/kubernetes/__init__.py +0 -0
  202. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/__init__.py +0 -0
  203. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/kcli_default.yml +0 -0
  204. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/kcli_plan.yml +0 -0
  205. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/00_sslip.sh +0 -0
  206. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/01_clients.sh +0 -0
  207. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/02_crio.sh +0 -0
  208. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/03_microshift.sh +0 -0
  209. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/04_kubeconfig.sh +0 -0
  210. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/05_acm.sh +0 -0
  211. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/microshift/scripts/deploy.sh +0 -0
  212. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/01-workload-partitioning +0 -0
  213. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/10-node-ip-hint.yaml +0 -0
  214. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/20-localhost-fix.yaml +0 -0
  215. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/98-etcd.yaml +0 -0
  216. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-apps.yaml +0 -0
  217. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-autologin.yaml +0 -0
  218. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-bootstrap-deletion-2.yaml +0 -0
  219. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-bootstrap-deletion.yaml +0 -0
  220. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-chrony.yaml +0 -0
  221. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-kcli-forcedns +0 -0
  222. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-kcli-forcedns-ibm +0 -0
  223. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-kubevirt-fix.yaml +0 -0
  224. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-metal3-fake-machine.yaml +0 -0
  225. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-metal3-provisioning.yaml +0 -0
  226. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-notifications.yaml +0 -0
  227. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-openshift-virtualization-catalog.yaml +0 -0
  228. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-operatorhub.yaml +0 -0
  229. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-ovn.yaml +0 -0
  230. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-prega-catalog.yaml +0 -0
  231. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/99-sno.yaml +0 -0
  232. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/Corefile +0 -0
  233. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/99-metal3-provisioning.yaml +0 -0
  234. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/assisted-service.sample.yml +0 -0
  235. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/assisted-service.sh +0 -0
  236. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/cr.yml +0 -0
  237. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/gen_registries.py +0 -0
  238. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/kcli_default.yml +0 -0
  239. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/advanced-cluster-management/post.sh +0 -0
  240. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/autolabeller/cr.yml +0 -0
  241. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/autolabeller/install.sh +0 -0
  242. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/autolabeller/install.yml +0 -0
  243. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/autolabeller/kcli_default.yml +0 -0
  244. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/autolabeller/uninstall.sh +0 -0
  245. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/cluster-logging/cr.yml +0 -0
  246. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/cluster-logging/kcli_default.yml +0 -0
  247. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/cr.sh +0 -0
  248. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/install.yml.j2 +0 -0
  249. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/istio/install.sh +0 -0
  250. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/istio/istio-cni.yaml +0 -0
  251. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/kubernetes-nmstate-operator/cr.yml +0 -0
  252. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/kubevirt-hyperconverged/cr.yml +0 -0
  253. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/kubevirt-hyperconverged/kcli_default.yml +0 -0
  254. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/local-storage-operator/cr.yml +0 -0
  255. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/local-storage-operator/kcli_default.yml +0 -0
  256. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/local-storage-operator/post.sh +0 -0
  257. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/lvms-operator/cr.yml +0 -0
  258. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/lvms-operator/kcli_default.yml +0 -0
  259. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/lvms-operator/post.sh +0 -0
  260. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/metallb-operator/cr.yml +0 -0
  261. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/metallb-operator/kcli_default.yml +0 -0
  262. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/99-metal3-provisioning.yaml +0 -0
  263. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/assisted-service.sample.yml +0 -0
  264. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/assisted-service.sh +0 -0
  265. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/cr.yml +0 -0
  266. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/gen_registries.py +0 -0
  267. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/kcli_default.yml +0 -0
  268. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/multicluster-engine/post.sh +0 -0
  269. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/nfs/install.sh +0 -0
  270. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/nfs/kcli_default.yml +0 -0
  271. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/nfs/uninstall.sh +0 -0
  272. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/cr.yml +0 -0
  273. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/kcli_default.yml +0 -0
  274. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/nad_cluster.yml +0 -0
  275. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/nad_public.yml +0 -0
  276. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/odf-operator/post.sh +0 -0
  277. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/serverless-operator/cr.yml +0 -0
  278. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/serverless-operator/kcli_default.yml +0 -0
  279. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/serverless-operator/post.sh +0 -0
  280. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/sriov-network-operator/cr.yml +0 -0
  281. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/sriov-network-operator/kcli_default.yml +0 -0
  282. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/users/install.sh +0 -0
  283. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/users/kcli_default.yml +0 -0
  284. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/users/oauth.yml +0 -0
  285. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/users/oauth_hypershift.yml +0 -0
  286. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/apps/users/uninstall.sh +0 -0
  287. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/autoapprovercron.yml +0 -0
  288. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/autorules.yml +0 -0
  289. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/bgp-vip.sh +0 -0
  290. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/bootstrap.yml +0 -0
  291. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/calico.sh.j2 +0 -0
  292. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/chrony.conf +0 -0
  293. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cilium.sh.j2 +0 -0
  294. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_bootstrap.yml +0 -0
  295. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_ctlplanes.yml +0 -0
  296. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_dns.yml +0 -0
  297. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_lb_api.yml +0 -0
  298. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_lb_apps.yml +0 -0
  299. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cloud_workers.yml +0 -0
  300. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cluster-ingress-02-config.yml +0 -0
  301. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/cluster-scheduler-02-config.yml +0 -0
  302. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/config.hcl.templ +0 -0
  303. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/ctlplanes.yml +0 -0
  304. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/00-kcli-namespace.yaml +0 -0
  305. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/97-autoapprovercron-sa.yaml +0 -0
  306. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/98-autoapprovercron-binding.yaml +0 -0
  307. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/99-autoapprovercron-cronjob.yaml +0 -0
  308. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/99-ingress-controller.yaml +0 -0
  309. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/99-iptables.yaml +0 -0
  310. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/99-monitoring.yaml +0 -0
  311. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/customisation/99-registry.yaml +0 -0
  312. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/dhcp.conf +0 -0
  313. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/dhcp.sh +0 -0
  314. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/dhcp.yml +0 -0
  315. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/bin/sync_image.sh +0 -0
  316. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/haproxy.cfg +0 -0
  317. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/mirror-config.yaml +0 -0
  318. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/registry.service +0 -0
  319. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/scripts/01_packages.sh +0 -0
  320. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/scripts/02_registry.sh +0 -0
  321. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/scripts/03_mirror.sh +0 -0
  322. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/scripts/04_web.sh +0 -0
  323. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected/scripts/deploy.sh +0 -0
  324. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/disconnected.yml +0 -0
  325. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/fake_kubeconfig.json +0 -0
  326. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/fake_pull.json +0 -0
  327. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/frr.conf +0 -0
  328. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/frr_daemons +0 -0
  329. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/haproxy.cfg +0 -0
  330. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/haproxy.cfg.kubevirt +0 -0
  331. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/httpd.yaml +0 -0
  332. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/icsp.yml.j2 +0 -0
  333. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/ignition.j2 +0 -0
  334. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/install-config.yaml +0 -0
  335. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/iso.sh +0 -0
  336. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/kcli-ipv6.conf.j2 +0 -0
  337. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/keepalived.conf +0 -0
  338. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/nonlocalbind.conf +0 -0
  339. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/openshift-workload-pinning +0 -0
  340. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/patch_ipv6.json +0 -0
  341. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/sno-finish.service +0 -0
  342. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/sno-finish.sh +0 -0
  343. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/sno.yml +0 -0
  344. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/sno_default.yml +0 -0
  345. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/staticpods/bgp.yml +0 -0
  346. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/staticpods/coredns.yml +0 -0
  347. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/staticpods/haproxy.yml +0 -0
  348. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/staticpods/keepalived.yml +0 -0
  349. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/staticpods/mdns.yml +0 -0
  350. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/telco_manifests.yml +0 -0
  351. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/openshift/workers.yml +0 -0
  352. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-kubeadm-default.yml +0 -0
  353. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-openshift-compact.yml +0 -0
  354. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-openshift-contrail.yml +0 -0
  355. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-openshift-ipv6.yml +0 -0
  356. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-openshift-sno-bm.yml +0 -0
  357. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/profiles/sample-openshift-sno.yml +0 -0
  358. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/__init__.py +0 -0
  359. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/bootstrap.sh +0 -0
  360. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/bootstrap.yml +0 -0
  361. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/cloud_lb_api.yml +0 -0
  362. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/ctlplanes.yml +0 -0
  363. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/deploy.sh +0 -0
  364. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/join.sh +0 -0
  365. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/kcli_default.yml +0 -0
  366. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/keepalived.conf +0 -0
  367. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/keepalived.sh +0 -0
  368. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/rke2/workers.yml +0 -0
  369. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/cluster/sampleprovider.py +0 -0
  370. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/autoscale.yaml.j2 +0 -0
  371. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/fake_kubeconfig.json +0 -0
  372. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/ignition.j2 +0 -0
  373. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/kubevirt_kcli_conf.j2 +0 -0
  374. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/local_kcli_conf.j2 +0 -0
  375. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/storage.sh.aws +0 -0
  376. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/storage.sh.gcp +0 -0
  377. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/storage.sh.ibmcloud +0 -0
  378. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/vm.ovf.j2 +0 -0
  379. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/workflow.yml.j2 +0 -0
  380. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/common/workflow_script.yml.j2 +0 -0
  381. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/container/__init__.py +0 -0
  382. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/containerconfig.py +0 -0
  383. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ekstoken.py +0 -0
  384. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/examples.py +0 -0
  385. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/__init__.py +0 -0
  386. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/bootstrap-notify.css +0 -0
  387. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/bootstrap.min.css +0 -0
  388. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/dataTables.checkboxes.css +0 -0
  389. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/jquery.dataTables.min.css +0 -0
  390. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/kcli.css +0 -0
  391. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/css/wheel.css +0 -0
  392. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/images/favicon.ico +0 -0
  393. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/images/sort_asc.png +0 -0
  394. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/images/sort_both.png +0 -0
  395. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/images/sort_desc.png +0 -0
  396. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/images/wheel.gif +0 -0
  397. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/js/dataTables.checkboxes.min.js +0 -0
  398. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/js/exposeactions.js +0 -0
  399. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/js/jquery.dataTables.min.js +0 -0
  400. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/js/jquery.min.js +0 -0
  401. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/static/js/list.js +0 -0
  402. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/swagger.yml +0 -0
  403. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/form.html +0 -0
  404. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/head.html +0 -0
  405. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/index.html +0 -0
  406. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/infoplan.html +0 -0
  407. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/planstable.html +0 -0
  408. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/expose/templates/result.html +0 -0
  409. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/all.yaml +0 -0
  410. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/aws.yaml +0 -0
  411. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/gcp.yaml +0 -0
  412. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/kubevirt.yaml +0 -0
  413. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/proxmox.yaml +0 -0
  414. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/extra_keywords/vsphere.yml +0 -0
  415. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/gketoken.py +0 -0
  416. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/internalplans/__init__.py +0 -0
  417. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/jinjafilters/__init__.py +0 -0
  418. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/jinjafilters/jinjafilters.py +0 -0
  419. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/keywords.yaml +0 -0
  420. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/kfish/__init__.py +0 -0
  421. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/klist.py +0 -0
  422. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/kmcp.py +0 -0
  423. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/__init__.py +0 -0
  424. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/main.py +0 -0
  425. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/bios.json +0 -0
  426. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/interface.json +0 -0
  427. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/interfaces.json +0 -0
  428. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/manager.json +0 -0
  429. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/managers.json +0 -0
  430. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/root.json +0 -0
  431. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/system.json +0 -0
  432. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/systems.json +0 -0
  433. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/virtualmedia_cd.json +0 -0
  434. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/ksushy/templates/virtualmedias.json +0 -0
  435. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/kubecommon/__init__.py +0 -0
  436. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/miniconsole/__init__.py +0 -0
  437. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/nameutils/__init__.py +0 -0
  438. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/__init__.py +0 -0
  439. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/aws/__init__.py +0 -0
  440. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/aws/assume_policy.json +0 -0
  441. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/aws/ctlplane_policy.json +0 -0
  442. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/aws/trust_policy.json +0 -0
  443. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/aws/worker_policy.json +0 -0
  444. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/azure/__init__.py +0 -0
  445. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/fake/__init__.py +0 -0
  446. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/gcp/__init__.py +0 -0
  447. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/gcp/gcp-hack.service +0 -0
  448. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/gcp/gcp-hack.sh +0 -0
  449. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/ibm/__init__.py +0 -0
  450. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/kvm/helpers.py +0 -0
  451. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/ovirt/__init__.py +0 -0
  452. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/proxmox/__init__.py +0 -0
  453. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/sampleprovider.py +0 -0
  454. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/vsphere/__init__.py +0 -0
  455. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/vsphere/helpers.py +0 -0
  456. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/vsphere/tagging.py +0 -0
  457. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/providers/web/__init__.py +0 -0
  458. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/version/__init__.py +0 -0
  459. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/__init__.py +0 -0
  460. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/main.py +0 -0
  461. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/bootstrap-notify.css +0 -0
  462. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/bootstrap-theme.min.css +0 -0
  463. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/bootstrap.min.css +0 -0
  464. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/dataTables.checkboxes.css +0 -0
  465. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/jquery.dataTables.min.css +0 -0
  466. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/kcli.css +0 -0
  467. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/navbar.css +0 -0
  468. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/spice.css +0 -0
  469. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/css/wheel.css +0 -0
  470. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/fonts/glyphicons-halflings-regular.woff2 +0 -0
  471. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Centos.png +0 -0
  472. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Debian.png +0 -0
  473. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Fedora.png +0 -0
  474. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Redhat.png +0 -0
  475. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Suse.png +0 -0
  476. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Tux.png +0 -0
  477. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/Ubuntu.png +0 -0
  478. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/delete.png +0 -0
  479. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/favicon.ico +0 -0
  480. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/kcli-small.png +0 -0
  481. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/kcli.jpg +0 -0
  482. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/kcli.png +0 -0
  483. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/logo-header.svg +0 -0
  484. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/logo-main.svg +0 -0
  485. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/sort_asc.png +0 -0
  486. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/sort_both.png +0 -0
  487. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/sort_desc.png +0 -0
  488. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/start.png +0 -0
  489. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/stop.png +0 -0
  490. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/images/wheel.gif +0 -0
  491. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/bootstrap-notify.js +0 -0
  492. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/bootstrap.min.js +0 -0
  493. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/containeraction.js +0 -0
  494. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/dataTables.checkboxes.min.js +0 -0
  495. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/hostaction.js +0 -0
  496. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/imageaction.js +0 -0
  497. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/jquery.dataTables.min.js +0 -0
  498. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/jquery.min.js +0 -0
  499. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/kcli.js +0 -0
  500. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/kubeaction.js +0 -0
  501. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/list.js +0 -0
  502. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/networkaction.js +0 -0
  503. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/planaction.js +0 -0
  504. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/poolaction.js +0 -0
  505. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/productaction.js +0 -0
  506. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/refresh.js +0 -0
  507. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/repoaction.js +0 -0
  508. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/snapshotaction.js +0 -0
  509. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/atKeynames.js +0 -0
  510. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/bitmap.js +0 -0
  511. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/cursor.js +0 -0
  512. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/display.js +0 -0
  513. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/enums.js +0 -0
  514. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/filexfer.js +0 -0
  515. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/inputs.js +0 -0
  516. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/lz.js +0 -0
  517. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/main.js +0 -0
  518. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/playback.js +0 -0
  519. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/png.js +0 -0
  520. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/port.js +0 -0
  521. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/quic.js +0 -0
  522. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/resize.js +0 -0
  523. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/simulatecursor.js +0 -0
  524. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/spicearraybuffer.js +0 -0
  525. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/spiceconn.js +0 -0
  526. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/spicedataview.js +0 -0
  527. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/spicemsg.js +0 -0
  528. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/spicetype.js +0 -0
  529. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/browser-es-module-loader/.npmignore +0 -0
  530. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/browser-es-module-loader/README.md +0 -0
  531. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/browser-es-module-loader/rollup.config.js +0 -0
  532. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/browser-es-module-loader/src/babel-worker.js +0 -0
  533. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/browser-es-module-loader/src/browser-es-module-loader.js +0 -0
  534. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/jsbn.js +0 -0
  535. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/prng4.js +0 -0
  536. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/rng.js +0 -0
  537. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/rsa.js +0 -0
  538. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/thirdparty/sha1.js +0 -0
  539. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/ticket.js +0 -0
  540. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/utils.js +0 -0
  541. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/webm.js +0 -0
  542. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/spice/wire.js +0 -0
  543. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/vmaction.js +0 -0
  544. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/js/wheel.js +0 -0
  545. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/error-handler.js +0 -0
  546. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/alt.svg +0 -0
  547. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/clipboard.svg +0 -0
  548. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/connect.svg +0 -0
  549. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/ctrl.svg +0 -0
  550. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/ctrlaltdel.svg +0 -0
  551. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/disconnect.svg +0 -0
  552. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/drag.svg +0 -0
  553. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/error.svg +0 -0
  554. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/esc.svg +0 -0
  555. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/expander.svg +0 -0
  556. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/fullscreen.svg +0 -0
  557. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/handle.svg +0 -0
  558. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/handle_bg.svg +0 -0
  559. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/Makefile +0 -0
  560. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-120x120.png +0 -0
  561. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-144x144.png +0 -0
  562. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-152x152.png +0 -0
  563. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-16x16.png +0 -0
  564. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-192x192.png +0 -0
  565. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-24x24.png +0 -0
  566. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-32x32.png +0 -0
  567. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-48x48.png +0 -0
  568. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-60x60.png +0 -0
  569. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-64x64.png +0 -0
  570. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-72x72.png +0 -0
  571. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-76x76.png +0 -0
  572. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-96x96.png +0 -0
  573. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-icon-sm.svg +0 -0
  574. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/icons/novnc-icon.svg +0 -0
  575. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/info.svg +0 -0
  576. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/keyboard.svg +0 -0
  577. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/mouse_left.svg +0 -0
  578. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/mouse_middle.svg +0 -0
  579. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/mouse_none.svg +0 -0
  580. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/mouse_right.svg +0 -0
  581. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/power.svg +0 -0
  582. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/settings.svg +0 -0
  583. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/tab.svg +0 -0
  584. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/toggleextrakeys.svg +0 -0
  585. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/warning.svg +0 -0
  586. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/images/windows.svg +0 -0
  587. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/cs.json +0 -0
  588. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/de.json +0 -0
  589. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/el.json +0 -0
  590. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/es.json +0 -0
  591. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/ja.json +0 -0
  592. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/ko.json +0 -0
  593. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/nl.json +0 -0
  594. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/pl.json +0 -0
  595. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/ru.json +0 -0
  596. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/sv.json +0 -0
  597. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/tr.json +0 -0
  598. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/zh_CN.json +0 -0
  599. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/locale/zh_TW.json +0 -0
  600. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/localization.js +0 -0
  601. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/sounds/CREDITS +0 -0
  602. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/sounds/bell.mp3 +0 -0
  603. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/sounds/bell.oga +0 -0
  604. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/styles/Orbitron700.ttf +0 -0
  605. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/styles/Orbitron700.woff +0 -0
  606. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/styles/base.css +0 -0
  607. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/ui.js +0 -0
  608. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/app/webutil.js +0 -0
  609. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/base64.js +0 -0
  610. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/copyrect.js +0 -0
  611. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/hextile.js +0 -0
  612. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/raw.js +0 -0
  613. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/rre.js +0 -0
  614. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/tight.js +0 -0
  615. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/decoders/tightpng.js +0 -0
  616. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/des.js +0 -0
  617. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/display.js +0 -0
  618. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/encodings.js +0 -0
  619. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/inflator.js +0 -0
  620. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/domkeytable.js +0 -0
  621. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/fixedkeys.js +0 -0
  622. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/keyboard.js +0 -0
  623. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/keysym.js +0 -0
  624. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/keysymdef.js +0 -0
  625. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/mouse.js +0 -0
  626. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/util.js +0 -0
  627. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/vkeys.js +0 -0
  628. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/input/xtscancodes.js +0 -0
  629. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/rfb.js +0 -0
  630. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/browser.js +0 -0
  631. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/cursor.js +0 -0
  632. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/events.js +0 -0
  633. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/eventtarget.js +0 -0
  634. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/logging.js +0 -0
  635. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/polyfill.js +0 -0
  636. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/util/strings.js +0 -0
  637. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/core/websock.js +0 -0
  638. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/browser-es-module-loader/README.md +0 -0
  639. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/browser-es-module-loader/rollup.config.js +0 -0
  640. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/browser-es-module-loader/src/babel-worker.js +0 -0
  641. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/browser-es-module-loader/src/browser-es-module-loader.js +0 -0
  642. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/LICENSE +0 -0
  643. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/README.md +0 -0
  644. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/utils/common.js +0 -0
  645. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/adler32.js +0 -0
  646. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/constants.js +0 -0
  647. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/crc32.js +0 -0
  648. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/deflate.js +0 -0
  649. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/gzheader.js +0 -0
  650. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/inffast.js +0 -0
  651. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/inflate.js +0 -0
  652. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/inftrees.js +0 -0
  653. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/messages.js +0 -0
  654. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/trees.js +0 -0
  655. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/pako/lib/zlib/zstream.js +0 -0
  656. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/static/vnc/vendor/promise.js +0 -0
  657. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/bootstrap.html +0 -0
  658. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/console.html +0 -0
  659. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/containercreate.html +0 -0
  660. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/containerprofiles.html +0 -0
  661. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/containerprofilestable.html +0 -0
  662. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/containers.html +0 -0
  663. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/containerstable.html +0 -0
  664. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/head.html +0 -0
  665. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/hosts.html +0 -0
  666. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/hoststable.html +0 -0
  667. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/imagecreate.html +0 -0
  668. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/images.html +0 -0
  669. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/imagestable.html +0 -0
  670. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/isos.html +0 -0
  671. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/isostable.html +0 -0
  672. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubecreate.html +0 -0
  673. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubeinfo.html +0 -0
  674. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubeprofiles.html +0 -0
  675. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubeprofilestable.html +0 -0
  676. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubes.html +0 -0
  677. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/kubestable.html +0 -0
  678. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/layout.html +0 -0
  679. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/navbar.html +0 -0
  680. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/networkcreate.html +0 -0
  681. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/networks.html +0 -0
  682. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/networkstable.html +0 -0
  683. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/plancreate.html +0 -0
  684. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/plans.html +0 -0
  685. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/planstable.html +0 -0
  686. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/poolcreate.html +0 -0
  687. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/pools.html +0 -0
  688. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/poolstable.html +0 -0
  689. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/productcreate.html +0 -0
  690. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/products.html +0 -0
  691. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/productstable.html +0 -0
  692. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/repocreate.html +0 -0
  693. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/repos.html +0 -0
  694. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/repostable.html +0 -0
  695. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/vmcreate.html +0 -0
  696. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/vmprofiles.html +0 -0
  697. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/vmprofilestable.html +0 -0
  698. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/vms.html +0 -0
  699. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/kvirt/web/templates/vmstable.html +0 -0
  700. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/samples/all_parameters.yml +0 -0
  701. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/samples/config.yml +0 -0
  702. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/samples/profiles.yml +0 -0
  703. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/setup.cfg +0 -0
  704. {kcli-99.0.202511280701 → kcli-99.0.202601211329}/tests/test_kvirt.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kcli
3
- Version: 99.0.202511280701
3
+ Version: 99.0.202601211329
4
4
  Summary: Provisioner/Manager for Libvirt/Vsphere/Aws/Gcp/Hcloud/Kubevirt/Ovirt/Openstack/IBM Cloud and containers
5
5
  Home-page: http://github.com/karmab/kcli
6
6
  Author: Karim Boumedhel
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kcli
3
- Version: 99.0.202511280701
3
+ Version: 99.0.202601211329
4
4
  Summary: Provisioner/Manager for Libvirt/Vsphere/Aws/Gcp/Hcloud/Kubevirt/Ovirt/Openstack/IBM Cloud and containers
5
5
  Home-page: http://github.com/karmab/kcli
6
6
  Author: Karim Boumedhel
@@ -135,6 +135,7 @@ kvirt/cluster/kubeadm/nfs.yml
135
135
  kvirt/cluster/kubeadm/pre_el.sh
136
136
  kvirt/cluster/kubeadm/pre_ubuntu.sh
137
137
  kvirt/cluster/kubeadm/registry.yml
138
+ kvirt/cluster/kubeadm/sdn.sh
138
139
  kvirt/cluster/kubeadm/workers.yml
139
140
  kvirt/cluster/kubeadm/apps/argocd/ingress.yml
140
141
  kvirt/cluster/kubeadm/apps/argocd/install.sh
@@ -1764,7 +1764,11 @@ def create_kube(args):
1764
1764
  overrides = interactive_kube(args.type)
1765
1765
  disks = overrides.get('disks', [])
1766
1766
  if disks:
1767
- overrides['disk_size'] = disks[0]['size'] if isinstance(disks[0], dict) else disks[0]
1767
+ disk_size = disks[0]['size'] if isinstance(disks[0], dict) else disks[0]
1768
+ if not isinstance(disk_size, int):
1769
+ error(f"Wrong disk size {disk_size}")
1770
+ sys.exit(1)
1771
+ overrides['disk_size'] = disk_size
1768
1772
  if len(disks) > 1:
1769
1773
  overrides['extra_disks'] = disks[1:]
1770
1774
  nets = overrides.get('nets', [])
@@ -220,6 +220,7 @@ def create(config, plandir, cluster, overrides):
220
220
  return {'result': 'failure', 'reason': msg}
221
221
  if which('kubectl') is None:
222
222
  get_kubectl()
223
+ pprint("Move downloaded kubectl somewhere in your PATH if you want to reuse it")
223
224
  if not os.path.exists(clusterdir):
224
225
  os.makedirs(clusterdir)
225
226
  os.mkdir(f"{clusterdir}/auth")
@@ -227,6 +228,7 @@ def create(config, plandir, cluster, overrides):
227
228
  disconnected_url = data['disconnected_url']
228
229
  disconnected_reuse = data['disconnected_reuse']
229
230
  disconnected_vm = data['disconnected_vm'] or (disconnected_url is None and disconnected)
231
+ data['ipv6'] = api_ip is not None and ':' in api_ip
230
232
  if provider not in cloud_providers and disconnected_vm:
231
233
  disconnected_vm = f"{data['disconnected_reuse_name'] or cluster}-registry"
232
234
  pprint(f"Deploying disconnected vm {disconnected_vm}")
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env bash
2
+
3
+ CLUSTER={{ cluster }}
4
+ DOMAIN={{ domain }}
5
+
6
+ echo $(hostname -I) api.$CLUSTER.$DOMAIN >> /etc/hosts
7
+
8
+ kubeadm init --config=/root/config.yaml --upload-certs
9
+
10
+ # config cluster credentials
11
+ cp /etc/kubernetes/admin.conf /root/kubeconfig
12
+ chown root:root /root/kubeconfig
13
+ export KUBECONFIG=/root/kubeconfig
14
+ echo "export KUBECONFIG=/root/kubeconfig" >> /root/.bashrc
15
+
16
+ {% if ctlplane_schedulable or workers == 0 %}
17
+ # untaint ctlplane nodes when there are no workers
18
+ kubectl taint nodes --all node-role.kubernetes.io/master-
19
+ kubectl taint nodes --all node-role.kubernetes.io/control-plane-
20
+ {% endif %}
21
+
22
+ {% if sdn != None %}
23
+ bash /root/sdn.sh
24
+ {% endif %}
25
+
26
+ # config cluster credentials
27
+ mkdir -p /root/.kube
28
+ cp -i /etc/kubernetes/admin.conf /root/.kube/config
29
+ chown root:root /root/.kube/config
30
+
31
+ {% if multus %}
32
+ kubectl apply -f https://raw.githubusercontent.com/k8snetworkplumbingwg/multus-cni/master/deployments/multus-daemonset-thick.yml
33
+ {% endif %}
34
+
35
+ {% if nfs %}
36
+ /root/nfs.sh
37
+ {% endif %}
38
+
39
+ {% if registry %}
40
+ kubectl create -f /root/registry.yml
41
+ {% endif %}
@@ -57,5 +57,6 @@
57
57
  origin: 90-flannel.rules
58
58
  {% endif %}
59
59
  - registry.yml
60
+ - sdn.sh
60
61
  cmds:
61
62
  - bash /root/deploy.sh
@@ -20,13 +20,21 @@
20
20
  {{ runtime_config_string.append(entry) or "" }}
21
21
  {% endfor %}
22
22
  {% endif %}
23
+
24
+ {% if not cluster_networks %}
25
+ {% set cluster_networks = [cluster_network_ipv4] + [cluster_network_ipv6] if dualstack|default(False) else [cluster_network_ipv6] if ipv6 else [cluster_network_ipv4] %}
26
+ {% endif %}
27
+ {% if not service_networks %}
28
+ {% set service_networks = [service_network_ipv4] + [service_network_ipv6] if dualstack|default(False) else [service_network_ipv6] if ipv6 else [service_network_ipv4] %}
29
+ {% endif %}
30
+
23
31
  apiVersion: kubeadm.k8s.io/v1beta3
24
32
  kind: InitConfiguration
25
33
  bootstrapTokens:
26
34
  - token: "{{ token }}"
27
35
  ttl: "0"
28
36
  localAPIEndpoint:
29
- advertiseAddress: 0.0.0.0
37
+ advertiseAddress: "{{ '::' if ipv6 else '0.0.0.0' }}"
30
38
  bindPort: 6443
31
39
  certificateKey: "{{ cert_key }}"
32
40
  ---
@@ -38,8 +46,8 @@ kubernetesVersion: {{ minor_version }}
38
46
  {% endif %}
39
47
  controlPlaneEndpoint: {{ api_fqdn }}:6443
40
48
  networking:
41
- podSubnet: {{ cluster_network_ipv4 }}
42
- serviceSubnet: {{ service_network_ipv4 }}
49
+ podSubnet: {{ ','.join(cluster_networks) }}
50
+ serviceSubnet: {{ ','.join(service_networks) }}
43
51
  {% if domain != None %}
44
52
  dnsDomain: "{{ cluster }}.{{ domain }}"
45
53
  {% endif %}
@@ -5,9 +5,8 @@ apt-get update
5
5
  apt-get install -y containerd || apt-get install -y containerd.io
6
6
  {% else %}
7
7
  TARGET={{ 'fedora' if 'fedora' in image|lower else 'centos' }}
8
- dnf install -y yum-utils device-mapper-persistent-data lvm2
9
8
  yum-config-manager --add-repo https://download.docker.com/linux/$TARGET/docker-ce.repo
10
- dnf install -y containerd.io
9
+ dnf install -y yum-utils device-mapper-persistent-data lvm2 containerd.io
11
10
  {% endif %}
12
11
 
13
12
  mkdir -p /etc/containerd
@@ -12,9 +12,33 @@ gpgkey=https://pkgs.k8s.io/core:/stable:/$VERSION/rpm/repodata/repomd.xml.key"""
12
12
 
13
13
  export PATH=/root/bin:$PATH
14
14
 
15
+ {% if ipv6 %}
16
+ dnf -y install httpd createrepo
17
+ {% if engine == 'crio' %}
18
+ PROJECT_PATH={{ engine_version or 'stable:/$VERSION' }}
19
+ echo """[cri-o]
20
+ name=CRI-O
21
+ baseurl=https://download.opensuse.org/repositories/isv:/cri-o:/$PROJECT_PATH/rpm
22
+ enabled=1
23
+ gpgcheck=1
24
+ gpgkey=https://download.opensuse.org/repositories/isv:/cri-o:/$PROJECT_PATH/rpm/repodata/repomd.xml.key""" >/etc/yum.repos.d/cri-o.repo
25
+ PACKAGES="cri-o conntrack"
26
+ {% else %}
27
+ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
28
+ PACKAGES="device-mapper-persistent-data lvm2 containerd.io"
29
+ {% endif %}
30
+ # SYNC PACKAGES
31
+ dnf -y install --setopt=keepcache=1 kubeadm $PACKAGES git kubectl kubelet iptables keepalived
32
+ dnf download --destdir /var/www/html container-selinux selinux-policy selinux-policy-any iptables iptables-libs libnftnl
33
+ mv /var/cache/dnf/*/packages/*.rpm /var/www/html
34
+ createrepo /var/www/html
35
+ restorecon -Frvv /var/www/html
36
+ sed -i "s/Listen 80/Listen 8080/" /etc/httpd/conf/httpd.conf
37
+ systemctl enable --now httpd
38
+ {% endif %}
39
+
15
40
  # KUBEADM
16
41
  IMAGES_VERSION=$(echo $VERSION| sed 's/^v/stable-/')
17
- yum -y install kubeadm
18
42
  for image in $(kubeadm config images list --kubernetes-version $IMAGES_VERSION) ; do sync_image.sh $image ; done
19
43
 
20
44
  cd /root
@@ -23,15 +47,9 @@ cd /root
23
47
  {% if sdn == 'flannel' %}
24
48
  FLANNEL_VERSION={{ 'flannel-io/flannel'|github_version(flannel_version) }}
25
49
  curl -Ls https://raw.githubusercontent.com/flannel-io/flannel/$FLANNEL_VERSION/Documentation/kube-flannel.yml > sdn.yml
26
- {% elif sdn == 'weavenet' %}
27
- curl -Ls -f "https://cloud.weave.works/k8s/net?k8s-version=`kubectl version | base64 | tr -d '\n'`" > sdn.yml
28
50
  {% elif sdn == 'calico' %}
29
51
  CALICO_VERSION={{ 'projectcalico/calico'|github_version(calico_version) }}
30
52
  curl -Ls https://raw.githubusercontent.com/projectcalico/calico/$CALICO_VERSION/manifests/tigera-operator.yaml > sdn.yml
31
- {% elif sdn == 'canal' %}
32
- curl -Ls https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/canal/canal.yaml > sdn.yml
33
- {% elif sdn == 'romana' %}
34
- curl -Ls https://raw.githubusercontent.com/romana/romana/master/containerize/specs/romana-kubeadm.yml > sdn.yml
35
53
  {% elif sdn == 'cilium' %}
36
54
  curl -LO https://github.com/cilium/cilium-cli/releases/latest/download/cilium-linux-amd64.tar.gz
37
55
  tar xzvfC cilium-linux-amd64.tar.gz /usr/local/bin
@@ -42,11 +60,12 @@ for image in $CILIUM_IMAGES ; do echo image: $image:$CILIUM_VERSION >> sdn.yml ;
42
60
  echo image: quay.io/cilium/cilium-envoy:latest >> sdn.yml
43
61
  {% endif %}
44
62
 
63
+ [ -d /var/www/html ] && [ -f sdn.yml ] && cp sdn.yml /var/www/html/sdn.yml && restorecon -Frvv /var/www/html
45
64
  sdn_images=$(grep image: sdn.yml | sed 's/image: //' | sed 's/@.*//' | sort -u)
46
65
  for image in $sdn_images ; do sync_image.sh $image ; done
47
66
  {% endif %}
48
67
 
49
- #NGINX
68
+ # NGINX
50
69
  curl -Lk https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/{{ 'cloud' if metallb|default(False) else 'baremetal' }}/deploy.yaml > ingress.yml
51
70
  nginx_images=$(grep image: ingress.yml | sed 's/.* image: //' | sed 's/@.*//' | sort -u)
52
71
  for image in $nginx_images ; do sync_image.sh $image ; done
@@ -3,7 +3,7 @@ info: |
3
3
  when using more than one ctlplane, a vip is used with keepalived.
4
4
  default image is centos9stream, but there's also support for ubuntu based ones and fedora.
5
5
  version can be let blank to get latest, or specified as x.yy or x.yy.z .
6
- sdn can be choosen between flannel, weavenet, calico, canal, romana or cilium.
6
+ sdn can be choosen between flannel, calico or cilium.
7
7
  nfs can be set to deploy an initial set of pvcs on the first ctlplane node.
8
8
  You can deploy extra apps with the apps array and for each of the supported apps, indicate with the variable
9
9
  ${app}_version which version to target.
@@ -20,6 +20,7 @@ version:
20
20
  pool:
21
21
  cluster: mykube
22
22
  domain: karmalabs.corp
23
+ ctlplane_schedulable: false
23
24
  engine: containerd
24
25
  engine_version:
25
26
  numcpus: 4
@@ -93,3 +94,8 @@ kube_proxy: true
93
94
  ignore_hosts: false
94
95
  runtime_config: []
95
96
  postscripts: []
97
+ cluster_network_ipv6: "fd01::/48"
98
+ service_network_ipv6: "fd02::/112"
99
+ dualstack: false
100
+ cluster_networks: []
101
+ service_networks: []
@@ -2,12 +2,23 @@ VERSION={{ version or "$(curl -L -s https://dl.k8s.io/release/stable.txt)" }}
2
2
  # Ensure the version is in the format v<major>.<minor> regardless of the source
3
3
  VERSION=$(echo "v${VERSION#v}" | cut -d. -f1,2)
4
4
 
5
+ {% if ipv6 %}
6
+ rm -rf /etc/yum.repos.d/*.repo
7
+ BASEURL=http://{{ disconnected_url.split(':')[0] }}:8080
8
+ GPGCHECK=0
9
+ sed -i "/cri-o.repo/a\echo rm -f /etc/yum.repos.d/cri-o.repo" /root/crio-d.sh
10
+ sed -i "/add-repo/d" /root/containerd.sh
11
+ {% else %}
12
+ BASEURL=https://pkgs.k8s.io/core:/stable:/$VERSION/rpm/
13
+ GPGCHECK=1
14
+ {% endif %}
15
+
5
16
  echo """[kubernetes]
6
17
  name=Kubernetes
7
- baseurl=https://pkgs.k8s.io/core:/stable:/$VERSION/rpm/
18
+ baseurl=$BASEURL
8
19
  enabled=1
9
- gpgcheck=1
10
- gpgkey=https://pkgs.k8s.io/core:/stable:/$VERSION/rpm/repodata/repomd.xml.key""" >/etc/yum.repos.d/kubernetes.repo
20
+ gpgcheck=$GPGCHECK
21
+ gpgkey=https://pkgs.k8s.io/core:/stable:/$VERSION/rpm/repodata/repomd.xml.key""" > /etc/yum.repos.d/kubernetes.repo
11
22
  echo net.bridge.bridge-nf-call-iptables=1 >> /etc/sysctl.d/99-sysctl.conf
12
23
  sysctl -p
13
24
  setenforce 0
@@ -27,6 +38,8 @@ cat <<EOF | tee /etc/sysctl.d/99-kubernetes-cri.conf
27
38
  net.bridge.bridge-nf-call-iptables = 1
28
39
  net.ipv4.ip_forward = 1
29
40
  net.bridge.bridge-nf-call-ip6tables = 1
41
+ net.ipv6.conf.all.forwarding = 1
42
+ net.ipv6.conf.default.forwarding = 1
30
43
  EOF
31
44
  sysctl --system
32
45
 
@@ -21,6 +21,8 @@ cat <<EOF | tee /etc/sysctl.d/99-kubernetes-cri.conf
21
21
  net.bridge.bridge-nf-call-iptables = 1
22
22
  net.ipv4.ip_forward = 1
23
23
  net.bridge.bridge-nf-call-ip6tables = 1
24
+ net.ipv6.conf.all.forwarding = 1
25
+ net.ipv6.conf.default.forwarding = 1
24
26
  EOF
25
27
  sysctl --system
26
28
 
@@ -0,0 +1,34 @@
1
+ POD_CIDR={{ cluster_network_ipv6 if ipv6 else cluster_network_ipv4 }}
2
+ # install Container Network Interface (CNI)
3
+ {% if sdn == 'flannel' %}
4
+ {% if ipv6 %}
5
+ curl -Ls http://{{ disconnected_url.split(':')[0] }}:8080/sdn.yml > /root/sdn.yml
6
+ sed -i "s@10.244.0.0/16@$POD_CIDR@" /root/sdn.yml
7
+ sed -i 's/"Network":/"IPV6Network":/' /root/sdn.yml
8
+ sed -i '/"IPV6Network":/a\ "EnableIPV4": false,\n "EnableIPV6": true,' /root/sdn.yml
9
+ {% else %}
10
+ FLANNEL_VERSION={{ 'flannel-io/flannel'|github_version(flannel_version) }}
11
+ curl -Ls https://raw.githubusercontent.com/flannel-io/flannel/$FLANNEL_VERSION/Documentation/kube-flannel.yml > /root/sdn.yml
12
+ sed -i "s@10.244.0.0/16@$POD_CIDR@" /root/sdn.yml
13
+ {% if dualstack %}
14
+ sed -i '/"Network":/a\ "IPV6Network": "{{ cluster_network_ipv6 }}",\n "EnableIPV4": true,\n "EnableIPV6": true,' /root/sdn.yml
15
+ {% endif %}
16
+ {% endif %}
17
+ kubectl apply -f /root/sdn.yml
18
+ {% elif sdn == 'calico' %}
19
+ CALICO_VERSION={{ 'projectcalico/calico'|github_version(calico_version) }}
20
+ curl -L https://raw.githubusercontent.com/projectcalico/calico/$CALICO_VERSION/manifests/tigera-operator.yaml > /root/tigera-operator.yaml
21
+ curl -L https://raw.githubusercontent.com/projectcalico/calico/$CALICO_VERSION/manifests/custom-resources.yaml > /root/tigera-custom-resources.yaml
22
+ sed -i "s@192.168.0.0/16@$POD_CIDR@" /root/tigera-custom-resources.yaml
23
+ kubectl create -f /root/tigera-operator.yaml
24
+ sleep 10
25
+ kubectl create -f /root/tigera-custom-resources.yaml
26
+ {% elif sdn == 'cilium' %}
27
+ curl -LO https://github.com/cilium/cilium-cli/releases/latest/download/cilium-linux-amd64.tar.gz
28
+ tar xzvfC cilium-linux-amd64.tar.gz /usr/local/bin
29
+ rm -f cilium-linux-amd64.tar.gz
30
+ CILIUM_VERSION={{ "--version %s" % sdn_version if sdn_version != None else "" }}
31
+ CILIUM_REGISTRY={{ "--helm-set=image.repository=%s/cilium/cilium --helm-set image.useDigest=false --helm-set=envoy.image.repository=%s/cilium/cilium-envoy --helm-set=envoy.image.tag=latest --helm-set=envoy.image.useDigest=false --helm-set=operator.image.repository=%s/cilium/operator --helm-set=operator.image.useDigest=false" % (disconnected_url, disconnected_url, disconnected_url) if disconnected_url is defined else "" }}
32
+ CILIUM_IPV6={{ "--helm-set=ipv6.enabled=true" if ipv6 or dualstack else "" }}
33
+ cilium install $CILIUM_VERSION $CILIUM_REGISTRY $CILIUM_IPV6
34
+ {% endif %}
@@ -11,6 +11,7 @@ from kvirt.common import ssh, scp, _ssh_credentials, get_ssh_pub_key
11
11
  from kvirt.common import start_baremetal_hosts_with_iso, update_baremetal_hosts, get_new_vip, process_postscripts
12
12
  from kvirt.defaults import LOCAL_OPENSHIFT_APPS, OPENSHIFT_TAG
13
13
  import os
14
+ import platform
14
15
  import re
15
16
  from random import choice
16
17
  from shutil import copy2, move, rmtree, which
@@ -658,6 +659,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
658
659
  ctlplanes = data['ctlplanes']
659
660
  if ctlplanes <= 0:
660
661
  return {'result': 'failure', 'reason': f"Invalid number of ctlplanes {ctlplanes}"}
662
+ ctlplane_schedulable = data['ctlplane_schedulable']
661
663
  workers = data['workers']
662
664
  if workers < 0:
663
665
  return {'result': 'failure', 'reason': f"Invalid number of workers {workers}"}
@@ -788,7 +790,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
788
790
  if os.path.exists('coreos-installer'):
789
791
  pprint("Removing old coreos-installer")
790
792
  os.remove('coreos-installer')
791
- if version not in ['ci', 'candidate', 'nightly', 'stable']:
793
+ if version not in ['ci', 'candidate', 'latest', 'nightly', 'stable']:
792
794
  return {'result': 'failure', 'reason': f"Incorrect version {version}"}
793
795
  else:
794
796
  pprint(f"Using {version} version")
@@ -984,6 +986,10 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
984
986
  cacmd = f"openssl s_client -showcerts -connect {disconnected_url} </dev/null 2>/dev/null|"
985
987
  cacmd += "openssl x509 -outform PEM"
986
988
  data['ca'] = os.popen(cacmd).read()
989
+ kcli_images = ["curl:multi", "origin-coredns:multi", "haproxy:multi", "origin-keepalived-ipfailover:multi",
990
+ "mdns-publisher:multi", "kubectl:multi"]
991
+ kcli_images = '\n'.join([f'quay.io/karmab/{image}' for image in kcli_images])
992
+ warning(f"Make sure to push the following images in your registry: {kcli_images}")
987
993
  if sno:
988
994
  pass
989
995
  elif image is None:
@@ -1024,6 +1030,10 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
1024
1030
  if not images:
1025
1031
  msg = f"Missing {image}. Indicate correct image in your parameters file..."
1026
1032
  return {'result': 'failure', 'reason': msg}
1033
+ if provider in virt_providers and platform.machine() != arch:
1034
+ pprint(f"Forcing release image to {arch}")
1035
+ base_url = 'quay.io/okd/scos-release' if okd else 'quay.io/openshift-release-dev'
1036
+ os.environ['OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE'] = f'{base_url}:{INSTALLER_VERSION}-{arch}'
1027
1037
  overrides['image'] = image
1028
1038
  static_networking_ctlplane, static_networking_worker = False, False
1029
1039
  macentries = []
@@ -1108,6 +1118,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
1108
1118
  if disconnected_url is not None:
1109
1119
  if disconnected_update and disconnected_url != 'quay.io':
1110
1120
  data['release_tag'] = f'v4.{get_installer_minor(INSTALLER_VERSION)}'
1121
+ data['openshift_version'] = INSTALLER_VERSION
1111
1122
  update_registry(config, plandir, cluster, data)
1112
1123
  key = f"{disconnected_user}:{disconnected_password}"
1113
1124
  key = str(b64encode(key.encode('utf-8')), 'utf-8')
@@ -1227,7 +1238,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
1227
1238
  'mtu': mtu, 'mode': ipsec_mode})
1228
1239
  with open(f"{clusterdir}/openshift/99-ovn.yaml", 'w') as f:
1229
1240
  f.write(ovn_data)
1230
- if workers == 0 or not mdns or kubevirt_api_service:
1241
+ if ctlplane_schedulable or workers == 0 or not mdns or kubevirt_api_service:
1231
1242
  copy2(f'{plandir}/cluster-scheduler-02-config.yml', f"{clusterdir}/manifests")
1232
1243
  if 'sslip' in domain:
1233
1244
  ingress_sslip_data = config.process_inputfile(cluster, f"{plandir}/cluster-ingress-02-config.yml",
@@ -1,3 +1,4 @@
1
+ {{ "storagecluster" | wait_crd }}
1
2
  {% if odf_nodes %}
2
3
  {% set nodes = odf_nodes %}
3
4
  {% elif localstorage_nodes is defined %}
@@ -26,6 +26,7 @@ api_ip:
26
26
  ingress_ip:
27
27
  ctlplanes: 3
28
28
  workers: 0
29
+ ctlplane_schedulable: false
29
30
  fips: false
30
31
  cluster: myopenshift
31
32
  domain: karmalabs.corp
@@ -30,6 +30,8 @@ from tempfile import TemporaryDirectory
30
30
  from time import sleep
31
31
  import yaml
32
32
 
33
+ _original_construct_mapping = yaml.SafeLoader.construct_mapping
34
+
33
35
 
34
36
  class NoAliasDumper(yaml.SafeDumper):
35
37
  def ignore_aliases(self, data):
@@ -943,16 +945,7 @@ def ssh(name, ip='', user=None, local=None, remote=None, tunnel=False, tunnelhos
943
945
  sshcommand = f'{sshcommand} "{cmd}"'
944
946
  if tunnelhost is not None and tunnelhost not in ['localhost', '127.0.0.1'] and tunnel and\
945
947
  tunneluser is not None:
946
- if insecure:
947
- tunnelcommand = "-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o LogLevel=ERROR "
948
- else:
949
- tunnelcommand = ""
950
- tunnelcommand += f"-qp {tunnelport} -W %h:%p {tunneluser}@{tunnelhost}"
951
- if identityfile is not None:
952
- tunnelcommand = f"-i {identityfile} {tunnelcommand}"
953
- sshcommand = f"-o ProxyCommand='ssh {tunnelcommand}' {sshcommand}"
954
- if ':' in ip:
955
- sshcommand = sshcommand.replace(ip, f'[{ip}]')
948
+ sshcommand = f"-J {tunneluser}@{tunnelhost}:{tunnelport} {sshcommand}"
956
949
  if local is not None:
957
950
  sshcommand = f"-L {local} {sshcommand}"
958
951
  if remote is not None:
@@ -979,8 +972,7 @@ def scp(name, ip='', user=None, source=None, destination=None, recursive=None, t
979
972
  arguments = ''
980
973
  if tunnelhost is not None and tunnelhost not in ['localhost', '127.0.0.1'] and\
981
974
  tunnel and tunneluser is not None:
982
- h = "[%h]" if ':' in ip else "%h"
983
- arguments += f"-o ProxyCommand='ssh -qp {tunnelport} -W {h}:%p {tunneluser}@{tunnelhost}'"
975
+ arguments += f"-J {tunneluser}@{tunnelhost}:{tunnelport}"
984
976
  if insecure:
985
977
  arguments += " -o LogLevel=quiet -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
986
978
  scpcommand = 'scp -q'
@@ -1582,7 +1574,7 @@ def is_debian9(image):
1582
1574
 
1583
1575
 
1584
1576
  def is_debian_new(image):
1585
- return 'debian10' in image.lower() or 'debian12' in image.lower()
1577
+ return 'debian' in image.lower() and image.lower() != 'debian9' and image.lower() != 'debian8'
1586
1578
 
1587
1579
 
1588
1580
  def is_ubuntu(image):
@@ -2522,7 +2514,11 @@ def plan_constructor(loader, node, deep=False):
2522
2514
  for key_node, value_node in node.value:
2523
2515
  key = loader.construct_object(key_node, deep=deep)
2524
2516
  value = loader.construct_object(value_node, deep=deep)
2525
- if isinstance(value, dict):
2517
+ if key == "vmrules":
2518
+ value = [_original_construct_mapping(loader, item_node, deep=deep) for item_node in value_node.value]
2519
+ mapping[key] = value
2520
+ continue
2521
+ elif isinstance(value, dict):
2526
2522
  _type = value.get('type', 'vm')
2527
2523
  if key == 'parameters':
2528
2524
  mapping[key] = value
@@ -320,7 +320,6 @@ class Kconfig(Kbaseconfig):
320
320
  isofolder = isofolder[1:]
321
321
  isofolder = f'[{isopool}]/{isofolder}'
322
322
  filtervms = options.get('filtervms', VSPHERE['filtervms'])
323
- filtervms = options.get('filteruser', VSPHERE['filteruser'])
324
323
  filteruser = options.get('filteruser', VSPHERE['filteruser'])
325
324
  filtertag = options.get('filtertag')
326
325
  category = options.get('category', VSPHERE['category'])
@@ -2556,6 +2555,8 @@ class Kconfig(Kbaseconfig):
2556
2555
  def create_kube(self, cluster, kubetype, overrides={}):
2557
2556
  cwd = os.getcwd()
2558
2557
  cluster = overrides.get('cluster') or cluster or f"my{kubetype}"
2558
+ if 'domain' in overrides and overrides['domain'] == 'local':
2559
+ return {'result': 'failure', 'reason': 'Invalid domain .local'}
2559
2560
  if self.type == 'web' and self.k.localkube:
2560
2561
  return self.k.create_kube(cluster, kubetype, overrides)
2561
2562
  ippool = overrides.get('ippool') or overrides.get('confpool')
@@ -56,11 +56,13 @@ IMAGES = {'almalinux8': f'{ALMA}/8/cloud/x86_64/images/AlmaLinux-8-GenericCloud-
56
56
  'debian10': f'{DEBIAN}/openstack/current-10/debian-10-openstack-amd64.qcow2',
57
57
  'debian11': f'{DEBIAN}/cloud/bullseye/latest/debian-11-generic-amd64.qcow2',
58
58
  'debian12': f'{DEBIAN}/cloud/bookworm/latest/debian-12-generic-amd64.qcow2',
59
+ 'debian13': f'{DEBIAN}/cloud/trixie/latest/debian-13-generic-amd64.qcow2',
59
60
  'fcos': 'https://builds.coreos.fedoraproject.org/streams/stable.json',
60
61
  'fedora39': f'{FEDORA}/39/Cloud/x86_64/images/Fedora-Cloud-Base-39-1.5.x86_64.qcow2',
61
62
  'fedora40': f'{FEDORA}/40/Cloud/x86_64/images/Fedora-Cloud-Base-Generic.x86_64-40-1.14.qcow2',
62
63
  'fedora41': f'{FEDORA}/41/Cloud/x86_64/images/Fedora-Cloud-Base-Generic-41-1.4.x86_64.qcow2',
63
64
  'fedora42': f'{FEDORA}/42/Cloud/x86_64/images/Fedora-Cloud-Base-Generic-42-1.1.x86_64.qcow2',
65
+ 'fedora43': f'{FEDORA}/43/Cloud/x86_64/images/Fedora-Cloud-Base-Generic-43-1.6.x86_64.qcow2',
64
66
  'fedoralatest': 'https://alt.fedoraproject.org/cloud',
65
67
  'freebsd122': f'{BSD}/freebsd/12.2/freebsd-12.2.qcow2',
66
68
  'freebsd130': f'{BSD}/freebsd/13.0/freebsd-13.0-zfs.qcow2',
@@ -2,6 +2,7 @@ arch: Architecture
2
2
  emulator: Custom emulator
3
3
  extra_iso: Extra Iso to plug to the node
4
4
  floppy: Floppy to plug to the node
5
+ fwzone: firewall zone where to put a given network
5
6
  hugepages: hugepages flag
6
7
  hugepages_1gb: 1gb hugepages flag
7
8
  hugepages_2mb: 2mb hugepages flag
@@ -38,22 +38,6 @@ class Khcloud():
38
38
  if len(disks) > 0:
39
39
  disks = disks[1:]
40
40
 
41
- volumeresponses = []
42
- for index, disk in enumerate(disks):
43
- if isinstance(disk, int):
44
- disksize = disk
45
- elif isinstance(disk, str) and disk.isdigit():
46
- disksize = int(disk)
47
- elif isinstance(disk, dict):
48
- disksize = disk.get('size', '10')
49
-
50
- diskname = f"{name}-disk{index}"
51
- volumeresponse = self.conn.volumes.get_by_name(diskname)
52
- if volumeresponse is None:
53
- volumeresponse = self.conn.volumes.create(disksize, diskname, location=self.location,
54
- labels={"kcli-managed": "volume"})
55
- volumeresponses.append(volumeresponse)
56
-
57
41
  if not keys:
58
42
  publickeyfile = get_ssh_pub_key()
59
43
  if publickeyfile is not None:
@@ -114,40 +98,67 @@ class Khcloud():
114
98
 
115
99
  placement_group = response.placement_group
116
100
 
101
+ # If "location_options" is specified use it, otherwise "location", otherwise use self.location
102
+ location_options = overrides.get("location_options", [overrides.get("location", self.location.name)])
117
103
  flavor_options = overrides.get("flavor_options", [flavor] if flavor is not None else [])
118
104
 
119
- for idx, flavor_option in enumerate(flavor_options):
120
- servertype = self.conn.server_types.get_by_name(flavor_option)
121
- if "snapshot_id" in overrides:
122
- hetzner_image = self.conn.images.get_by_id(overrides.get("snapshot_id"))
123
- else:
124
- hetzner_image = self.conn.images.get_by_name_and_architecture(image, servertype.architecture)
125
-
126
- try:
127
- created_vm = self.conn.servers.create(
128
- name=name,
129
- server_type=servertype,
130
- image=hetzner_image,
131
- start_after_create=False,
132
- user_data=userdata,
133
- volumes=[],
134
- ssh_keys=hetzner_ssh_keys,
135
- location=self.location,
136
- public_net=ServerCreatePublicNetwork(enable_ipv4=False, enable_ipv6=False),
137
- labels=labels,
138
- placement_group=placement_group
139
- )
140
-
141
- created_vm.action.wait_until_finished(300)
142
- break
143
- except APIException as e:
144
- if e.code == "resource_unavailable":
145
- msg = f"Could not get server of type '{flavor_option}' in location '{self.location.name}'"
146
- if len(flavor_options) > (idx + 1):
147
- warning(f"{msg}' trying the next configured flavor option.")
105
+ volumeresponses = []
106
+ for location_option in location_options:
107
+ location = self.conn.locations.get_by_name(location_option)
108
+ created_vm = None
109
+ for idx, flavor_option in enumerate(flavor_options):
110
+ if self.debug:
111
+ pprint(f"Trying to create VM {name} in location {location.name} with flavor {flavor_option}")
112
+ servertype = self.conn.server_types.get_by_name(flavor_option)
113
+ if "snapshot_id" in overrides:
114
+ hetzner_image = self.conn.images.get_by_id(overrides.get("snapshot_id"))
115
+ else:
116
+ hetzner_image = self.conn.images.get_by_name_and_architecture(image, servertype.architecture)
117
+
118
+ try:
119
+ created_vm = self.conn.servers.create(
120
+ name=name,
121
+ server_type=servertype,
122
+ image=hetzner_image,
123
+ start_after_create=False,
124
+ user_data=userdata,
125
+ volumes=[],
126
+ ssh_keys=hetzner_ssh_keys,
127
+ location=location,
128
+ public_net=ServerCreatePublicNetwork(enable_ipv4=False, enable_ipv6=False),
129
+ labels=labels,
130
+ placement_group=placement_group
131
+ )
132
+
133
+ for index, disk in enumerate(disks):
134
+ if isinstance(disk, int):
135
+ disksize = disk
136
+ elif isinstance(disk, str) and disk.isdigit():
137
+ disksize = int(disk)
138
+ elif isinstance(disk, dict):
139
+ disksize = disk.get('size', '10')
140
+
141
+ diskname = f"{name}-disk{index}"
142
+ volumeresponse = self.conn.volumes.get_by_name(diskname)
143
+ if volumeresponse is None:
144
+ volumeresponse = self.conn.volumes.create(disksize, diskname, location=location,
145
+ labels={"kcli-managed": "volume"})
146
+ volumeresponses.append(volumeresponse)
147
+
148
+ created_vm.action.wait_until_finished(300)
149
+ break
150
+ except APIException as e:
151
+ if e.code == "resource_unavailable":
152
+ msg = f"Could not get server of type '{flavor_option}' in location '{location.name}'"
153
+ if len(flavor_options) > (idx + 1):
154
+ warning(f"{msg}, trying the next configured flavor option.")
155
+ else:
156
+ warning(msg)
157
+ error("No more flavors available to try. Define more flavors in 'flavor_options'.")
148
158
  else:
149
- warning(msg)
150
- error("No more flavors available to try. Define more flavors in 'flavor_options'.")
159
+ return {'result': 'failure', 'reason': json.dumps(e)}
160
+ if created_vm is not None:
161
+ break
151
162
 
152
163
  created_vm = created_vm.server
153
164
 
@@ -751,6 +751,7 @@ class Kubevirt():
751
751
  from websocket import create_connection
752
752
  except:
753
753
  error("You need to install websocket-client package")
754
+ return
754
755
  kubectl = self.kubectl
755
756
  namespace = self.namespace
756
757
  vm = _get_resource(kubectl, 'vm', name, namespace, debug=self.debug)