kcli 99.0.202601080644__py3-none-any.whl → 99.0.202601090720__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.202601080644
3
+ Version: 99.0.202601090720
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,4 +1,4 @@
1
- kcli-99.0.202601080644.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
1
+ kcli-99.0.202601090720.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
@@ -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
@@ -395,7 +395,7 @@ kvirt/providers/ibm/__init__.py,sha256=OTGDRCwvvOZCTNGD_QXx52-9_tsBzA7Y079RAo9XL
395
395
  kvirt/providers/kubevirt/__init__.py,sha256=NSnx2RwtRQSrrhpqLK8Fb_ye9YgJdMbkO-_wBFd7DZg,94602
396
396
  kvirt/providers/kvm/__init__.py,sha256=6AKRejZpYp9lBqN6w3v8-12X7E-ANIl32Xd0OL14Pl0,195669
397
397
  kvirt/providers/kvm/helpers.py,sha256=t2CLczaU-gWPXL6iglK2Mlu-85ErH59nkdSA50v18lM,1965
398
- kvirt/providers/openstack/__init__.py,sha256=-2ZiCQGBdRps6B30Ct2JdN-IZHRfHpRqmy6jado0QOM,60989
398
+ kvirt/providers/openstack/__init__.py,sha256=93Wz9teNv6m73NlrUbW7aauXWC9HJoJl3wUDwu42K10,60994
399
399
  kvirt/providers/ovirt/__init__.py,sha256=2qVEM3JsFnNm2gvTLRNdru5GZBwnQ7AzYSXyPdDGlT8,64383
400
400
  kvirt/providers/proxmox/__init__.py,sha256=5IUzNbPXPOMhYCNQkvGgxfo-OdHHdWg9JW3wdYo3nco,46960
401
401
  kvirt/providers/vsphere/__init__.py,sha256=g-twblPaKCCgdujThLp9QJbjNusxIQNS39l9E5BpVSg,86248
@@ -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=WgkadiGg9-33RFgc6KHjELSQWLUtPXBrokGF8jw87fY,19
406
+ kvirt/version/git,sha256=kEXwR2787zTvPuO5BQ37CXBdijHdAXzRZXGvHAebyu8,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.202601080644.dist-info/METADATA,sha256=AnADRLBJX-2OAwO_QCy3Ms_zX8BZwm1W7wXV9gF1PYo,4645
649
- kcli-99.0.202601080644.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
650
- kcli-99.0.202601080644.dist-info/entry_points.txt,sha256=e5EB5e2acrwl3_sYA0GrjE42UMcMfiijMJqXb6TZRmQ,245
651
- kcli-99.0.202601080644.dist-info/top_level.txt,sha256=FwVTxtMIWdr8QBk5mTfd0f_GheFlRR_vn4zl6p5N57s,6
652
- kcli-99.0.202601080644.dist-info/RECORD,,
648
+ kcli-99.0.202601090720.dist-info/METADATA,sha256=UiciWj8-Fk1GCcKMtFKV1MlJ5H_ndM--hceEh0nXpD8,4645
649
+ kcli-99.0.202601090720.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
650
+ kcli-99.0.202601090720.dist-info/entry_points.txt,sha256=e5EB5e2acrwl3_sYA0GrjE42UMcMfiijMJqXb6TZRmQ,245
651
+ kcli-99.0.202601090720.dist-info/top_level.txt,sha256=FwVTxtMIWdr8QBk5mTfd0f_GheFlRR_vn4zl6p5N57s,6
652
+ kcli-99.0.202601090720.dist-info/RECORD,,
@@ -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
@@ -217,7 +217,8 @@ class Kopenstack(object):
217
217
  security_groups=securitygroups)
218
218
  tenant_id = instance.tenant_id
219
219
  if need_floating:
220
- available_floating_ips = [f for f in neutron.list_floatingips()['floatingips'] if f['port_id'] is None ]
220
+ floating_ips = []
221
+ available_floating_ips = [f for f in neutron.list_floatingips()['floatingips'] if f['port_id'] is None]
221
222
  if self.external_network is not None:
222
223
  networks = neutron.list_networks(name=self.external_network)['networks']
223
224
  if networks:
@@ -225,10 +226,9 @@ class Kopenstack(object):
225
226
  if available_floating_ips:
226
227
  floating_ips = [f['id'] for f in available_floating_ips if f['floating_network_id'] == network_id]
227
228
  else:
228
- error("Network " + self.external_network + "seems not to be a valid external network")
229
- else:
230
- if available_floating_ips:
231
- floating_ips = [f['id'] for f in available_floating_ips]
229
+ error(f"Network {self.external_network} doesn't seem to be a valid external network")
230
+ elif available_floating_ips:
231
+ floating_ips = [f['id'] for f in available_floating_ips]
232
232
  if not floating_ips:
233
233
  network_id = None
234
234
  if self.external_network is not None:
kvirt/version/git CHANGED
@@ -1 +1 @@
1
- aeff98c 2026/01/08
1
+ b2dae7d 2026/01/09