Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes #18247: Use localhost if no url is set and a local token exist #1

Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
29 changes: 20 additions & 9 deletions library/rudder_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,13 @@

rudder_url:
description:
- Providing Rudder server IP address.
required: true
- Providing Rudder server IP address. Defaults to localhost of the target node if not set, with certificate validation disabled, unless explicitly enabled by setting validate_certs.
required: false
type: str

rudder_token:
description:
- Providing Rudder server token.
- Providing Rudder server token. Defaults to the content of /var/rudder/run/api-token if not set.
required: false
type: str

Expand All @@ -46,18 +46,23 @@

validate_certs:
description:
- Choosing either to ignore or not Rudder certificate validation.
required: true
- Choosing either to ignore or not Rudder certificate validation. Defaults to true.
required: false
type: boolean

'''

''' EXAMPLE = '''

'''
- name: Modify Rudder Settings
- name: Simple Modify Rudder Settings
rudder_settings:
rudder_url: "https://localhost/rudder"
name: "modified_file_ttl"
value: "23"

- name: Complex Modify Rudder Settings
rudder_settings:
rudder_url: "https://my.rudder.server/rudder"
rudder_token: "<rudder_server_token>"
name: "modified_file_ttl"
value: "22"
Expand All @@ -75,15 +80,21 @@ def __init__(self, module):
self._module = module
# {{{ Authentication header
self.headers = {"Content-Type": "application/json"}
self.validate_certs = True
if module.params.get('rudder_token', None):
self.headers = {"X-API-Token": module.params['rudder_token']}
else:
with open('/var/rudder/run/api-token') as f:
token = f.read()
self.headers = {"X-API-Token": token}
# }}}
self.rudder_url = module.params.get("rudder_url")
self.validate_certs = module.params.get("validate_certs")
if module.params.get('rudder_url', None):
self.rudder_url = module.params.get("rudder_url")
else:
self.rudder_url = "https://localhost/rudder"
self.validate_certs = False
if module.params.get('validate_certs',None):
self.validate_certs = module.params.get("validate_certs")

def _send_request(self, url, data=None, headers=None, method="GET"):
if data is not None:
Expand Down