Beispiel #1
0
def process_action_group_detail_for_creation(namespace):
    from azure.mgmt.monitor.models import ActionGroupResource, EmailReceiver, SmsReceiver, WebhookReceiver

    _validate_tags(namespace)

    ns = vars(namespace)
    name = ns['action_group_name']
    receivers = ns.pop('receivers') or []
    action_group_resource_properties = {
        'location':
        'global',  # as of now, 'global' is the only available location for action group
        'group_short_name':
        ns.pop('short_name')
        or name[:12],  # '12' is the short name length limitation
        'email_receivers':
        [r for r in receivers if isinstance(r, EmailReceiver)],
        'sms_receivers': [r for r in receivers if isinstance(r, SmsReceiver)],
        'webhook_receivers':
        [r for r in receivers if isinstance(r, WebhookReceiver)],
        'tags':
        ns.get('tags') or None
    }

    ns['action_group'] = ActionGroupResource(
        **action_group_resource_properties)
Beispiel #2
0
def process_action_group_detail_for_creation(namespace):
    from azure.mgmt.monitor.models import ActionGroupResource, EmailReceiver, SmsReceiver, WebhookReceiver, \
        ArmRoleReceiver, AzureAppPushReceiver, ItsmReceiver, AutomationRunbookReceiver, \
        VoiceReceiver, LogicAppReceiver, AzureFunctionReceiver

    _validate_tags(namespace)

    ns = vars(namespace)
    name = ns['action_group_name']
    receivers = ns.pop('receivers') or []
    action_group_resource_properties = {
        'location': 'global',  # as of now, 'global' is the only available location for action group
        'group_short_name': ns.pop('short_name') or name[:12],  # '12' is the short name length limitation
        'email_receivers': [r for r in receivers if isinstance(r, EmailReceiver)],
        'sms_receivers': [r for r in receivers if isinstance(r, SmsReceiver)],
        'webhook_receivers': [r for r in receivers if isinstance(r, WebhookReceiver)],
        'arm_role_receivers': [r for r in receivers if isinstance(r, ArmRoleReceiver)],
        'itsm_receivers': [r for r in receivers if isinstance(r, ItsmReceiver)],
        'azure_app_push_receivers': [r for r in receivers if isinstance(r, AzureAppPushReceiver)],
        'automation_runbook_receivers': [r for r in receivers if isinstance(r, AutomationRunbookReceiver)],
        'voice_receivers': [r for r in receivers if isinstance(r, VoiceReceiver)],
        'logic_app_receivers': [r for r in receivers if isinstance(r, LogicAppReceiver)],
        'azure_function_receivers': [r for r in receivers if isinstance(r, AzureFunctionReceiver)],
        'tags': ns.get('tags') or None
    }

    ns['action_group'] = ActionGroupResource(**action_group_resource_properties)