Esempio n. 1
0
class AcknowledgeHostProblem(BaseSchema):
    sticky = fields.Boolean(
        required=False,
        missing=False,
        example=False,
        description=param_description(acknowledge_host_problem.__doc__,
                                      'sticky'),
    )

    persistent = fields.Boolean(
        required=False,
        missing=False,
        example=False,
        description=param_description(acknowledge_host_problem.__doc__,
                                      'persistent'),
    )

    notify = fields.Boolean(
        required=False,
        missing=False,
        example=False,
        description=param_description(acknowledge_host_problem.__doc__,
                                      'notify'),
    )

    comment = fields.String(
        required=False,
        missing="Acknowledged",
        example='This was expected.',
        description=param_description(acknowledge_host_problem.__doc__,
                                      'comment'),
    )
Esempio n. 2
0
class CreateHostGroupDowntime(CreateDowntimeBase):
    hostgroup_name = fields.String(
        required=True,
        description=param_description(schedule_hostgroup_host_downtime.__doc__, 'hostgroup_name'),
        example='Servers',
    )
    include_all_services = fields.Boolean(
        required=False,
        description=param_description(schedule_hostgroup_host_downtime.__doc__,
                                      'include_all_services'),
        example=False,
        missing=False,
    )
    duration = HOST_DURATION
Esempio n. 3
0
class CreateServiceDowntime(CreateDowntimeBase):
    host_name = MONITORED_HOST
    service_descriptions = fields.List(
        fields.String(),
        uniqueItems=True,
        required=True,
        example=["CPU utilization", "Memory"],
        description=param_description(schedule_service_downtime.__doc__, 'service_description'),
    )
    duration = fields.Integer(
        required=False,
        description=param_description(schedule_service_downtime.__doc__, 'duration'),
        example=3600,
        missing=0,
    )
Esempio n. 4
0
class CreateHostGroupDowntime(CreateDowntimeBase):
    hostgroup_name = fields.String(
        required=True,
        description=param_description(schedule_hostgroup_host_downtime.__doc__, 'hostgroup_name'),
        example='Servers',
    )
    duration = HOST_DURATION
Esempio n. 5
0
class CreateHostDowntime(CreateDowntimeBase):
    host_name = MONITORED_HOST
    duration = HOST_DURATION
    include_all_services = fields.Boolean(
        required=False,
        description=param_description(schedule_host_downtime.__doc__, 'include_all_services'),
        example=False,
        missing=False,
    )
Esempio n. 6
0
class CreateServiceGroupDowntime(CreateDowntimeBase):
    servicegroup_name = SERVICEGROUP_NAME
    include_hosts = fields.Boolean(
        required=False,
        description=param_description(schedule_servicegroup_service_downtime.__doc__,
                                      'include_hosts'),
        example=False,
        missing=False,
    )
    duration = HOST_DURATION
Esempio n. 7
0
class CreateDowntimeBase(BaseSchema):
    downtime_type = fields.String(
        required=True,
        description="The type of downtime to create.",
        enum=[
            'host', 'service', 'hostgroup', 'servicegroup', 'host_by_query',
            'service_by_query'
        ],
        example="host",
    )
    start_time = fields.DateTime(
        format="iso8601",
        required=True,
        example="2017-07-21T17:32:28Z",
        description=
        "The start datetime of the new downtime. The format has to conform to the ISO 8601 profile",
    )
    end_time = fields.DateTime(
        required=True,
        example="2017-07-21T17:32:28Z",
        description=
        "The end datetime of the new downtime. The format has to conform to the ISO 8601 profile",
        format="iso8601",
    )
    recur = fields.String(
        required=False,
        enum=[
            "fixed", "hour", "day", "week", "second_week", "fourth_week",
            "weekday_start", "weekday_end", "day_of_month"
        ],
        description=param_description(schedule_host_downtime.__doc__, 'recur'),
        example="hour",
        missing="fixed",
    )
    duration = fields.Integer(
        required=False,
        description=param_description(schedule_host_downtime.__doc__,
                                      'duration'),
        example=3600,
        missing=0,
    )
    comment = fields.String(required=False, example="Security updates")
Esempio n. 8
0
class AcknowledgeServiceProblemBase(BaseSchema):
    acknowledge_type = fields.String(
        required=True,
        description="The acknowledge service selection type.",
        enum=['service', 'servicegroup', 'service_by_query'],
        example="service",
    )

    sticky = fields.Boolean(
        required=False,
        missing=True,
        example=False,
        description=param_description(acknowledge_service_problem.__doc__,
                                      'sticky'),
    )

    persistent = fields.Boolean(
        required=False,
        missing=False,
        example=False,
        description=param_description(acknowledge_service_problem.__doc__,
                                      'persistent'),
    )

    notify = fields.Boolean(
        required=False,
        missing=True,
        example=False,
        description=param_description(acknowledge_service_problem.__doc__,
                                      'notify'),
    )

    comment = fields.String(
        required=True,
        example='This was expected.',
        description=param_description(acknowledge_service_problem.__doc__,
                                      'comment'),
    )
Esempio n. 9
0
    description=
    ("The folder-id of the folder under which this folder shall be created. May be "
     "'root' for the root-folder."),
    example="/",
    required=True,
)

GROUP_NAME_FIELD = fields.String(
    required=True,
    description="A name used as identifier",
    example='windows',
)

SERVICEGROUP_NAME = fields.String(
    required=True,
    description=param_description(
        schedule_servicegroup_service_downtime.__doc__, 'servicegroup_name'),
    example='Webservers',
)


class CreateClusterHost(BaseSchema):
    host_name = Hostname(
        description="The hostname of the cluster host.",
        required=True,
        should_exist=False,
    )
    folder = EXISTING_FOLDER
    attributes = AttributesField(
        description="Attributes to set on the newly created host.",
        example={'ipaddress': '192.168.0.123'},
        missing=dict,