Skip to content

Commit c959009

Browse files
committed
Added custom certificate support for netbox_utils
1 parent ea3ecc8 commit c959009

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

plugins/module_utils/netbox_utils.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -463,6 +463,7 @@
463463
state=dict(required=False, default="present", choices=["present", "absent"]),
464464
query_params=dict(required=False, type="list", elements="str"),
465465
validate_certs=dict(type="raw", default=True),
466+
cert=dict(type="raw", required=False),
466467
)
467468

468469

@@ -490,10 +491,11 @@ def __init__(self, module, endpoint, nb_client=None):
490491
url = self.module.params["netbox_url"]
491492
token = self.module.params["netbox_token"]
492493
ssl_verify = self.module.params["validate_certs"]
494+
cert = self.module.params["cert"]
493495

494496
# Attempt to initiate connection to Netbox
495497
if nb_client is None:
496-
self.nb = self._connect_netbox_api(url, token, ssl_verify)
498+
self.nb = self._connect_netbox_api(url, token, ssl_verify, cert)
497499
else:
498500
self.nb = nb_client
499501
try:
@@ -536,10 +538,11 @@ def _version_check_greater(self, greater, lesser, greater_or_equal=False):
536538
elif g_major == l_major and g_minor > l_minor:
537539
return True
538540

539-
def _connect_netbox_api(self, url, token, ssl_verify):
541+
def _connect_netbox_api(self, url, token, ssl_verify, cert):
540542
try:
541543
session = requests.Session()
542544
session.verify = ssl_verify
545+
session.cert = tuple(i for i in cert)
543546
nb = pynetbox.api(url, token=token)
544547
nb.http_session = session
545548
try:

0 commit comments

Comments
 (0)