示例#1
0
def create(params):
    body = params['body']
    name = body['name']
    alias = body.get('alias')
    add_group(name, 'service', {'alias': alias})
    group = _fetch_service_group(name)
    return serve_group(group, serialize_group('service_group'))
示例#2
0
def create(params):
    """Create a service-group"""
    body = params['body']
    name = body['name']
    alias = body.get('alias')
    add_group(name, 'service', {'alias': alias})
    group = fetch_group(name, "service")
    return serve_group(group, serialize_group('service_group_config'))
示例#3
0
def create(params):
    """Create a new contact group"""
    body = params['body']
    name = body['name']
    alias = body.get('alias')
    add_group(name, 'contact', {'alias': alias})
    group = _fetch_contact_group(name)
    return serve_group(group, serialize_group('contact_group'))
示例#4
0
def create(params):
    """Create a host group"""
    body = params['body']
    name = body['name']
    alias = body.get('alias')
    add_group(name, 'host', {'alias': alias})
    group = fetch_group(name, "host")
    return serve_group(group, serialize_group('host_group_config'))
示例#5
0
def create(params):
    """Create a host group"""
    body = params["body"]
    name = body["name"]
    group_details = {"alias": body.get("alias")}
    if version.is_managed_edition():
        group_details = update_customer_info(group_details, body["customer"])
    add_group(name, "host", group_details)
    group = fetch_group(name, "host")
    return serve_group(group, serialize_group("host_group_config"))
示例#6
0
def create(params):
    """Create a contact group"""
    body = params['body']
    name = body['name']
    group_details = {"alias": body.get("alias")}
    if version.is_managed_edition():
        group_details = update_customer_info(group_details, body["customer"])
    add_group(name, 'contact', group_details)
    group = fetch_group(name, "contact")
    return serve_group(group, serialize_group('contact_group_config'))
示例#7
0
def create(params):
    """Create a service group"""
    user.need_permission("wato.edit")
    body = params["body"]
    name = body["name"]
    group_details = {"alias": body.get("alias")}
    if version.is_managed_edition():
        group_details = update_customer_info(group_details, body["customer"])
    groups.add_group(name, "service", group_details)
    group = fetch_group(name, "service")
    return serve_group(group, serialize_group("service_group_config"))
示例#8
0
def bulk_create(params):
    """Bulk create host groups"""
    body = params['body']
    entries = body['entries']
    contact_group_details = load_groups("contact", entries)

    contact_group_names = []
    for group_name, group_alias in contact_group_details.items():
        add_group(group_name, 'contact', {'alias': group_alias})
        contact_group_names.append(group_name)

    contact_groups = fetch_specific_groups(contact_group_names, "contact")
    return constructors.serve_json(serialize_group_list('contact_group_config', contact_groups))
示例#9
0
def bulk_create(params):
    """Bulk create host groups"""
    body = params["body"]
    entries = body["entries"]
    host_group_details = prepare_groups("host", entries)

    host_group_names = []
    for group_name, group_details in host_group_details.items():
        add_group(group_name, "host", group_details)
        host_group_names.append(group_name)

    host_groups = fetch_specific_groups(host_group_names, "host")
    return constructors.serve_json(serialize_group_list("host_group_config", host_groups))
示例#10
0
def bulk_create(params):
    """Bulk create service groups"""
    body = params['body']
    entries = body['entries']
    service_group_details = load_groups("service", entries)

    service_group_names = []
    for group_name, group_alias in service_group_details.items():
        add_group(group_name, 'service', {'alias': group_alias})
        service_group_names.append(group_name)

    service_groups = fetch_specific_groups(service_group_names, "service")
    return constructors.serve_json(
        serialize_group_list('service_group_config', service_groups))
示例#11
0
def bulk_create(params):
    """Bulk create host groups"""
    user.need_permission("wato.edit")
    body = params["body"]
    entries = body["entries"]
    contact_group_details = prepare_groups("contact", entries)

    contact_group_names = []
    for group_name, group_details in contact_group_details.items():
        add_group(group_name, "contact", group_details)
        contact_group_names.append(group_name)

    contact_groups = fetch_specific_groups(contact_group_names, "contact")
    return constructors.serve_json(
        serialize_group_list("contact_group_config", contact_groups))
示例#12
0
    def action(self) -> ActionResult:
        if not transactions.check_transaction():
            return redirect(mode_url("%s_groups" % self.type_name))

        alias = request.get_str_input_mandatory("alias").strip()
        self.group = {"alias": alias}

        self._determine_additional_group_data()

        if self._new:
            self._name = request.get_ascii_input_mandatory("name").strip()
            groups.add_group(self._name, self.type_name, self.group)
        else:
            assert self._name is not None
            groups.edit_group(self._name, self.type_name, self.group)

        return redirect(mode_url("%s_groups" % self.type_name))
示例#13
0
def with_groups(request_context, with_admin_login,
                suppress_remote_automation_calls):
    groups.add_group("windows", "host", {"alias": "windows"})
    groups.add_group("routers", "service", {"alias": "routers"})
    groups.add_group("admins", "contact", {"alias": "admins"})
    yield
    groups.delete_group("windows", "host")
    groups.delete_group("routers", "service")
    groups.delete_group("admins", "contact")