From 66c60d470b99150c41bff8a41c3d88ce99b26554 Mon Sep 17 00:00:00 2001 From: Anthony Perot Date: Fri, 29 Jan 2021 09:59:43 +0000 Subject: [PATCH 1/2] add token_type support to create_kubernetes_role --- hvac/v1/__init__.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hvac/v1/__init__.py b/hvac/v1/__init__.py index 9f2999e9a..7de5d5934 100644 --- a/hvac/v1/__init__.py +++ b/hvac/v1/__init__.py @@ -1623,7 +1623,7 @@ def get_kubernetes_configuration(self, mount_point='kubernetes'): return self._adapter.get(url) def create_kubernetes_role(self, name, bound_service_account_names, bound_service_account_namespaces, ttl="", - max_ttl="", period="", policies=None, mount_point='kubernetes'): + max_ttl="", period="", policies=None, mount_point='kubernetes', token_type=""): """POST /auth//role/:name :param name: Name of the role. @@ -1646,6 +1646,7 @@ def create_kubernetes_role(self, name, bound_service_account_names, bound_servic :type policies: list. :param mount_point: The "path" the k8s auth backend was mounted on. Vault currently defaults to "kubernetes". :type mount_point: str. + :type token_type: str. :return: Will be an empty body with a 204 status code upon success :rtype: requests.Response. """ @@ -1661,6 +1662,9 @@ def create_kubernetes_role(self, name, bound_service_account_names, bound_servic 'period': period, 'policies': policies, } + if token_type: + params['token_type'] = token_type + url = 'v1/auth/{0}/role/{1}'.format(mount_point, name) return self._adapter.post(url, json=params) From c78e058fb61a1d0f86501f5e44df21f0a3d8b04c Mon Sep 17 00:00:00 2001 From: Anthony Perot Date: Tue, 2 Feb 2021 00:34:26 +0000 Subject: [PATCH 2/2] move token_type before mount_point kwarg Co-authored-by: Jeffrey Hogan --- hvac/v1/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hvac/v1/__init__.py b/hvac/v1/__init__.py index 7de5d5934..0a097c7d2 100644 --- a/hvac/v1/__init__.py +++ b/hvac/v1/__init__.py @@ -1623,7 +1623,7 @@ def get_kubernetes_configuration(self, mount_point='kubernetes'): return self._adapter.get(url) def create_kubernetes_role(self, name, bound_service_account_names, bound_service_account_namespaces, ttl="", - max_ttl="", period="", policies=None, mount_point='kubernetes', token_type=""): + max_ttl="", period="", policies=None, token_type="", mount_point='kubernetes'): """POST /auth//role/:name :param name: Name of the role.