@@ -818,13 +818,14 @@ def __init__(
818818 raise ValueError ("name and namespace or yaml file is required" )
819819
820820 @classmethod
821- def get (cls , dyn_client , singular_name = None , * args , ** kwargs ):
821+ def get (cls , dyn_client , singular_name = None , raw = False , * args , ** kwargs ):
822822 """
823823 Get resources
824824
825825 Args:
826826 dyn_client (DynamicClient): Open connection to remote cluster
827827 singular_name (str): Resource kind (in lowercase), in use where we have multiple matches for resource
828+ raw (bool): If True return raw object from openshift-restclient-python
828829
829830
830831 Returns:
@@ -835,17 +836,23 @@ def get(cls, dyn_client, singular_name=None, *args, **kwargs):
835836 )
836837 try :
837838 for resource_field in _resources .items :
839+ if raw :
840+ yield resource_field
841+ else :
842+ yield cls (
843+ client = dyn_client ,
844+ name = resource_field .metadata .name ,
845+ namespace = resource_field .metadata .namespace ,
846+ )
847+ except TypeError :
848+ if raw :
849+ yield _resources
850+ else :
838851 yield cls (
839852 client = dyn_client ,
840- name = resource_field .metadata .name ,
841- namespace = resource_field .metadata .namespace ,
853+ name = _resources .metadata .name ,
854+ namespace = _resources .metadata .namespace ,
842855 )
843- except TypeError :
844- yield cls (
845- client = dyn_client ,
846- name = _resources .metadata .name ,
847- namespace = _resources .metadata .namespace ,
848- )
849856
850857 @property
851858 def instance (self ):
0 commit comments