180
180
from ansible .module_utils .common ._collections_compat import KeysView
181
181
from ansible .module_utils .common .validation import check_type_bool
182
182
183
- from ansible_collections .kubernetes .core .plugins .module_utils .common import (
184
- K8sAnsibleMixin ,
183
+ from ansible_collections .kubernetes .core .plugins .module_utils .k8s .client import (
185
184
get_api_client ,
186
185
)
186
+ from ansible_collections .kubernetes .core .plugins .module_utils .k8s .resource import (
187
+ create_definitions ,
188
+ )
187
189
188
190
try :
189
191
enable_turbo_mode = check_type_bool (os .environ .get ("ENABLE_TURBO_MODE" ))
210
212
k8s_import_exception = e
211
213
212
214
213
- class KubernetesLookup (K8sAnsibleMixin ):
215
+ class KubernetesLookup (object ):
214
216
def __init__ (self ):
215
217
216
218
if not HAS_K8S_MODULE_HELPER :
@@ -240,7 +242,7 @@ def run(self, terms, variables=None, **kwargs):
240
242
241
243
cluster_info = kwargs .get ("cluster_info" )
242
244
if cluster_info == "version" :
243
- return [self .client .version ]
245
+ return [self .client .client . version ]
244
246
if cluster_info == "api_groups" :
245
247
if isinstance (self .client .resources .api_groups , KeysView ):
246
248
return [list (self .client .resources .api_groups )]
@@ -257,7 +259,12 @@ def run(self, terms, variables=None, **kwargs):
257
259
resource_definition = kwargs .get ("resource_definition" )
258
260
src = kwargs .get ("src" )
259
261
if src :
260
- resource_definition = self .load_resource_definitions (src )[0 ]
262
+ definitions = create_definitions (params = dict (src = src ))
263
+ if definitions :
264
+ self .kind = definitions [0 ].kind
265
+ self .name = definitions [0 ].name
266
+ self .namespace = definitions [0 ].namespace
267
+ self .api_version = definitions [0 ].api_version or "v1"
261
268
if resource_definition :
262
269
self .kind = resource_definition .get ("kind" , self .kind )
263
270
self .api_version = resource_definition .get ("apiVersion" , self .api_version )
@@ -272,14 +279,15 @@ def run(self, terms, variables=None, **kwargs):
272
279
"using the 'resource_definition' parameter."
273
280
)
274
281
275
- resource = self .find_resource (self .kind , self .api_version , fail = True )
282
+ resource = self .client . resource (self .kind , self .api_version )
276
283
try :
277
- k8s_obj = resource . get (
284
+ params = dict (
278
285
name = self .name ,
279
286
namespace = self .namespace ,
280
287
label_selector = self .label_selector ,
281
288
field_selector = self .field_selector ,
282
289
)
290
+ k8s_obj = self .client .get (resource , ** params )
283
291
except NotFoundError :
284
292
return []
285
293
0 commit comments