kcli 99.0.202601080647__py3-none-any.whl → 99.0.202601091438__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kcli
3
- Version: 99.0.202601080647
3
+ Version: 99.0.202601091438
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,8 +1,8 @@
1
- kcli-99.0.202601080647.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
1
+ kcli-99.0.202601091438.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
2
2
  kvirt/__init__.py,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
3
3
  kvirt/baseconfig.py,sha256=QG_AHI1_HAgHwIdZSm1BXkpn9pW35kTMUkFOb7UE_wY,83513
4
4
  kvirt/bottle.py,sha256=K24aCQYSylDpkxmLYGygSpAJ4MlMqMk85AMpbCWA43c,175729
5
- kvirt/cli.py,sha256=D1lMERW5zuH6H7vzJHIX2UIdcpv16V2CaV-Ear3UTC8,265483
5
+ kvirt/cli.py,sha256=EuroGNpbC4Ze7dOtE-mjjsxZ913pOTsrrbEXIyG9bPw,265630
6
6
  kvirt/config.py,sha256=Vw_9kP7IYRk4kiY-95Ku98TWdt6ZVSGNMGFSNspoYhk,184633
7
7
  kvirt/containerconfig.py,sha256=qbvOWwFlyU2F-4rZn9PLj97wDnSBIwAYA6Xlxr13OOc,2329
8
8
  kvirt/defaults.py,sha256=vZFFUI_hegVf2W2Zle0fTcSQNhcStJGWXtrBXTYE22E,12401
@@ -67,7 +67,7 @@ kvirt/cluster/k3s/workers.yml,sha256=HD1MkMcRKwvFndoMJOS8fC1f_O1vfzi27PVwR4GN_7k
67
67
  kvirt/cluster/kubeadm/10-flannel.link,sha256=A3vdnP3LIhIyF07oG_AOVPnikQ1AvXuE-FIdhmi8Iqk,59
68
68
  kvirt/cluster/kubeadm/90-flannel.rules,sha256=FJGctcom8HKGD_VKSJkKFAVv8GznTkY6ORxZNRIFB0Q,302
69
69
  kvirt/cluster/kubeadm/__init__.py,sha256=NpZRuddBtSu-lDF_u7r79_4qqv5L3ga9WTfrh-n4URQ,17579
70
- kvirt/cluster/kubeadm/bootstrap.sh,sha256=7-ITW2AGL5OTkQWFP1WefSrC2_dq5lGTzYj-ujW_Qew,3243
70
+ kvirt/cluster/kubeadm/bootstrap.sh,sha256=qmOj0jVVE4loqShC1z_ASqY9eNr6lmfSYjxi3ZKmPKY,3267
71
71
  kvirt/cluster/kubeadm/bootstrap.yml,sha256=MwM1DyrB66RzDFn3VMczSkeJpfI8qrOIdCVctTmmmmA,1708
72
72
  kvirt/cluster/kubeadm/cloud_lb_api.yml,sha256=dTH4qdnvhPRk0mhZh1tkX8D9Zsg24nvmC4cxXMRNxJk,338
73
73
  kvirt/cluster/kubeadm/config_bootstrap.yaml,sha256=b33L1C-56tts0rwTpflJiVGsZbvcyRUJD9dzg-_uf4g,2130
@@ -79,7 +79,7 @@ kvirt/cluster/kubeadm/ctlplanes.yml,sha256=ur38ztsAbvIEl2Jv4sLvYU9wCrx2_fJJ9aiHB
79
79
  kvirt/cluster/kubeadm/deploy.sh,sha256=aUxbHM5sPvzTivEwCHLqiZud5nAxPqqwyjw453e23N8,362
80
80
  kvirt/cluster/kubeadm/disconnected.yml,sha256=ntIU2kPXJfDJiW9b2aip4QdmricDTUxzZ6ZrwUeH6kc,754
81
81
  kvirt/cluster/kubeadm/join.sh,sha256=JIkMmRDlCzi-MshamKizHUiJCSzshvESjo9inN47ItA,267
82
- kvirt/cluster/kubeadm/kcli_default.yml,sha256=4vO3t2kGHkzmoU4hILyBum08Yxh4a8n7aO785B4zflU,2449
82
+ kvirt/cluster/kubeadm/kcli_default.yml,sha256=xynok8RbDiavCQNm4zEuZVrOnY_i8-DOj3r9N08s4m8,2477
83
83
  kvirt/cluster/kubeadm/keepalived.conf,sha256=OwQ_PozqBMzAULPjjJ2TbAHK3n9BE5gyCqkqZ0SFmic,588
84
84
  kvirt/cluster/kubeadm/keepalived.sh,sha256=D4oRKdrjHPERIFc3N8y75vWoDyLeNj1xk1WCVFEpm8Y,470
85
85
  kvirt/cluster/kubeadm/nfs.sh,sha256=g_8yPIpKedLwiXJ9FkMC2R6pCANSMX8SVWk-WDML1vY,1769
@@ -176,7 +176,7 @@ kvirt/cluster/openshift/99-ovn.yaml,sha256=cdEJWIVdFsaYLWtp5_v3TSI0sFTzYZvo2Euaj
176
176
  kvirt/cluster/openshift/99-prega-catalog.yaml,sha256=kRRCkq7joALdpeZlOL4zXvtZod6XRnk_mBgE7rTWxLA,313
177
177
  kvirt/cluster/openshift/99-sno.yaml,sha256=JFxdhvChu1o29fOzDyfuU-jtcfcLXd7G7YAt8y9HGU8,488
178
178
  kvirt/cluster/openshift/Corefile,sha256=lSF1OmirH2vyxO9qNItWzYLp-sLYF4z5liAX6LjTRkw,792
179
- kvirt/cluster/openshift/__init__.py,sha256=AcNBFIcxSyo9eYSsjZFUtPLw0nzr9ZzfdtG09fZY7Kg,97298
179
+ kvirt/cluster/openshift/__init__.py,sha256=cWYEKocaWi2HA5XMpG_TYA1iBki2tLfgqbZsRXkpcZY,97378
180
180
  kvirt/cluster/openshift/autoapprovercron.yml,sha256=vR2IRwjNpu4rQDy3H_EDSt3Is0o7A7CIo_zbqcEv8ww,1324
181
181
  kvirt/cluster/openshift/autorules.yml,sha256=j0WEdUDUDbQrnMGEZXFRe3vNz2JQLNaDr_EjaucgAu8,985
182
182
  kvirt/cluster/openshift/bgp-vip.sh,sha256=e70UJTxb7H_mWK1Zi7ofHV2ISqWZYfpOG0tArtn8Dvo,459
@@ -210,7 +210,7 @@ kvirt/cluster/openshift/ignition.j2,sha256=VtxnuPpvo6P9MzxwdZu2CgqdCp-bPwOESocsY
210
210
  kvirt/cluster/openshift/install-config.yaml,sha256=N-TEDg535JaaR90gIfvCbAUyED-p_qHELWcRLTUaMCY,5557
211
211
  kvirt/cluster/openshift/iso.sh,sha256=L4hKptsajM8znpjebJRuPNJrZNrw5PoDz60XCgvYf-c,3446
212
212
  kvirt/cluster/openshift/kcli-ipv6.conf.j2,sha256=y2KAdA2fGNUO-Nazj9EEgUawrzFQeFb1Y_USBN9BySI,237
213
- kvirt/cluster/openshift/kcli_default.yml,sha256=RHNhAHKPihmW8Bl_nkTg3DPuEP2rZ2fWqQZzz9Oxc3k,5219
213
+ kvirt/cluster/openshift/kcli_default.yml,sha256=L8XxoPGpbTWpB86bYnx5qZip73J5JMYKDa7s8qBviZE,5247
214
214
  kvirt/cluster/openshift/keepalived.conf,sha256=8M96LIrqt7v963NBoJQVj5JxgEQM2JODYLPFkyJUet0,2050
215
215
  kvirt/cluster/openshift/nonlocalbind.conf,sha256=eRCLfWYHqx2UgY3QE1pbXm2iFwERatyihNySEEbeuE8,60
216
216
  kvirt/cluster/openshift/openshift-workload-pinning,sha256=hBNL3GLj5yqlIkqIIujA4r7OuGmeFWjmofLBA6j-6Xo,59
@@ -403,7 +403,7 @@ kvirt/providers/vsphere/helpers.py,sha256=eJnwVGdWArTurH5ckzScvLThNJaMWeakdxBbDT
403
403
  kvirt/providers/vsphere/tagging.py,sha256=7RqFIUETSzHAjS0F_8-j145-_8lca7aDUsCxs4DhQVQ,4893
404
404
  kvirt/providers/web/__init__.py,sha256=_9fv0_x5VomFrMZqTsMLHkIRkvujmFgTxggtRctvMD0,22053
405
405
  kvirt/version/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
- kvirt/version/git,sha256=HkEho53GxD0ceHnsAma3MA_bPGPfgnWaVXre6x9b2NA,19
406
+ kvirt/version/git,sha256=RzX6GjVPTz0vPam1N5lSz_PAhVJu-5XUoOfyQmWtsQc,19
407
407
  kvirt/web/__init__.py,sha256=QW-FVaQGYogXwgV2g4f0J9s0QqUI6qIyX1ruRaiI8Yk,46658
408
408
  kvirt/web/main.py,sha256=DIb6tW3ce7wCc83kD9HBCG4ALJuLItp9uaP6tzdsm_Y,261
409
409
  kvirt/web/static/css/bootstrap-notify.css,sha256=ibUTW-jDj-F8d1T1KZ4DOujRmVTFfvMKL9y14QgEaPQ,408
@@ -645,8 +645,8 @@ kvirt/web/templates/vmprofiles.html,sha256=T65Cv7povhBtD2dyuWkWJE6byaA9EYtLSk5gt
645
645
  kvirt/web/templates/vmprofilestable.html,sha256=-8viNOqSvN_yzimENxq7Q0187zbflOn8p8zpgx0Vyek,1420
646
646
  kvirt/web/templates/vms.html,sha256=k2ptKeiLFdpzgfbk6xi__sduu0UALYXXrnrmDEmAfaQ,470
647
647
  kvirt/web/templates/vmstable.html,sha256=ikuYkIm_ocvGIBXFyJt1-tBjwQWCyqkgC08leoXgR54,4894
648
- kcli-99.0.202601080647.dist-info/METADATA,sha256=vqYIys_2BBy26eD3rpgrDJWJEdS1vJgujZm0cvXQ5Qk,4645
649
- kcli-99.0.202601080647.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
650
- kcli-99.0.202601080647.dist-info/entry_points.txt,sha256=e5EB5e2acrwl3_sYA0GrjE42UMcMfiijMJqXb6TZRmQ,245
651
- kcli-99.0.202601080647.dist-info/top_level.txt,sha256=FwVTxtMIWdr8QBk5mTfd0f_GheFlRR_vn4zl6p5N57s,6
652
- kcli-99.0.202601080647.dist-info/RECORD,,
648
+ kcli-99.0.202601091438.dist-info/METADATA,sha256=7LuuCluqu8WwU4AZYANpHa5u2ItaCpN3QOzwhYHij3I,4645
649
+ kcli-99.0.202601091438.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
650
+ kcli-99.0.202601091438.dist-info/entry_points.txt,sha256=e5EB5e2acrwl3_sYA0GrjE42UMcMfiijMJqXb6TZRmQ,245
651
+ kcli-99.0.202601091438.dist-info/top_level.txt,sha256=FwVTxtMIWdr8QBk5mTfd0f_GheFlRR_vn4zl6p5N57s,6
652
+ kcli-99.0.202601091438.dist-info/RECORD,,
kvirt/cli.py CHANGED
@@ -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', [])
@@ -14,7 +14,7 @@ chown root:root /root/kubeconfig
14
14
  export KUBECONFIG=/root/kubeconfig
15
15
  echo "export KUBECONFIG=/root/kubeconfig" >> /root/.bashrc
16
16
 
17
- {% if workers == 0 %}
17
+ {% if ctlplane_schedulable or workers == 0 %}
18
18
  # untaint ctlplane nodes when there are no workers
19
19
  kubectl taint nodes --all node-role.kubernetes.io/master-
20
20
  kubectl taint nodes --all node-role.kubernetes.io/control-plane-
@@ -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
@@ -659,6 +659,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
659
659
  ctlplanes = data['ctlplanes']
660
660
  if ctlplanes <= 0:
661
661
  return {'result': 'failure', 'reason': f"Invalid number of ctlplanes {ctlplanes}"}
662
+ ctlplane_schedulable = data['ctlplane_schedulable']
662
663
  workers = data['workers']
663
664
  if workers < 0:
664
665
  return {'result': 'failure', 'reason': f"Invalid number of workers {workers}"}
@@ -1236,7 +1237,7 @@ def create(config, plandir, cluster, overrides, dnsconfig=None):
1236
1237
  'mtu': mtu, 'mode': ipsec_mode})
1237
1238
  with open(f"{clusterdir}/openshift/99-ovn.yaml", 'w') as f:
1238
1239
  f.write(ovn_data)
1239
- if workers == 0 or not mdns or kubevirt_api_service:
1240
+ if ctlplane_schedulable or workers == 0 or not mdns or kubevirt_api_service:
1240
1241
  copy2(f'{plandir}/cluster-scheduler-02-config.yml', f"{clusterdir}/manifests")
1241
1242
  if 'sslip' in domain:
1242
1243
  ingress_sslip_data = config.process_inputfile(cluster, f"{plandir}/cluster-ingress-02-config.yml",
@@ -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
kvirt/version/git CHANGED
@@ -1 +1 @@
1
- 6264a49 2026/01/08
1
+ 4644316 2026/01/09