Updates to insights playbook project syncing based on feedback

* Support "name" if given, else use a more reasonable file name for
  the playbook file
* Fix an issue where we wouldn't populate the playbooks correctly in
  the database
* Force downloading the playbooks every time since we can't tell when
  the file might change
This commit is contained in:
Matthew Jones 2017-03-01 15:54:20 -05:00
parent 7d4544595a
commit 95a2ed6336
2 changed files with 20 additions and 7 deletions

View File

@ -1318,10 +1318,10 @@ class RunProjectUpdate(BaseTask):
lines = fd.readlines()
if lines:
p.scm_revision = lines[0].strip()
p.playbook_files = p.playbooks
p.save()
else:
logger.error("Could not find scm revision in check")
logger.info("Could not find scm revision in check")
p.playbook_files = p.playbooks
p.save()
try:
os.remove(self.revision_path)
except Exception, e:

View File

@ -107,7 +107,7 @@
- name: update project using insights
uri:
url: "{{insights_url}}/r/insights/v1/maintenance"
url: "{{insights_url}}/r/insights/v1/maintenance?ansible=true"
user: "{{scm_username|quote}}"
password: "{{scm_password|quote}}"
force_basic_auth: yes
@ -120,14 +120,27 @@
state: directory
when: scm_type == 'insights'
- name: Fetch Insights Playbook
- name: Fetch Insights Playbook With Name
get_url:
url: "{{insights_url}}/r/insights/v3/maintenance/{{item.maintenance_id}}/playbook"
dest: "{{project_path|quote}}/{{item.maintenance_id}}.yml"
dest: "{{project_path|quote}}/{{item.name}}-{{item.maintenance_id}}.yml"
url_username: "{{scm_username|quote}}"
url_password: "{{scm_password|quote}}"
force_basic_auth: yes
when: scm_type == 'insights'
force: yes
when: scm_type == 'insights' and item.name != None
with_items: "{{insights_output.json}}"
failed_when: false
- name: Fetch Insights Playbook
get_url:
url: "{{insights_url}}/r/insights/v3/maintenance/{{item.maintenance_id}}/playbook"
dest: "{{project_path|quote}}/insights-plan-{{item.maintenance_id}}.yml"
url_username: "{{scm_username|quote}}"
url_password: "{{scm_password|quote}}"
force_basic_auth: yes
force: yes
when: scm_type == 'insights' and item.name == None
with_items: "{{insights_output.json}}"
failed_when: false