kcli 99.0.202601060830__py3-none-any.whl → 99.0.202601080647__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.202601060830
3
+ Version: 99.0.202601080647
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.202601060830.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
1
+ kcli-99.0.202601080647.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
@@ -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=T8gGmgzF0JlzsHUHEKCOUGHW5KWfFPXig6lOvYeGeUU,60117
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=-XDz1nLaH5CaImU5o8FFIDzo3ZEL_dKAvzPcpplqWkc,19
406
+ kvirt/version/git,sha256=HkEho53GxD0ceHnsAma3MA_bPGPfgnWaVXre6x9b2NA,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.202601060830.dist-info/METADATA,sha256=xsKNr8caf9hWvSYbKYGlDL278KRekj4jg9LkC54MaBA,4645
649
- kcli-99.0.202601060830.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
650
- kcli-99.0.202601060830.dist-info/entry_points.txt,sha256=e5EB5e2acrwl3_sYA0GrjE42UMcMfiijMJqXb6TZRmQ,245
651
- kcli-99.0.202601060830.dist-info/top_level.txt,sha256=FwVTxtMIWdr8QBk5mTfd0f_GheFlRR_vn4zl6p5N57s,6
652
- kcli-99.0.202601060830.dist-info/RECORD,,
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,,
@@ -217,8 +217,18 @@ class Kopenstack(object):
217
217
  security_groups=securitygroups)
218
218
  tenant_id = instance.tenant_id
219
219
  if need_floating:
220
- floating_ips = [f['id'] for f in neutron.list_floatingips()['floatingips']
221
- 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]
222
+ if self.external_network is not None:
223
+ networks = neutron.list_networks(name=self.external_network)['networks']
224
+ if networks:
225
+ network_id = networks[0]['id']
226
+ if available_floating_ips:
227
+ floating_ips = [f['id'] for f in available_floating_ips if f['floating_network_id'] == network_id]
228
+ else:
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]
222
232
  if not floating_ips:
223
233
  network_id = None
224
234
  if self.external_network is not None:
@@ -880,8 +890,12 @@ class Kopenstack(object):
880
890
 
881
891
  def create_network(self, name, cidr=None, dhcp=True, nat=True, domain=None, plan='kvirt', overrides={}):
882
892
  if nat:
883
- externalnets = [n for n in self.neutron.list_networks()['networks'] if n['router:external']]
884
- externalnet_id = externalnets[0]['id'] if externalnets else None
893
+ if self.external_network is not None:
894
+ external_networks = self.neutron.list_networks(name=self.external_network)['networks']
895
+ externalnet_id = external_networks[0]['id']
896
+ else:
897
+ externalnets = [n for n in self.neutron.list_networks()['networks'] if n['router:external']]
898
+ externalnet_id = externalnets[0]['id'] if externalnets else None
885
899
  routers = [router for router in self.neutron.list_routers()['routers'] if router['name'] == 'kvirt']
886
900
  router_id = routers[0]['id'] if routers else None
887
901
  try:
kvirt/version/git CHANGED
@@ -1 +1 @@
1
- 40d98c0 2026/01/06
1
+ 6264a49 2026/01/08