osi-dump 0.1.3.3.4.2__py3-none-any.whl → 0.1.4__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.
Files changed (102) hide show
  1. osi_dump/__main__.py +4 -4
  2. osi_dump/api/keystone.py +70 -70
  3. osi_dump/api/neutron.py +65 -65
  4. osi_dump/api/octavia.py +94 -94
  5. osi_dump/api/placement.py +41 -41
  6. osi_dump/batch_handler/__init__.py +6 -5
  7. osi_dump/batch_handler/external_port_batch_handler.py +55 -55
  8. osi_dump/batch_handler/flavor_batch_handler.py +51 -51
  9. osi_dump/batch_handler/floating_ip_batch_handler.py +57 -57
  10. osi_dump/batch_handler/hypervisor_batch_handler.py +55 -55
  11. osi_dump/batch_handler/image_batch_handler.py +51 -51
  12. osi_dump/batch_handler/instance_batch_handler.py +46 -54
  13. osi_dump/batch_handler/load_balancer_batch_handler.py +59 -59
  14. osi_dump/batch_handler/network_batch_handler.py +51 -51
  15. osi_dump/batch_handler/project_batch_handler.py +51 -51
  16. osi_dump/batch_handler/role_assignment_batch_handler.py +38 -61
  17. osi_dump/batch_handler/router_batch_handler.py +49 -49
  18. osi_dump/batch_handler/security_group_batch_handler.py +37 -0
  19. osi_dump/batch_handler/volume_batch_handler.py +45 -45
  20. osi_dump/cli.py +267 -257
  21. osi_dump/exporter/external_port/excel_external_port_exporter.py +34 -34
  22. osi_dump/exporter/external_port/external_port_exporter.py +7 -7
  23. osi_dump/exporter/flavor/excel_flavor_exporter.py +30 -30
  24. osi_dump/exporter/flavor/flavor_exporter.py +7 -7
  25. osi_dump/exporter/floating_ip/excel_floating_ip_exporter.py +30 -30
  26. osi_dump/exporter/floating_ip/floating_ip_exporter.py +7 -7
  27. osi_dump/exporter/hypervisor/excel_hypervisor_exporter.py +32 -32
  28. osi_dump/exporter/hypervisor/hypervisor_exporter.py +7 -7
  29. osi_dump/exporter/image/excel_image_exporter.py +28 -28
  30. osi_dump/exporter/image/image_exporter.py +7 -7
  31. osi_dump/exporter/instance/excel_instance_exporter.py +29 -29
  32. osi_dump/exporter/instance/instance_exporter.py +8 -7
  33. osi_dump/exporter/load_balancer/excel_load_balancer_exporter.py +36 -36
  34. osi_dump/exporter/load_balancer/load_balancer_exporter.py +7 -7
  35. osi_dump/exporter/network/excel_network_exporter.py +32 -32
  36. osi_dump/exporter/network/network_exporter.py +7 -7
  37. osi_dump/exporter/project/excel_project_exporter.py +30 -30
  38. osi_dump/exporter/project/project_exporter.py +7 -7
  39. osi_dump/exporter/role_assignment/excel_role_assignment_exporter.py +43 -35
  40. osi_dump/exporter/role_assignment/role_assignment_exporter.py +7 -7
  41. osi_dump/exporter/router/excel_router_exporter.py +30 -30
  42. osi_dump/exporter/router/router_exporter.py +7 -7
  43. osi_dump/exporter/security_group/excel_security_group_exporter.py +35 -0
  44. osi_dump/exporter/security_group/security_group_exporter.py +8 -0
  45. osi_dump/exporter/volume/excel_volume_exporter.py +29 -29
  46. osi_dump/exporter/volume/volume_exporter.py +7 -7
  47. osi_dump/importer/external_port/external_port_importer.py +9 -9
  48. osi_dump/importer/external_port/openstack_external_port_importer.py +177 -177
  49. osi_dump/importer/flavor/flavor_importer.py +9 -9
  50. osi_dump/importer/flavor/openstack_flavor_importer.py +64 -64
  51. osi_dump/importer/floating_ip/floating_ip_importer.py +9 -9
  52. osi_dump/importer/floating_ip/openstack_floating_ip_importer.py +68 -68
  53. osi_dump/importer/hypervisor/hypervisor_importer.py +9 -9
  54. osi_dump/importer/hypervisor/openstack_hypervisor_importer.py +137 -137
  55. osi_dump/importer/image/image_importer.py +9 -9
  56. osi_dump/importer/image/openstack_image_importer.py +81 -81
  57. osi_dump/importer/instance/instance_importer.py +8 -9
  58. osi_dump/importer/instance/openstack_instance_importer.py +136 -136
  59. osi_dump/importer/load_balancer/load_balancer_importer.py +9 -9
  60. osi_dump/importer/load_balancer/openstack_load_balancer_importer.py +113 -113
  61. osi_dump/importer/network/network_importer.py +9 -9
  62. osi_dump/importer/network/openstack_network_importer.py +93 -93
  63. osi_dump/importer/project/openstack_project_importer.py +141 -141
  64. osi_dump/importer/project/project_importer.py +9 -9
  65. osi_dump/importer/role_assignment/openstack_role_assignment_importer.py +117 -141
  66. osi_dump/importer/role_assignment/role_assignment_importer.py +16 -9
  67. osi_dump/importer/router/openstack_router_importer.py +87 -87
  68. osi_dump/importer/router/router_importer.py +9 -9
  69. osi_dump/importer/security_group/openstack_security_group_importer.py +54 -0
  70. osi_dump/importer/security_group/security_group_importer.py +8 -0
  71. osi_dump/importer/volume/openstack_volume_importer.py +81 -81
  72. osi_dump/importer/volume/volume_importer.py +9 -9
  73. osi_dump/model/authentication_info.py +15 -15
  74. osi_dump/model/external_port.py +30 -30
  75. osi_dump/model/flavor.py +20 -20
  76. osi_dump/model/floating_ip.py +24 -24
  77. osi_dump/model/hypervisor.py +24 -24
  78. osi_dump/model/image.py +27 -27
  79. osi_dump/model/instance.py +29 -29
  80. osi_dump/model/load_balancer.py +26 -26
  81. osi_dump/model/network.py +25 -25
  82. osi_dump/model/project.py +33 -33
  83. osi_dump/model/role_assignment.py +30 -21
  84. osi_dump/model/router.py +23 -23
  85. osi_dump/model/security_group.py +22 -0
  86. osi_dump/model/volume.py +25 -25
  87. osi_dump/os_connection/get_connections.py +67 -67
  88. osi_dump/util/__init__.py +7 -7
  89. osi_dump/util/create_file.py +11 -11
  90. osi_dump/util/excel_autosize_column.py +39 -39
  91. osi_dump/util/excel_sort_sheet.py +35 -35
  92. osi_dump/util/export_data_excel.py +36 -36
  93. osi_dump/util/extract_hostname.py +5 -5
  94. osi_dump/util/openstack_util.py +48 -48
  95. osi_dump/util/panda_excel.py +26 -26
  96. osi_dump/util/validate_dir_path.py +20 -20
  97. {osi_dump-0.1.3.3.4.2.dist-info → osi_dump-0.1.4.dist-info}/METADATA +40 -40
  98. osi_dump-0.1.4.dist-info/RECORD +130 -0
  99. {osi_dump-0.1.3.3.4.2.dist-info → osi_dump-0.1.4.dist-info}/WHEEL +1 -1
  100. osi_dump-0.1.3.3.4.2.dist-info/RECORD +0 -124
  101. {osi_dump-0.1.3.3.4.2.dist-info → osi_dump-0.1.4.dist-info}/entry_points.txt +0 -0
  102. {osi_dump-0.1.3.3.4.2.dist-info → osi_dump-0.1.4.dist-info}/top_level.txt +0 -0
@@ -1,55 +1,55 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.external_port.external_port_exporter import ExternalPortExporter
6
- from osi_dump.exporter.external_port.excel_external_port_exporter import (
7
- ExcelExternalPortExporter,
8
- )
9
-
10
- from osi_dump.importer.external_port.external_port_importer import ExternalPortImporter
11
- from osi_dump.importer.external_port.openstack_external_port_importer import (
12
- OpenStackExternalPortImporter,
13
- )
14
-
15
-
16
- from osi_dump import util
17
-
18
- logger = logging.getLogger(__name__)
19
-
20
-
21
- class ExternalPortBatchHandler:
22
- def __init__(self):
23
- self._importer_exporter_list: list[
24
- tuple[ExternalPortImporter, ExternalPortExporter]
25
- ] = []
26
-
27
- def add_importer_exporter_from_openstack_connections(
28
- self, connections: list[Connection], output_file: str
29
- ):
30
- for connection in connections:
31
- importer = OpenStackExternalPortImporter(connection)
32
-
33
- sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-ex-port"
34
- exporter = ExcelExternalPortExporter(
35
- sheet_name=sheet_name, output_file=output_file
36
- )
37
-
38
- self.add_importer_exporter(importer=importer, exporter=exporter)
39
-
40
- def add_importer_exporter(
41
- self, importer: ExternalPortImporter, exporter: ExternalPortExporter
42
- ):
43
- self._importer_exporter_list.append((importer, exporter))
44
-
45
- def process(self):
46
-
47
- for importer, exporter in self._importer_exporter_list:
48
- try:
49
-
50
- external_ports = importer.import_external_ports()
51
-
52
- exporter.export_external_ports(external_ports=external_ports)
53
- except Exception as e:
54
- logger.warning(e)
55
- logger.warning("Skipping...")
1
+ import logging
2
+
3
+ from openstack.connection import Connection
4
+
5
+ from osi_dump.exporter.external_port.external_port_exporter import ExternalPortExporter
6
+ from osi_dump.exporter.external_port.excel_external_port_exporter import (
7
+ ExcelExternalPortExporter,
8
+ )
9
+
10
+ from osi_dump.importer.external_port.external_port_importer import ExternalPortImporter
11
+ from osi_dump.importer.external_port.openstack_external_port_importer import (
12
+ OpenStackExternalPortImporter,
13
+ )
14
+
15
+
16
+ from osi_dump import util
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ class ExternalPortBatchHandler:
22
+ def __init__(self):
23
+ self._importer_exporter_list: list[
24
+ tuple[ExternalPortImporter, ExternalPortExporter]
25
+ ] = []
26
+
27
+ def add_importer_exporter_from_openstack_connections(
28
+ self, connections: list[Connection], output_file: str
29
+ ):
30
+ for connection in connections:
31
+ importer = OpenStackExternalPortImporter(connection)
32
+
33
+ sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-ex-port"
34
+ exporter = ExcelExternalPortExporter(
35
+ sheet_name=sheet_name, output_file=output_file
36
+ )
37
+
38
+ self.add_importer_exporter(importer=importer, exporter=exporter)
39
+
40
+ def add_importer_exporter(
41
+ self, importer: ExternalPortImporter, exporter: ExternalPortExporter
42
+ ):
43
+ self._importer_exporter_list.append((importer, exporter))
44
+
45
+ def process(self):
46
+
47
+ for importer, exporter in self._importer_exporter_list:
48
+ try:
49
+
50
+ external_ports = importer.import_external_ports()
51
+
52
+ exporter.export_external_ports(external_ports=external_ports)
53
+ except Exception as e:
54
+ logger.warning(e)
55
+ logger.warning("Skipping...")
@@ -1,51 +1,51 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.flavor.flavor_exporter import FlavorExporter
6
- from osi_dump.exporter.flavor.excel_flavor_exporter import (
7
- ExcelFlavorExporter,
8
- )
9
-
10
- from osi_dump.importer.flavor.flavor_importer import FlavorImporter
11
- from osi_dump.importer.flavor.openstack_flavor_importer import (
12
- OpenStackFlavorImporter,
13
- )
14
-
15
-
16
- from osi_dump import util
17
-
18
- logger = logging.getLogger(__name__)
19
-
20
-
21
- class FlavorBatchHandler:
22
- def __init__(self):
23
- self._importer_exporter_list: list[tuple[FlavorImporter, FlavorExporter]] = []
24
-
25
- def add_importer_exporter_from_openstack_connections(
26
- self, connections: list[Connection], output_file: str
27
- ):
28
- for connection in connections:
29
- importer = OpenStackFlavorImporter(connection)
30
-
31
- sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-flavor"
32
- exporter = ExcelFlavorExporter(
33
- sheet_name=sheet_name, output_file=output_file
34
- )
35
-
36
- self.add_importer_exporter(importer=importer, exporter=exporter)
37
-
38
- def add_importer_exporter(self, importer: FlavorImporter, exporter: FlavorExporter):
39
- self._importer_exporter_list.append((importer, exporter))
40
-
41
- def process(self):
42
-
43
- for importer, exporter in self._importer_exporter_list:
44
- try:
45
-
46
- flavors = importer.import_flavors()
47
-
48
- exporter.export_flavors(flavors=flavors)
49
- except Exception as e:
50
- logger.warning(e)
51
- logger.warning("Skipping...")
1
+ import logging
2
+
3
+ from openstack.connection import Connection
4
+
5
+ from osi_dump.exporter.flavor.flavor_exporter import FlavorExporter
6
+ from osi_dump.exporter.flavor.excel_flavor_exporter import (
7
+ ExcelFlavorExporter,
8
+ )
9
+
10
+ from osi_dump.importer.flavor.flavor_importer import FlavorImporter
11
+ from osi_dump.importer.flavor.openstack_flavor_importer import (
12
+ OpenStackFlavorImporter,
13
+ )
14
+
15
+
16
+ from osi_dump import util
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ class FlavorBatchHandler:
22
+ def __init__(self):
23
+ self._importer_exporter_list: list[tuple[FlavorImporter, FlavorExporter]] = []
24
+
25
+ def add_importer_exporter_from_openstack_connections(
26
+ self, connections: list[Connection], output_file: str
27
+ ):
28
+ for connection in connections:
29
+ importer = OpenStackFlavorImporter(connection)
30
+
31
+ sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-flavor"
32
+ exporter = ExcelFlavorExporter(
33
+ sheet_name=sheet_name, output_file=output_file
34
+ )
35
+
36
+ self.add_importer_exporter(importer=importer, exporter=exporter)
37
+
38
+ def add_importer_exporter(self, importer: FlavorImporter, exporter: FlavorExporter):
39
+ self._importer_exporter_list.append((importer, exporter))
40
+
41
+ def process(self):
42
+
43
+ for importer, exporter in self._importer_exporter_list:
44
+ try:
45
+
46
+ flavors = importer.import_flavors()
47
+
48
+ exporter.export_flavors(flavors=flavors)
49
+ except Exception as e:
50
+ logger.warning(e)
51
+ logger.warning("Skipping...")
@@ -1,57 +1,57 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.floating_ip.floating_ip_exporter import FloatingIPExporter
6
- from osi_dump.exporter.floating_ip.excel_floating_ip_exporter import (
7
- ExcelFloatingIPExporter,
8
- )
9
-
10
- from osi_dump.importer.floating_ip.floating_ip_importer import FloatingIPImporter
11
- from osi_dump.importer.floating_ip.openstack_floating_ip_importer import (
12
- OpenStackFloatingIPImporter,
13
- )
14
-
15
-
16
- from osi_dump import util
17
-
18
- logger = logging.getLogger(__name__)
19
-
20
-
21
- class FloatingIPBatchHandler:
22
- def __init__(self):
23
- self._importer_exporter_list: list[
24
- tuple[FloatingIPImporter, FloatingIPExporter]
25
- ] = []
26
-
27
- def add_importer_exporter_from_openstack_connections(
28
- self, connections: list[Connection], output_file: str
29
- ):
30
- for connection in connections:
31
- importer = OpenStackFloatingIPImporter(connection)
32
-
33
- sheet_name = (
34
- f"{util.extract_hostname(connection.auth['auth_url'])}-floating-ip"
35
- )
36
- exporter = ExcelFloatingIPExporter(
37
- sheet_name=sheet_name, output_file=output_file
38
- )
39
-
40
- self.add_importer_exporter(importer=importer, exporter=exporter)
41
-
42
- def add_importer_exporter(
43
- self, importer: FloatingIPImporter, exporter: FloatingIPExporter
44
- ):
45
- self._importer_exporter_list.append((importer, exporter))
46
-
47
- def process(self):
48
-
49
- for importer, exporter in self._importer_exporter_list:
50
- try:
51
-
52
- floating_ips = importer.import_floating_ips()
53
-
54
- exporter.export_floating_ips(floating_ips=floating_ips)
55
- except Exception as e:
56
- logger.warning(e)
57
- logger.warning("Skipping...")
1
+ import logging
2
+
3
+ from openstack.connection import Connection
4
+
5
+ from osi_dump.exporter.floating_ip.floating_ip_exporter import FloatingIPExporter
6
+ from osi_dump.exporter.floating_ip.excel_floating_ip_exporter import (
7
+ ExcelFloatingIPExporter,
8
+ )
9
+
10
+ from osi_dump.importer.floating_ip.floating_ip_importer import FloatingIPImporter
11
+ from osi_dump.importer.floating_ip.openstack_floating_ip_importer import (
12
+ OpenStackFloatingIPImporter,
13
+ )
14
+
15
+
16
+ from osi_dump import util
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ class FloatingIPBatchHandler:
22
+ def __init__(self):
23
+ self._importer_exporter_list: list[
24
+ tuple[FloatingIPImporter, FloatingIPExporter]
25
+ ] = []
26
+
27
+ def add_importer_exporter_from_openstack_connections(
28
+ self, connections: list[Connection], output_file: str
29
+ ):
30
+ for connection in connections:
31
+ importer = OpenStackFloatingIPImporter(connection)
32
+
33
+ sheet_name = (
34
+ f"{util.extract_hostname(connection.auth['auth_url'])}-floating-ip"
35
+ )
36
+ exporter = ExcelFloatingIPExporter(
37
+ sheet_name=sheet_name, output_file=output_file
38
+ )
39
+
40
+ self.add_importer_exporter(importer=importer, exporter=exporter)
41
+
42
+ def add_importer_exporter(
43
+ self, importer: FloatingIPImporter, exporter: FloatingIPExporter
44
+ ):
45
+ self._importer_exporter_list.append((importer, exporter))
46
+
47
+ def process(self):
48
+
49
+ for importer, exporter in self._importer_exporter_list:
50
+ try:
51
+
52
+ floating_ips = importer.import_floating_ips()
53
+
54
+ exporter.export_floating_ips(floating_ips=floating_ips)
55
+ except Exception as e:
56
+ logger.warning(e)
57
+ logger.warning("Skipping...")
@@ -1,55 +1,55 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.hypervisor.hypervisor_exporter import HypervisorExporter
6
- from osi_dump.exporter.hypervisor.excel_hypervisor_exporter import (
7
- ExcelHypervisorExporter,
8
- )
9
-
10
- from osi_dump.importer.hypervisor.hypervisor_importer import HypervisorImporter
11
- from osi_dump.importer.hypervisor.openstack_hypervisor_importer import (
12
- OpenStackHypervisorImporter,
13
- )
14
-
15
-
16
- from osi_dump import util
17
-
18
- logger = logging.getLogger(__name__)
19
-
20
-
21
- class HypervisorBatchHandler:
22
- def __init__(self):
23
- self._importer_exporter_list: list[
24
- tuple[HypervisorImporter, HypervisorExporter]
25
- ] = []
26
-
27
- def add_importer_exporter_from_openstack_connections(
28
- self, connections: list[Connection], output_file: str
29
- ):
30
- for connection in connections:
31
- importer = OpenStackHypervisorImporter(connection)
32
-
33
- sheet_name = (
34
- f"{util.extract_hostname(connection.auth['auth_url'])}-hypervisor"
35
- )
36
- exporter = ExcelHypervisorExporter(
37
- sheet_name=sheet_name, output_file=output_file
38
- )
39
-
40
- self.add_importer_exporter(importer=importer, exporter=exporter)
41
-
42
- def add_importer_exporter(
43
- self, importer: HypervisorImporter, exporter: HypervisorExporter
44
- ):
45
- self._importer_exporter_list.append((importer, exporter))
46
-
47
- def process(self):
48
- for importer, exporter in self._importer_exporter_list:
49
- try:
50
- hypervisors = importer.import_hypervisors()
51
-
52
- exporter.export_hypervisors(hypervisors=hypervisors)
53
- except Exception as e:
54
- logger.warning(e)
55
- logger.warning("Skipping...")
1
+ import logging
2
+
3
+ from openstack.connection import Connection
4
+
5
+ from osi_dump.exporter.hypervisor.hypervisor_exporter import HypervisorExporter
6
+ from osi_dump.exporter.hypervisor.excel_hypervisor_exporter import (
7
+ ExcelHypervisorExporter,
8
+ )
9
+
10
+ from osi_dump.importer.hypervisor.hypervisor_importer import HypervisorImporter
11
+ from osi_dump.importer.hypervisor.openstack_hypervisor_importer import (
12
+ OpenStackHypervisorImporter,
13
+ )
14
+
15
+
16
+ from osi_dump import util
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ class HypervisorBatchHandler:
22
+ def __init__(self):
23
+ self._importer_exporter_list: list[
24
+ tuple[HypervisorImporter, HypervisorExporter]
25
+ ] = []
26
+
27
+ def add_importer_exporter_from_openstack_connections(
28
+ self, connections: list[Connection], output_file: str
29
+ ):
30
+ for connection in connections:
31
+ importer = OpenStackHypervisorImporter(connection)
32
+
33
+ sheet_name = (
34
+ f"{util.extract_hostname(connection.auth['auth_url'])}-hypervisor"
35
+ )
36
+ exporter = ExcelHypervisorExporter(
37
+ sheet_name=sheet_name, output_file=output_file
38
+ )
39
+
40
+ self.add_importer_exporter(importer=importer, exporter=exporter)
41
+
42
+ def add_importer_exporter(
43
+ self, importer: HypervisorImporter, exporter: HypervisorExporter
44
+ ):
45
+ self._importer_exporter_list.append((importer, exporter))
46
+
47
+ def process(self):
48
+ for importer, exporter in self._importer_exporter_list:
49
+ try:
50
+ hypervisors = importer.import_hypervisors()
51
+
52
+ exporter.export_hypervisors(hypervisors=hypervisors)
53
+ except Exception as e:
54
+ logger.warning(e)
55
+ logger.warning("Skipping...")
@@ -1,51 +1,51 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.image.image_exporter import ImageExporter
6
- from osi_dump.exporter.image.excel_image_exporter import (
7
- ExcelImageExporter,
8
- )
9
-
10
- from osi_dump.importer.image.image_importer import ImageImporter
11
- from osi_dump.importer.image.openstack_image_importer import (
12
- OpenStackImageImporter,
13
- )
14
-
15
-
16
- from osi_dump import util
17
-
18
- logger = logging.getLogger(__name__)
19
-
20
-
21
- class ImageBatchHandler:
22
- def __init__(self):
23
- self._importer_exporter_list: list[tuple[ImageImporter, ImageExporter]] = []
24
-
25
- def add_importer_exporter_from_openstack_connections(
26
- self, connections: list[Connection], output_file: str
27
- ):
28
- for connection in connections:
29
- importer = OpenStackImageImporter(connection)
30
-
31
- sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-image"
32
- exporter = ExcelImageExporter(
33
- sheet_name=sheet_name, output_file=output_file
34
- )
35
-
36
- self.add_importer_exporter(importer=importer, exporter=exporter)
37
-
38
- def add_importer_exporter(self, importer: ImageImporter, exporter: ImageExporter):
39
- self._importer_exporter_list.append((importer, exporter))
40
-
41
- def process(self):
42
-
43
- for importer, exporter in self._importer_exporter_list:
44
- try:
45
-
46
- images = importer.import_images()
47
-
48
- exporter.export_images(images=images)
49
- except Exception as e:
50
- logger.warning(e)
51
- logger.warning("Skipping...")
1
+ import logging
2
+
3
+ from openstack.connection import Connection
4
+
5
+ from osi_dump.exporter.image.image_exporter import ImageExporter
6
+ from osi_dump.exporter.image.excel_image_exporter import (
7
+ ExcelImageExporter,
8
+ )
9
+
10
+ from osi_dump.importer.image.image_importer import ImageImporter
11
+ from osi_dump.importer.image.openstack_image_importer import (
12
+ OpenStackImageImporter,
13
+ )
14
+
15
+
16
+ from osi_dump import util
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ class ImageBatchHandler:
22
+ def __init__(self):
23
+ self._importer_exporter_list: list[tuple[ImageImporter, ImageExporter]] = []
24
+
25
+ def add_importer_exporter_from_openstack_connections(
26
+ self, connections: list[Connection], output_file: str
27
+ ):
28
+ for connection in connections:
29
+ importer = OpenStackImageImporter(connection)
30
+
31
+ sheet_name = f"{util.extract_hostname(connection.auth['auth_url'])}-image"
32
+ exporter = ExcelImageExporter(
33
+ sheet_name=sheet_name, output_file=output_file
34
+ )
35
+
36
+ self.add_importer_exporter(importer=importer, exporter=exporter)
37
+
38
+ def add_importer_exporter(self, importer: ImageImporter, exporter: ImageExporter):
39
+ self._importer_exporter_list.append((importer, exporter))
40
+
41
+ def process(self):
42
+
43
+ for importer, exporter in self._importer_exporter_list:
44
+ try:
45
+
46
+ images = importer.import_images()
47
+
48
+ exporter.export_images(images=images)
49
+ except Exception as e:
50
+ logger.warning(e)
51
+ logger.warning("Skipping...")
@@ -1,54 +1,46 @@
1
- import logging
2
-
3
- from openstack.connection import Connection
4
-
5
- from osi_dump.exporter.instance.excel_instance_exporter import ExcelInstanceExporter
6
- from osi_dump.exporter.instance.instance_exporter import InstanceExporter
7
- from osi_dump.importer.instance.instance_importer import InstanceImporter
8
- from osi_dump.importer.instance.openstack_instance_importer import (
9
- OpenStackInstanceImporter,
10
- )
11
-
12
-
13
- from osi_dump import util
14
-
15
- logger = logging.getLogger(__name__)
16
-
17
-
18
- class InstanceBatchHandler:
19
- def __init__(self):
20
- self._importer_exporter_list: list[
21
- tuple[InstanceImporter, InstanceExporter]
22
- ] = []
23
-
24
- def add_importer_exporter_from_openstack_connections(
25
- self, connections: list[Connection], output_file: str
26
- ):
27
- for connection in connections:
28
- instance_importer = OpenStackInstanceImporter(connection)
29
-
30
- sheet_name = (
31
- f"{util.extract_hostname(connection.auth['auth_url'])}-instance"
32
- )
33
- instance_exporter = ExcelInstanceExporter(
34
- sheet_name=sheet_name, output_file=output_file
35
- )
36
-
37
- self.add_importer_exporter(
38
- importer=instance_importer, exporter=instance_exporter
39
- )
40
-
41
- def add_importer_exporter(
42
- self, importer: InstanceImporter, exporter: InstanceExporter
43
- ):
44
- self._importer_exporter_list.append((importer, exporter))
45
-
46
- def process(self):
47
- for importer, exporter in self._importer_exporter_list:
48
- try:
49
- instances = importer.import_instances()
50
-
51
- exporter.export_instances(instances=instances)
52
- except Exception as e:
53
- logger.warning(e)
54
- logger.warning("Skipping...")
1
+ import logging
2
+ from openstack.connection import Connection
3
+ from osi_dump import util
4
+ from osi_dump.exporter.instance.excel_instance_exporter import ExcelInstanceExporter
5
+ from osi_dump.exporter.instance.instance_exporter import InstanceExporter
6
+ from osi_dump.importer.instance.instance_importer import InstanceImporter
7
+ from osi_dump.importer.instance.openstack_instance_importer import OpenStackInstanceImporter
8
+
9
+ logger = logging.getLogger(__name__)
10
+
11
+ class InstanceBatchHandler:
12
+ def __init__(self):
13
+ self._importer_exporter_list: list[
14
+ tuple[InstanceImporter, InstanceExporter]
15
+ ] = []
16
+
17
+ def add_importer_exporter_from_openstack_connections(
18
+ self, connections: list[Connection], output_file: str
19
+ ):
20
+ for connection in connections:
21
+ instance_importer = OpenStackInstanceImporter(connection)
22
+ sheet_name = (
23
+ f"{util.extract_hostname(connection.auth['auth_url'])}-instance"
24
+ )
25
+ instance_exporter = ExcelInstanceExporter(
26
+ sheet_name=sheet_name, output_file=output_file
27
+ )
28
+ self.add_importer_exporter(
29
+ importer=instance_importer, exporter=instance_exporter
30
+ )
31
+
32
+ def add_importer_exporter(
33
+ self, importer: InstanceImporter, exporter: InstanceExporter
34
+ ):
35
+ self._importer_exporter_list.append((importer, exporter))
36
+
37
+ def process(self):
38
+ for importer, exporter in self._importer_exporter_list:
39
+ try:
40
+ # generator importer
41
+ instances_generator = importer.import_instances()
42
+ # generator exporter
43
+ exporter.export_instances(instances=instances_generator)
44
+ except Exception as e:
45
+ logger.warning(e)
46
+ logger.warning("Skipping...")