|
1 | 1 | # -*- coding: utf-8 -*- |
2 | 2 |
|
| 3 | +from collections import OrderedDict |
3 | 4 | from typing import Any, Dict |
4 | 5 | from ..exception import ModuleException |
5 | 6 | from ..machine import Machine |
@@ -70,6 +71,25 @@ def execute(self) -> None: |
70 | 71 | for zone_name, zone_data in zones.items(): |
71 | 72 | self._migrate_zone(zone_name, zone_data) |
72 | 73 |
|
| 74 | + def get_readable_key_value_state(self) -> Dict[str, str]: |
| 75 | + migrated_pools = self.machine.get_execution_state_data( |
| 76 | + "MigrateRgwPoolsHandler", "migrated_pools", default_value=[] |
| 77 | + ) |
| 78 | + |
| 79 | + zones = self.machine.get_preflight_state("MigrateRgwPoolsHandler").zones |
| 80 | + |
| 81 | + kv_state_data = OrderedDict() |
| 82 | + |
| 83 | + for zone_data in zones.values(): |
| 84 | + for osd_pool in zone_data["osd_pools"].values(): |
| 85 | + key_name = "ceph RGW pool {0}".format(osd_pool["pool_name"]) |
| 86 | + kv_state_data[key_name] = self._get_readable_json_dump(osd_pool) |
| 87 | + |
| 88 | + key_name = "ceph RGW pool {0} is created".format(osd_pool["pool_name"]) |
| 89 | + kv_state_data[key_name] = osd_pool["pool_name"] in migrated_pools |
| 90 | + |
| 91 | + return kv_state_data |
| 92 | + |
73 | 93 | def _migrate_zone(self, zone_name: str, zone_data: Dict[str, Any]) -> None: |
74 | 94 | migrated_zones = self.machine.get_execution_state_data( |
75 | 95 | "MigrateRgwPoolsHandler", "migrated_zones", default_value=[] |
|
0 commit comments