in backend/bms_app/services/ansible/wave.py [0:0]
def _generate_configs_data(self):
"""Generate all needed ansible configuration data."""
provision_inventory_hosts = {} # hosts by host-provision inventory
main_inventory_hosts = {} # hosts used by all other playbooks
asm_js_configs = {} # asm json config per host
data_js_mounts_configs = {} # data_mounts json config per host
for db_map_dto in self.db_mappings_objects:
config = db_map_dto.db.config
mappings = db_map_dto.mappings
# generate main inventory hosts
main_inventory_hosts.update(
self._generate_main_inventory_hosts(db_map_dto)
)
# generate other configs and provision inventory hosts
for mapping in mappings:
bms = mapping.bms
provision_inventory_hosts.update(
self._generate_single_inventory_host(bms)
)
asm_js_configs[bms.name] = config.asm_config_values
data_js_mounts_configs[bms.name] = config.data_mounts_values
main_inventory_data = self._generate_inventory_file_data(
main_inventory_hosts
)
provision_inventory_data = self._generate_inventory_file_data(
provision_inventory_hosts
)
return (
main_inventory_data,
provision_inventory_data,
asm_js_configs,
data_js_mounts_configs
)