Red Hat Bugzilla – Bug 1234973
PUT /api/v2/config_templates/:id returns an incomplete set of attributes
Last modified: 2016-07-27 04:52:50 EDT
Created attachment 1042404 [details] Output of foreman-debug from a Satellite 6.1.0 system running RHEL 7.1. Description of problem: A config template has at least the following attributes: * audit_comment * id * locked * name * operatingsystem * organization * snippet * template * template_combinations * template_kind When one updates a config template, the following attributes are returned: * created_at * default * id * locked * name * snippet * template * template_kind_id * updated_at * vendor The following attributes are missing from the response: * audit_comment * operatingsystem * organization * template_combinations Version-Release number of selected component (if applicable): Satellite 6.1.0. Foreman-debug is attached. How reproducible: 100% Steps to Reproduce: 1. Issue HTTP PUT request to https://sat.example.com/api/v2/config_templates/:id 2. Capture the response. Examine the JSON payload and discover that several attributes are not mentioned. 3. Actual results: See "Description of problem" section. Expected results: See "Description of problem" section. Additional info:
Since this issue was entered in Red Hat Bugzilla, the release flag has been set to ? to ensure that it is properly evaluated for this release.
Fixed in http://projects.theforeman.org/issues/10356
This has been resolved in current 6.2 snaps, moving to ON_QA for verification.
FAILED QA: everything is being displayed here just fine, but audit_comment stays 'null'. This makes sense as the audit_comment links to a specific audit, not to the template. So the payload should either contain whole history with references to the individual audit ids with their comments, or audit_comment should show the comment of the recent audit. # curl -u admin:changeme -H "Content-type: application/json" -X PUT -d '{"audit_comment": "foo", "template": "# my updated template"}' https://sat6.com/api/v2/config_templates/87 {"template":"# my updated template","locked":false,"snippet":false,"audit_comment":null,"created_at":"2016-05-18 11:49:57 UTC","updated_at":"2016-05-18 11:52:02 UTC","id":87,"name":"foo","template_kind_id":5,"template_kind_name":"provision","template_combinations":[],"operatingsystems":[],"os_default_templates":[],"locations":[],"organizations":[]}
The issue in comment #5 is a separate issue that is also present in the "get" version of the template json. audit_comment is only used for setting the audit comment, not displaying it. This behavior is inline with the UI - see BZ 1121577 for more info. If you believe this is a bug, please open a new issue. This issue has to do with inconsistency between the result of "GET" and "PUT" to the api - which is now consistent. Moving back to ON_QA.
Verified in Satellite 6.2 Beta Snap 12. { "template": "<%#\nkind: snippet\nname: chief_client\ndescription: this is a single entry point for chef-client bootstrapping, it selects\n a bootstrapping strategy based on host parameter named \"chef_bootstrap_template\"\n note that it can be set per hostgroup, os, domain etc.\n if there's no strategy set, omnibus is used by default\n%>", "locked": false, "snippet": true, "audit_comment": null, "created_at": "2016-05-25 15:35:15 UTC", "updated_at": "2016-05-25 15:35:15 UTC", "id": 111, "name": "chief_client", "template_kind_id": null, "template_kind_name": null, "template_combinations": [], "operatingsystems": [], "os_default_templates": [], "locations": [ { "id": 2, "name": "Default Location", "title": "Default Location", "description": null } ], "organizations": [ { "id": 1, "name": "Default Organization", "title": "Default Organization", "description": null } ] }
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2016:1500