blob: 44d6f4c93002418d41db3fea5ae1c913977cfcb2 [file] [log] [blame]
Scott Baker8f32cc82016-08-08 10:34:53 -07001from xosresource import XOSResource
Zack Williamsb7e97762016-10-05 16:12:36 -07002from services.hpc.models import HpcHealthCheck, HpcService
Scott Baker8f32cc82016-08-08 10:34:53 -07003
4class XOSHpcHealthCheck(XOSResource):
5 provides = "tosca.nodes.HpcHealthCheck"
6 xos_model = HpcHealthCheck
7 name_field = None
8 copyin_props = ("kind", "resource_name", "result_contains")
9
10 def get_xos_args(self, throw_exception=True):
11 args = super(XOSHpcHealthCheck, self).get_xos_args()
12
13 service_name = self.get_requirement("tosca.relationships.MemberOfService", throw_exception=throw_exception)
14 if service_name:
15 args["hpcService"] = self.get_xos_object(HpcService, throw_exception=throw_exception, name=service_name)
16
17 return args
18
19 def get_existing_objs(self):
20 args = self.get_xos_args(throw_exception=True)
21
22 return list( HpcHealthCheck.objects.filter(hpcService=args["hpcService"], kind=args["kind"], resource_name=args["resource_name"]) )
23
24 def postprocess(self, obj):
25 pass
26
27 def can_delete(self, obj):
28 return super(XOSTenant, self).can_delete(obj)
29