Map roster visibility

This commit is contained in:
3wc 2024-02-28 13:20:04 -03:00
parent dd2a266a22
commit e3867f1656
1 changed files with 17 additions and 5 deletions

View File

@ -6,11 +6,12 @@ from bs4 import BeautifulSoup
from mailman.interfaces.archiver import ArchivePolicy
from mailman.interfaces.action import Action
from mailman.utilities.importer import NAME_MAPPINGS, member_moderation_action_mapping, dmarc_action_mapping
from mailman.utilities.importer import NAME_MAPPINGS, member_moderation_action_mapping, dmarc_action_mapping, member_roster_visibility_mapping
KEYFILTER = ('submit')
EXCLUDES = set((
# EXCLUDES in `importer.py`
'accept_these_nonmembers',
'delivery_status',
'digest_members',
@ -27,8 +28,8 @@ EXCLUDES = set((
'digest_header': 'list:member:digest:header',
'digest_footer': 'list:member:digest:footer',
}.keys()) + (
# some manual settings which don't seem to be handled by the conversion
# script
# some settings to manually skip, which don't seem to be handled by the
# conversion script
'archive_volume_frequency',
'autoresponse_postings_text_upload',
'autoresponse_admin_text_upload',
@ -70,8 +71,12 @@ EXCLUDES = set((
'dmarc_none_moderation_action',
'forward_auto_discards',
'hdrfilter_rebox_01',
# TODO convert these instead of skipping
'private_roster'
'bounce_matching_headers',
'topic_rebox_01',
'topic_desc_01',
'topics_enabled',
'topic_box_01',
'topics_bodylines_limit',
))
@ -201,4 +206,11 @@ if __name__ == "__main__":
else:
globalconfig['archive_policy'] = ArchivePolicy.never.name
# Handle roster visibility.
mapping = member_roster_visibility_mapping(
globalconfig.get('private_roster', None))
if mapping is not None:
globalconfig['member_roster_visibility'] = mapping.name
del globalconfig['private_roster']
print(json.dumps(globalconfig))