def test_create_apiservice_from_yaml_with_conflict(self): """ Should be able to create an API service. Should verify that creating the same API service should fail due to conflict. """ k8s_client = client.api_client.ApiClient(configuration=self.config) utils.create_from_yaml(k8s_client, self.path_prefix + "api-service.yaml") reg_api = client.ApiregistrationV1Api(k8s_client) svc = reg_api.read_api_service(name="v1alpha1.wardle.k8s.io") self.assertIsNotNone(svc) with self.assertRaises(utils.FailToCreateError) as cm: utils.create_from_yaml( k8s_client, "kubernetes/e2e_test/test_yaml/api-service.yaml") exp_error = ('Error from server (Conflict): ' '{"kind":"Status","apiVersion":"v1","metadata":{},' '"status":"Failure",' '"message":"apiservices.apiregistration.k8s.io ' '\\"v1alpha1.wardle.k8s.io\\" already exists",' '"reason":"AlreadyExists",' '"details":{"name":"v1alpha1.wardle.k8s.io",' '"group":"apiregistration.k8s.io","kind":"apiservices"},' '"code":409}\n') self.assertEqual(exp_error, str(cm.exception)) reg_api.delete_api_service(name="v1alpha1.wardle.k8s.io", body={})
def get_resource_api(api_client: client.ApiClient = None, **kwargs) -> "client.ApiregistrationV1Api": """ Returns an instance of the kubernetes API client associated with this object. """ if api_client: kwargs["apl_client"] = api_client return client.ApiregistrationV1Api(**kwargs)
def __init__(self): try: self.load_config() #pylint: disable=bare-except except: log.info('Unable to load k8s config') self.core_api = client.CoreV1Api() self.apps_v1_api = client.AppsV1Api() self.registration_api = client.ApiregistrationV1Api()
def Get_Api_resources(self): configuration = client.Configuration() api_instance = client.ApiregistrationV1Api( client.ApiClient(configuration)) try: api_response = api_instance.get_api_resources() pprint(api_response) except ApiException as e: print( "Exception when calling ApiregistrationV1Api->get_api_resources: %s\n" % e)
def fake_k8s_client_dict(): k8s_client_dict = { 'v1': client.CoreV1Api(), 'apiregistration.k8s.io/v1': client.ApiregistrationV1Api(), 'apps/v1': client.AppsV1Api(), 'authentication.k8s.io/v1': client.AuthenticationV1Api(), 'authorization.k8s.io/v1': client.AuthorizationV1Api(), 'autoscaling/v1': client.AutoscalingV1Api(), 'batch/v1': client.BatchV1Api(), 'coordination.k8s.io/v1': client.CoordinationV1Api(), 'networking.k8s.io/v1': client.NetworkingV1Api(), 'rbac.authorization.k8s.io/v1': client.RbacAuthorizationV1Api(), 'scheduling.k8s.io/v1': client.SchedulingV1Api(), 'storage.k8s.io/v1': client.StorageV1Api() } return k8s_client_dict
def get_api_registration_v1_api_client(self, auth): k8s_client = self.get_k8s_client(auth_plugin=auth) return client.ApiregistrationV1Api(api_client=k8s_client)