include tower header to insights on plan fetch

* We include a special header value in the user agent when tower proxies
requests to get per-host rules.
* This extends that header logic to when we fetch plans (playbooks)
This commit is contained in:
chris meyers
2019-03-28 10:56:56 -04:00
parent 196a6ff36c
commit 926d6a6525
3 changed files with 20 additions and 2 deletions

View File

@@ -40,10 +40,20 @@ class ActionModule(ActionBase):
username = self._task.args.get('username', None)
password = self._task.args.get('password', None)
proj_path = self._task.args.get('project_path', None)
license = self._task.args.get('awx_license_type', None)
awx_version = self._task.args.get('awx_version', None)
session = requests.Session()
session.auth = requests.auth.HTTPBasicAuth(username, password)
headers = {'Content-Type': 'application/json'}
headers = {
'Content-Type': 'application/json',
'User-Agent': '{} {} ({})'.format(
'AWX' if license == 'open' else 'Red Hat Ansible Tower',
awx_version,
license
)
}
url = '{}/r/insights/v3/maintenance?ansible=true'.format(insights_url)

View File

@@ -14,6 +14,8 @@
# scm_revision: current revision in tower
# scm_revision_output: where to store gathered revision (temporary file)
# roles_enabled: Allow us to pull roles from a requirements.yml file
# awx_version: Current running version of the awx or tower as a string
# awx_license_type: "open" for AWX; else presume Tower
- hosts: all
connection: local
@@ -110,6 +112,8 @@
username: "{{scm_username}}"
password: "{{scm_password}}"
project_path: "{{project_path}}"
awx_license_type: "{{awx_license_type}}"
awx_version: "{{awx_version}}"
register: results
- name: Save Insights Version