Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1133097

Summary: Issuing a GET to katello/api/v2/systems/:uuid returns bad data
Product: Red Hat Satellite Reporter: jaudet
Component: APIAssignee: Christine Fouant <cfouant>
Status: CLOSED WONTFIX QA Contact: Katello QA List <katello-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.0.4CC: jsherril, kmurugad, omaciel
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-25 17:27:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
A visual diff of the POST/PUT parameters and GET parameters. none

Description jaudet 2014-08-22 17:45:21 UTC
Created attachment 929719 [details]
A visual diff of the POST/PUT parameters and GET parameters.

Description of problem:
The set of parameters that one can send when issuing an HTTP POST to /katello/api/v2/systems or an HTTP PUT to /katello/api/v2/systems/:uuid is very different from the set of data returned when issuing an HTTP GET to /katello/api/v2/systems/:uuid.

Version-Release number of selected component (if applicable):
I tested this issue againste qetello02.usersys.redhat.com, which is running Satellite 6.0.4 The following software is installed:

* apr-util-ldap-1.3.9-3.el6_0.1.x86_64
* candlepin-0.9.23-1.el6_5.noarch
* candlepin-common-1.0.1-1.el6_5.noarch
* candlepin-scl-1-5.el6_4.noarch
* candlepin-scl-quartz-2.1.5-5.el6_4.noarch
* candlepin-scl-rhino-1.7R3-1.el6_4.noarch
* candlepin-scl-runtime-1-5.el6_4.noarch
* candlepin-selinux-0.9.23-1.el6_5.noarch
* candlepin-tomcat6-0.9.23-1.el6_5.noarch
* elasticsearch-0.90.10-6.el6sat.noarch
* foreman-1.6.0.40-1.el6sat.noarch
* foreman-compute-1.6.0.40-1.el6sat.noarch
* foreman-gce-1.6.0.40-1.el6sat.noarch
* foreman-libvirt-1.6.0.40-1.el6sat.noarch
* foreman-ovirt-1.6.0.40-1.el6sat.noarch
* foreman-postgresql-1.6.0.40-1.el6sat.noarch
* foreman-proxy-1.6.0.28-1.el6sat.noarch
* foreman-selinux-1.6.0.9-1.el6sat.noarch
* foreman-vmware-1.6.0.40-1.el6sat.noarch
* katello-1.5.0-28.el6sat.noarch
* katello-ca-1.0-1.noarch
* katello-certs-tools-1.5.6-1.el6sat.noarch
* katello-installer-0.0.59-1.el6sat.noarch
* openldap-2.4.23-32.el6_4.1.x86_64
* pulp-katello-0.3-3.el6sat.noarch
* pulp-nodes-common-2.4.0-0.30.beta.el6sat.noarch
* pulp-nodes-parent-2.4.0-0.30.beta.el6sat.noarch
* pulp-puppet-plugins-2.4.0-0.30.beta.el6sat.noarch
* pulp-puppet-tools-2.4.0-0.30.beta.el6sat.noarch
* pulp-rpm-plugins-2.4.0-0.30.beta.el6sat.noarch
* pulp-selinux-2.4.0-0.30.beta.el6sat.noarch
* pulp-server-2.4.0-0.30.beta.el6sat.noarch
* python-ldap-2.3.10-1.el6.x86_64
* ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
* ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch

How reproducible:
100%

Steps to Reproduce:
1. Examine the API docs for POST /katello/api/v2/systems and PUT /katello/api/v2/systems/:uuid. Take note of the available parameters.
2. Examine the values returned by a call to GET /katello/api/v2/systems/:uuid.

Actual results:
The following parameters are returned by an HTTP GET call to /katello/api/v2/systems/:uuid:

[
    u'activation_keys',
    u'autoheal',
    u'checkin_time',
    u'content_overrides',
    u'content_view',
    u'content_view_id',
    u'created',
    u'customInfo',
    u'description',
    u'distribution',
    u'entitlementStatus',
    u'environment',
    u'host',
    u'hostCollections',
    u'href',
    u'id',
    u'installedProducts',
    u'location',
    u'name',
    u'permissions',
    u'products',
    u'release',
    u'release_ver',
    u'service_level',
    u'uuid',
]

Expected results:

[
    u'content_view_id',
    u'description',
    u'environment_id',
    u'facts',
    u'guest_ids',
    u'host_collection_id',
    u'id',
    u'installed_products',
    u'last_checkin',
    u'location',
    u'name',
    u'organization_id',
    u'release_ver',
    u'service_level',
    u'type',
    u'uuid',
]

Additional info:
Certain pieces of information are missing when issuing an HTTP GET to the systems API endpoint. For example, the system's organization_id is not listed, nor is the system's facts. Other pieces of information are inconsistently named. For example, when creating or updating a system, the parameter "installed_products" should be used, but when getting a system, the parameter "installedProducts" is returned.

Comment 2 RHEL Program Management 2014-08-22 18:02:56 UTC
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.

Comment 4 Christine Fouant 2014-09-02 16:07:53 UTC
The Katello Systems API will be deprecated and changing as it becomes more tightly related to Foreman Hosts. At that time, consistency across the app will be implemented.

Comment 5 jaudet 2014-09-11 17:33:23 UTC
Wonderful. I'm looking forward to that.

Comment 8 Justin Sherrill 2016-02-25 17:27:40 UTC
The /systems api is deprecated in favor of the /hosts api.  Satellite 6.2 embraces this in a big way by adding content and subscription attributes to the /hosts api which is more consistent between the list and show views. 

The list view should always be a subset of the show view.  Closing this as WONTFIX.