Skip to content

Commit d7b3258

Browse files
authored
Lookup: Updates to look into the environment for NetBox info (#391)
1 parent 7626143 commit d7b3258

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

plugins/lookup/nb_lookup.py

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
from __future__ import absolute_import, division, print_function
1313

14+
import os
1415
import functools
1516
from pprint import pformat
1617

@@ -41,6 +42,10 @@
4142
api_endpoint:
4243
description:
4344
- The URL to the Netbox instance to query
45+
env:
46+
# in order of precendence
47+
- name: NETBOX_API
48+
- name: NETBOX_URL
4449
required: True
4550
api_filter:
4651
description:
@@ -54,6 +59,10 @@
5459
description:
5560
- The API token created through Netbox
5661
- This may not be required depending on the Netbox setup.
62+
env:
63+
# in order of precendence
64+
- name: NETBOX_TOKEN
65+
- name: NETBOX_API_TOKEN
5766
required: False
5867
validate_certs:
5968
description:
@@ -283,8 +292,16 @@ class LookupModule(LookupBase):
283292

284293
def run(self, terms, variables=None, **kwargs):
285294

286-
netbox_api_token = kwargs.get("token")
287-
netbox_api_endpoint = kwargs.get("api_endpoint")
295+
netbox_api_token = (
296+
kwargs.get("token")
297+
or os.getenv("NETBOX_TOKEN")
298+
or os.getenv("NETBOX_API_TOKEN")
299+
)
300+
netbox_api_endpoint = (
301+
kwargs.get("api_endpoint")
302+
or os.getenv("NETBOX_API")
303+
or os.getenv("NETBOX_URL")
304+
)
288305
netbox_ssl_verify = kwargs.get("validate_certs", True)
289306
netbox_private_key_file = kwargs.get("key_file")
290307
netbox_api_filter = kwargs.get("api_filter")

0 commit comments

Comments
 (0)