summaryrefslogtreecommitdiff
path: root/ironicclient/common/http.py
diff options
context:
space:
mode:
authorVladyslav Drok <vdrok@mirantis.com>2020-05-15 16:36:56 +0200
committerVladyslav Drok <vdrok@mirantis.com>2020-05-15 16:57:55 +0200
commit9f2d080c898dde703569c4661bde9c735071affc (patch)
treea9cdda62903af42fb512902dfd6260b296906202 /ironicclient/common/http.py
parentf01c1d6714d1772393f20884ef2e259fe4d66567 (diff)
downloadpython-ironicclient-9f2d080c898dde703569c4661bde9c735071affc.tar.gz
Allow to pass additional arguments into adapter
This change allows to pass additional_headers and global_request_id to keystoneauth's Adapter constructor. Also SessionClient now makes use of them while doing HTTP requests (apart from version negotitaion requests). Story: 2007611 Task: 39602 Change-Id: I75cb9311bf44cbf7f6f8737d1d37b2be503be3f9
Diffstat (limited to 'ironicclient/common/http.py')
-rw-r--r--ironicclient/common/http.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/ironicclient/common/http.py b/ironicclient/common/http.py
index 136ac1f..16d439b 100644
--- a/ironicclient/common/http.py
+++ b/ironicclient/common/http.py
@@ -362,6 +362,13 @@ class SessionClient(VersionNegotiationMixin, adapter.LegacyJsonAdapter):
kwargs['headers'].setdefault('X-OpenStack-Ironic-API-Version',
self.os_ironic_api_version)
+ for k, v in self.additional_headers.items():
+ kwargs['headers'].setdefault(k, v)
+
+ if self.global_request_id is not None:
+ kwargs['headers'].setdefault(
+ "X-OpenStack-Request-ID", self.global_request_id)
+
endpoint_filter = kwargs.setdefault('endpoint_filter', {})
endpoint_filter.setdefault('interface', self.interface)
endpoint_filter.setdefault('service_type', self.service_type)