Project

General

Profile

Actions

Bug #24980

closed

Single reference fields are wrongly rendered in yaml and json

Added by Tomáš Strachota over 6 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
High
Assignee:
Category:
Hammer core
Target version:
-
Fixed in Releases:
Found in Releases:
In Kanboard:

Description

When there's a single reference in command's output definition, yaml and json output adapters print the whole root data structure in place of the reference field.

For example:

field nil, _("Domain"), Fields::SingleReference, :key => :domain

prints:

hammer --output=json hostgroup info --id 1                                                                                                                               
{
  "ID": 1,
  "NAME": "Provisioning",
  "TITLE": "Provisioning",
  "NETWORK": {
    "DOMAIN": {
      "CONTENT_SOURCE_ID": null,
      "CONTENT_SOURCE_NAME": null,
      "CONTENT_VIEW_ID": null,
      "CONTENT_VIEW_NAME": null,
      "LIFECYCLE_ENVIRONMENT_ID": null,
      "LIFECYCLE_ENVIRONMENT_NAME": null,
      "KICKSTART_REPOSITORY_ID": null,
      "KICKSTART_REPOSITORY_NAME": null,
      "SUBNET_ID": 1,
      "SUBNET_NAME": "tstracho-laptop",
      "OPERATINGSYSTEM_ID": 3,
      "OPERATINGSYSTEM_NAME": "CentOS 7",
      "DOMAIN_ID": 1,
      "DOMAIN_NAME": "tstracho-laptop",
      "ENVIRONMENT_ID": null,
      "ENVIRONMENT_NAME": null,
      "COMPUTE_PROFILE_ID": null,
      "COMPUTE_PROFILE_NAME": null,
      "ANCESTRY": null,
      "PARENT_ID": null,
      "PARENT_NAME": null,
      "PTABLE_ID": 87,
      "PTABLE_NAME": "Kickstart default",
      "MEDIUM_ID": 9,
      "MEDIUM_NAME": "CentOS Czech mirror",
      "PXE_LOADER": null,
      "SUBNET6_ID": null,
      "SUBNET6_NAME": null,
      "ARCHITECTURE_ID": 1,
      "ARCHITECTURE_NAME": "x86_64",
      "REALM_ID": null,
      "REALM_NAME": null,
      "CREATED_AT": "2018-01-24 12:22:29 -1100",
      "UPDATED_AT": "2018-01-24 12:22:29 -1100",
...

Expected behavior:
JSON and YAML adaptera should print the same fields as the base adapter.
Fixing this might require implementation of formatters specific to certain adapters.


Related issues 1 (0 open1 closed)

Related to Hammer CLI - Tracker #14914: Tracker for output related issuesClosed

Actions
Actions

Also available in: Atom PDF