[Openstack] neutron -f json output parsing
Akihiro Motoki
amotoki at gmail.com
Fri Sep 30 11:57:42 UTC 2016
You hit https://bugs.launchpad.net/python-neutronclient/+bug/1524624.
The current neutronclient formats an object to string even if non-table
format is specified.
https://review.openstack.org/#/c/255696/ is the fix but it lacks reviewers
for 10 months :(
2016-09-30 18:16 GMT+09:00 Kevin Benton <kevin at benton.pub>:
> Looks very much like a bug (double json encoding). File a bug on launchpad
> against python-neutronclient.
>
> On Sep 30, 2016 05:10, "Bill Nerenberg" <bill.nerenberg75 at gmail.com>
> wrote:
>
>> Hi all
>>
>> When I run neutron -f json in the command below, the pools value is
>> quoted so I cannot use it with JSON parsers like jq
>>
>> For example, this is neutron's problematic output [1] (see the pools line)
>>
>> $ neutron lbaas-loadbalancer-show ef315cff-1d0a-4327-93c6-e9bf7e544e2d
>> -f json
>> {
>> "description": "",
>> "admin_state_up": false,
>> "tenant_id": "1bcf7ba13bcb496196d72f481bfebb5c",
>> "provisioning_status": "ACTIVE",
>> "vip_subnet_id": "d02c8267-30be-4cdc-aa4a-a7c1ca6504b8",
>> "listeners": "",
>> "vip_address": "10.0.2.160",
>> "vip_port_id": "07227a77-1afe-466b-9d54-20e8637fc2b0",
>> "provider": "f5networks",
>> "pools": "{\"id\": \"1b792ace-0cbf-47cc-a3d5-2140c570ccee\"}",
>> "id": "ef315cff-1d0a-4327-93c6-e9bf7e544e2d",
>> "operating_status": "ONLINE",
>> "name": "test-lbaasv2"
>> }
>>
>> Which triggers an error in jq (or other tools)
>>
>> neutron lbaas-loadbalancer-show ef315cff-1d0a-4327-93c6-e9bf7e544e2d -f
>> json | jq ".pools.id"
>> jq: error: Cannot index string with string
>>
>>
>> If instead I use the followin JSON without the double quotes it works
>> just fine
>>
>> $ cat myjson
>> {
>> "description": "",
>> "admin_state_up": false,
>> "tenant_id": "1bcf7ba13bcb496196d72f481bfebb5c",
>> "provisioning_status": "ACTIVE",
>> "vip_subnet_id": "d02c8267-30be-4cdc-aa4a-a7c1ca6504b8",
>> "listeners": "",
>> "vip_address": "10.0.2.160",
>> "vip_port_id": "07227a77-1afe-466b-9d54-20e8637fc2b0",
>> "provider": "f5networks",
>> "pools": {"id": "1b792ace-0cbf-47cc-a3d5-2140c570ccee"},
>> "id": "ef315cff-1d0a-4327-93c6-e9bf7e544e2d",
>> "operating_status": "ONLINE",
>> "name": "test-lbaasv2"
>> }
>> $ cat myjson | jq ".pools.id"
>> "1b792ace-0cbf-47cc-a3d5-2140c570ccee"
>>
>> Questions, questions...
>>
>> Is it intentional the output of [1] or is it a bug? If it is not a bug
>> and it is intentional... how is it expected we should be parsing it?
>>
>> Comments would be greatly appreciated
>>
>> Many thanks
>>
>>
>>
>>
>>
>> _______________________________________________
>> Mailing list: http://lists.openstack.org/cgi
>> -bin/mailman/listinfo/openstack
>> Post to : openstack at lists.openstack.org
>> Unsubscribe : http://lists.openstack.org/cgi
>> -bin/mailman/listinfo/openstack
>>
>>
> _______________________________________________
> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
> Post to : openstack at lists.openstack.org
> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20160930/3dbb55ec/attachment.html>
More information about the Openstack
mailing list