'Creates OperationContract for createServerGroup.
To verify the operation, we just check that the server group was created.'

def create_server_group(self):

    bindings = self.bindings
    group_name = frigga.Naming.server_group(app=self.TEST_APP, stack=bindings['TEST_STACK'], version='v000')
    payload = self.agent.make_json_payload_from_kwargs(job=[{'cloudProvider': 'kubernetes', 'application': self.TEST_APP, 'account': bindings['SPINNAKER_KUBERNETES_ACCOUNT'], 'namespace': self.TEST_NAMESPACE, 'strategy': '', 'targetSize': 1, 'containers': [{'name': 'validated', 'imageDescription': {'repository': self.__image_repository, 'tag': self.__desired_image_tag, 'imageId': self.__desired_image_id, 'registry': self.__image_registry}, 'requests': {'memory': None, 'cpu': None}, 'limits': {'memory': None, 'cpu': None}, 'ports': [{'name': 'http', 'containerPort': 80, 'protocol': 'TCP', 'hostPort': None, 'hostIp': None}]}, {'name': 'broken', 'imageDescription': {'repository': self.__image_repository, 'tag': self.__undesired_image_tag, 'imageId': self.__undesired_image_id, 'registry': self.__image_registry}, 'requests': {'memory': None, 'cpu': None}, 'limits': {'memory': None, 'cpu': None}, 'ports': [{'name': 'http', 'containerPort': 80, 'protocol': 'TCP', 'hostPort': None, 'hostIp': None}]}], 'stack': bindings['TEST_STACK'], 'loadBalancers': [self.__lb_name], 'type': 'createServerGroup', 'regions': [self.TEST_NAMESPACE], 'region': self.TEST_NAMESPACE, 'user': '[anonymous]'}], description=('Create    Server    Group    in    ' + group_name), application=self.TEST_APP)
    builder = kube.KubeContractBuilder(self.kube_observer)
    builder.new_clause_builder('Replica    Set    Added', retryable_for_secs=15).get_resources('rs', extra_args=[group_name, '--namespace', self.TEST_NAMESPACE]).contains_path_eq('spec/replicas', 1)
    return st.OperationContract(self.new_post_operation(title='create_server_group', data=payload, path='tasks'), contract=builder.build())
