Skip to content
This repository has been archived by the owner on Mar 13, 2022. It is now read-only.

Commit

Permalink
Support customizing “Accept” header and added a testcase to test the …
Browse files Browse the repository at this point in the history
…header
  • Loading branch information
Yashks1994 committed Apr 30, 2021
1 parent 8a969ee commit b0aae73
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 4 deletions.
13 changes: 9 additions & 4 deletions dynamic/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,11 +219,16 @@ def request(self, method, path, body=None, **params):
header_params = params.get('header_params', {})
form_params = []
local_var_files = {}

# HTTP header `Accept`
header_params['Accept'] = self.client.select_header_accept([
'application/json',
'application/yaml',
])
if params.get('header_params') is not None:
partial_object = params.get('header_params')
if 'PartialObjectMetadata' in partial_object.get('Accept'):
header_params['Accept'] = 'application/json;as=PartialObjectMetadata;v=v1;g=meta.k8s.io'
else:
#default
header_params['Accept'] = self.client.select_header_accept([
'application/json', 'application/yaml'])

# HTTP header `Content-Type`
if params.get('content_type'):
Expand Down
11 changes: 11 additions & 0 deletions dynamic/test_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,17 @@ def test_cluster_custom_resources(self):
self.assertEqual(name, resp.metadata.name)
self.assertTrue(resp.status)

#Checking header_params `PartialObjectMetadata`
header_params = 'PartialObjectMetadata'
params = {'header_params': {'Accept': 'application/json;as=PartialObjectMetadata;v=v1;g=meta.k8s.io'}}
api_version = 'meta.k8s.io/v1'
resp = crd_api.get(
name=name,
**params
)
self.assertEqual(header_params, resp.kind)
self.assertEqual(api_version, resp.apiVersion)

try:
changeme_api = client.resources.get(
api_version='apps.example.com/v1', kind='ClusterChangeMe')
Expand Down

0 comments on commit b0aae73

Please sign in to comment.