in backend/bms_app/services/disk_space_validator.py [0:0]
def _parse_file_name_convert_param(parser):
"""Parse 'db_file_name_convert' parameters.
There might be multiple lines:
- *.db_file_name_convert ans
- <db_name>.db_file_name_convert
Example: *.db_file_name_convert='+DATA/uaab2stanbynew_ifobs/datafile','+DATA2/uaab2prodsrv_IFOBS/datafile','+DATA/uaab2stanbynew_ifobs/datafile','+DATA4/IFOBS/datafile'
The algorithm is:
- get the value
- split it by comma (they are source and destination) and get every second item (+DATA2/..., +DATA4/..)
- parse the value between "+" and "/" (e.g. DATA2, DATA4)
"""
keys = [k for k in parser['cfg'].keys()
if k.endswith('.db_file_name_convert')]
disk_groups = set()
for k in keys:
for destination in parser['cfg'][k].split(',')[1::2]:
disk_group = DISK_GROUP_RE.search(destination).groups()[0]
disk_groups.add(disk_group)
return disk_groups