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'), )
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
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, )
class CreateHostGroupDowntime(CreateDowntimeBase): hostgroup_name = fields.String( required=True, description=param_description(schedule_hostgroup_host_downtime.__doc__, 'hostgroup_name'), example='Servers', ) duration = HOST_DURATION
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, )
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
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")
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'), )
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,