)]}'
{"id":"openstack%2Fpython-openstackclient~567620","triplet_id":"openstack%2Fpython-openstackclient~master~I626b5193d9ecb308baad7b27939f9673c32b4182","project":"openstack/python-openstackclient","branch":"master","topic":"bug/1689510","hashtags":[],"change_id":"I626b5193d9ecb308baad7b27939f9673c32b4182","subject":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always","status":"MERGED","created":"2018-05-10 15:26:49.000000000","updated":"2018-12-10 20:27:56.000000000","submitted":"2018-12-10 20:09:24.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":4,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"567620-1544472564863-f806cee9","meta_rev_id":"e7ca36ac475e61d29089c7be6adbb932f26314d1","_number":567620,"virtual_id_number":567620,"owner":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"date":"2018-06-13 16:34:59.000000000","_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"value":0,"date":"2018-11-26 10:57:39.000000000","_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},{"value":2,"date":"2018-12-10 20:09:24.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"recommended":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"all":[{"value":0,"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},{"value":1,"date":"2018-12-04 09:02:29.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":2,"date":"2018-12-10 17:10:26.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":1,"date":"2018-06-06 07:35:34.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"all":[{"value":0,"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},{"value":0,"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"value":0,"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"value":0,"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"value":1,"date":"2018-12-10 17:10:26.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-05-11 07:01:43.000000000","updated_by":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"reviewer":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"state":"REVIEWER"},{"updated":"2018-05-22 22:51:08.000000000","updated_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"reviewer":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"state":"REVIEWER"},{"updated":"2018-05-25 17:30:31.000000000","updated_by":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"reviewer":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"state":"REVIEWER"},{"updated":"2018-06-06 07:35:34.000000000","updated_by":{"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},"reviewer":{"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},"state":"REVIEWER"},{"updated":"2018-06-13 16:34:59.000000000","updated_by":{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},"reviewer":{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},"state":"REVIEWER"},{"updated":"2018-12-04 09:02:29.000000000","updated_by":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"reviewer":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"state":"REVIEWER"},{"updated":"2018-12-10 17:10:26.000000000","updated_by":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"reviewer":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"state":"REVIEWER"},{"updated":"2018-12-10 20:09:24.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"f4f1d56c83dd0df4e9a46b0f5d7c0ef9a09862df","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-10 15:26:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"6074391cacba5fdfca98d41f936863d39bef007e","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-05-10 16:56:22.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/1/check/openstack-tox-pep8/e7f08ed/ : SUCCESS in 4m 58s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/1/check/openstack-tox-py27/9f74d5a/ : SUCCESS in 4m 53s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/1/check/openstack-tox-py35/a002fde/ : SUCCESS in 4m 43s\n- build-openstack-sphinx-docs http://logs.openstack.org/20/567620/1/check/build-openstack-sphinx-docs/2f2c81e/html/ : SUCCESS in 5m 06s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/20/567620/1/check/legacy-tempest-dsvm-neutron-src/696c574/ : SUCCESS in 1h 27m 34s\n- openstackclient-check-plugins http://logs.openstack.org/20/567620/1/check/openstackclient-check-plugins/7391a6c/ : FAILURE in 7m 50s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/1/check/osc-tox-py27-tips/0fe9325/ : SUCCESS in 5m 27s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/1/check/osc-tox-py35-tips/defb5c4/ : SUCCESS in 5m 46s\n- osc-functional-devstack http://logs.openstack.org/20/567620/1/check/osc-functional-devstack/3b6aa76/ : SUCCESS in 40m 37s\n- osc-functional-devstack-tips http://logs.openstack.org/20/567620/1/check/osc-functional-devstack-tips/1a62271/ : SUCCESS in 49m 08s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/1/check/openstack-tox-lower-constraints/7b85731/ : SUCCESS in 5m 06s","accounts_in_message":[],"_revision_number":1},{"id":"5059c51f885578beb18a9cde17189ae8f2c033a8","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2018-05-10 20:54:16.000000000","message":"Patch Set 1:\n\nJust a question since I haven\u0027t tried the code yet, but this works Ok for admins right?  Since in that case the server does return True/False?","accounts_in_message":[],"_revision_number":1},{"id":"2ba28fb31dd50384810b5ab7f585564bfb100030","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-10 21:06:20.000000000","message":"Patch Set 1:\n\n\u003e Just a question since I haven\u0027t tried the code yet, but this works\n \u003e Ok for admins right?  Since in that case the server does return\n \u003e True/False?\n\nhttp://paste.openstack.org/show/720797/ - looks like it works fine :) I also checked router with ha\u003dFalse and distributed\u003dFalse - for admin those attributes are displayed, for regular user not :)","accounts_in_message":[],"_revision_number":1},{"id":"d9d1049da1750a987ede65b76b518832199d3a85","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2018-05-10 21:09:22.000000000","message":"Patch Set 1: Code-Review+1\n\nSlawek - thanks, that\u0027s what I thought, nice job!","accounts_in_message":[],"_revision_number":1},{"id":"df48a82adfbbecf0277425fc41c677366c2c16b0","author":{"_account_id":12860,"name":"Dongcan Ye","email":"yedongcan@yeah.net","username":"yedongcan"},"date":"2018-05-11 07:01:43.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"7d29eae2f2e3b735122b7ff465091ac9c4788dba","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2018-05-16 09:18:48.000000000","message":"Patch Set 1: Code-Review-1\n\nThe attributes are still shown in the output of \"router list\", which I consider even more confusing, so that case should maybe be handled identically.\n\nOn the other hand I\u0027m not sure on the effect this dynamic modification of columns might have on scripts that use this command, so I\u0027m wondering whether a better solution would be to keep them in the output, but leave them empty instead of inserting the fake \"False\" value.","accounts_in_message":[],"_revision_number":1},{"id":"db479a70368a8552784bbe96ead4949b3586feb4","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-18 20:08:43.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"cd1b47ec25f04f1c42cd7551e68a028ef82b5745","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-18 20:14:18.000000000","message":"Patch Set 1:\n\n\u003e The attributes are still shown in the output of \"router list\",\n \u003e which I consider even more confusing, so that case should maybe be\n \u003e handled identically.\n\nList should be fixed now.\n\n \u003e \n \u003e On the other hand I\u0027m not sure on the effect this dynamic\n \u003e modification of columns might have on scripts that use this\n \u003e command, so I\u0027m wondering whether a better solution would be to\n \u003e keep them in the output, but leave them empty instead of inserting\n \u003e the fake \"False\" value.\n\nI\u0027m not sure if displaying \"None\", False, True values is better for users to understand which value means what. First of all, for scripts I think that SDK should be used, second thing is that IMO it still might be confusing if You will get ha\u003dNone when query done as regular user but ha\u003dTrue as an admin for same router.\nWith this change it\u0027s clear IMO - no column, no privileges to get it.\nI checked e.g. output of \"openstack server show\" command and its behavior is similar - as and admin I have e.g. \"OS-EXT-SRV-ATTR:hypervisor_hostname\" columns and as an regular user I just don\u0027t get it at all.\n\nHowever, if You and other OSC cores think that it\u0027s better to use \"None\" to show lack of privileges to get value, then this patch can be abandoned as it works like that with patch https://review.openstack.org/567606/ merged already to SDK repo","accounts_in_message":[],"_revision_number":1},{"id":"26d0beed8d828dbbc5370af54c20f94c6a63f4eb","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-05-18 21:47:02.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/2/check/openstack-tox-pep8/9769382/ : SUCCESS in 6m 31s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/2/check/openstack-tox-py27/dcbcab0/ : SUCCESS in 4m 01s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/2/check/openstack-tox-py35/06f148e/ : SUCCESS in 4m 36s\n- build-openstack-sphinx-docs http://logs.openstack.org/20/567620/2/check/build-openstack-sphinx-docs/bce7bf0/html/ : SUCCESS in 4m 53s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/20/567620/2/check/legacy-tempest-dsvm-neutron-src/e6ba2b6/ : SUCCESS in 1h 32m 18s\n- openstackclient-check-plugins http://logs.openstack.org/20/567620/2/check/openstackclient-check-plugins/fca5669/ : FAILURE in 5m 54s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/2/check/osc-tox-py27-tips/0d041a7/ : SUCCESS in 6m 56s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/2/check/osc-tox-py35-tips/2840354/ : SUCCESS in 5m 33s\n- osc-functional-devstack http://logs.openstack.org/20/567620/2/check/osc-functional-devstack/d824802/ : FAILURE in 45m 59s\n- osc-functional-devstack-tips http://logs.openstack.org/20/567620/2/check/osc-functional-devstack-tips/44c9962/ : FAILURE in 39m 07s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/2/check/openstack-tox-lower-constraints/04a988e/ : SUCCESS in 4m 46s","accounts_in_message":[],"_revision_number":2},{"id":"6e59390470eb811f738bd509ca39ea97b1a4bfb3","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-22 16:42:17.000000000","message":"Patch Set 3: Patch Set 2 was rebased","accounts_in_message":[],"_revision_number":3},{"id":"e833fa047682b12c5b4f85c241e6e8e840289898","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-05-22 18:14:38.000000000","message":"Patch Set 3: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/3/check/openstack-tox-pep8/41ce526/ : SUCCESS in 5m 01s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/3/check/openstack-tox-py27/6869c44/ : SUCCESS in 4m 13s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/3/check/openstack-tox-py35/a8894d3/ : SUCCESS in 4m 49s\n- build-openstack-sphinx-docs http://logs.openstack.org/20/567620/3/check/build-openstack-sphinx-docs/52f2ba3/html/ : SUCCESS in 4m 57s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/20/567620/3/check/legacy-tempest-dsvm-neutron-src/a4c5f53/ : SUCCESS in 1h 26m 22s\n- openstackclient-check-plugins http://logs.openstack.org/20/567620/3/check/openstackclient-check-plugins/00a24a8/ : SUCCESS in 5m 37s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/3/check/osc-tox-py27-tips/0d63d40/ : SUCCESS in 5m 19s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/3/check/osc-tox-py35-tips/a8025e7/ : SUCCESS in 5m 25s\n- osc-functional-devstack http://logs.openstack.org/20/567620/3/check/osc-functional-devstack/82398e6/ : SUCCESS in 36m 55s\n- osc-functional-devstack-tips http://logs.openstack.org/20/567620/3/check/osc-functional-devstack-tips/0e294dc/ : FAILURE in 42m 18s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/3/check/openstack-tox-lower-constraints/15238c4/ : SUCCESS in 5m 29s","accounts_in_message":[],"_revision_number":3},{"id":"5ac9ff253725c12070427cee339a8dfbc0cafc61","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-22 20:19:23.000000000","message":"Patch Set 3:\n\nrecheck","accounts_in_message":[],"_revision_number":3},{"id":"9b8b8cac076b5663cd97c37eb3ed84463a1d3982","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-05-22 22:20:36.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/3/check/openstack-tox-pep8/ea8d112/ : SUCCESS in 5m 33s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/3/check/openstack-tox-py27/2917c33/ : SUCCESS in 3m 50s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/3/check/openstack-tox-py35/e0ce11e/ : SUCCESS in 4m 31s\n- build-openstack-sphinx-docs http://logs.openstack.org/20/567620/3/check/build-openstack-sphinx-docs/2566549/html/ : SUCCESS in 5m 41s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/20/567620/3/check/legacy-tempest-dsvm-neutron-src/c80f352/ : SUCCESS in 1h 53m 42s\n- openstackclient-check-plugins http://logs.openstack.org/20/567620/3/check/openstackclient-check-plugins/40a6f88/ : SUCCESS in 5m 29s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/3/check/osc-tox-py27-tips/2a2ce3a/ : SUCCESS in 5m 18s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/3/check/osc-tox-py35-tips/8d2fb20/ : SUCCESS in 6m 35s\n- osc-functional-devstack http://logs.openstack.org/20/567620/3/check/osc-functional-devstack/d2db97b/ : SUCCESS in 39m 16s\n- osc-functional-devstack-tips http://logs.openstack.org/20/567620/3/check/osc-functional-devstack-tips/0a147a4/ : SUCCESS in 41m 09s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/3/check/openstack-tox-lower-constraints/9c7cea6/ : SUCCESS in 5m 22s","accounts_in_message":[],"_revision_number":3},{"id":"3e6c3e09238cb57666c7eacf2496203b62d88dd8","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2018-05-22 22:51:08.000000000","message":"Patch Set 3: Code-Review+1","accounts_in_message":[],"_revision_number":3},{"id":"a7c29926e45d7db9e1022027cfd68ea2c749625f","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2018-05-25 13:54:03.000000000","message":"Patch Set 3:\n\nI just noticed that there seem to be other locations showing similar behaviour. Like \"network show\" output contains \"dns_domain: None\" even if the dns extension isn\u0027t enabled. I\u0027m wondering whether checking this for all neutron related functionality and fixing it in one batch might be better.\n\nOTOH I\u0027m still not convinced that adding lots of special case handling like this will really be an improvement. But I\u0027m no core here, so I\u0027ll leave it for others to vote.","accounts_in_message":[],"_revision_number":3},{"id":"7eb1fc79fc2a699e3c6a8169561c5616e6ee1579","author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"date":"2018-05-25 17:30:31.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"77dd6157079463e32141a4dcf5fa9ccc49977a81","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-25 19:45:26.000000000","message":"Patch Set 4: Commit message was updated.","accounts_in_message":[],"_revision_number":4},{"id":"8d6538783e5775408139a54e067d9716f110ec11","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-05-25 19:45:57.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"0ca442da3232956e43dfde175e5e8d456f80d245","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-05-25 21:08:31.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/4/check/openstack-tox-pep8/e510ef1/ : SUCCESS in 5m 17s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/4/check/openstack-tox-py27/1c0b8cd/ : SUCCESS in 4m 05s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/4/check/openstack-tox-py35/3320559/ : SUCCESS in 4m 31s\n- build-openstack-sphinx-docs http://logs.openstack.org/20/567620/4/check/build-openstack-sphinx-docs/efdfeb0/html/ : SUCCESS in 5m 30s\n- legacy-tempest-dsvm-neutron-src http://logs.openstack.org/20/567620/4/check/legacy-tempest-dsvm-neutron-src/47b7157/ : SUCCESS in 1h 21m 42s\n- openstackclient-check-plugins http://logs.openstack.org/20/567620/4/check/openstackclient-check-plugins/eae3896/ : SUCCESS in 5m 51s (non-voting)\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/4/check/osc-tox-py27-tips/2329e91/ : SUCCESS in 6m 17s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/4/check/osc-tox-py35-tips/ac1bf91/ : SUCCESS in 5m 05s\n- osc-functional-devstack http://logs.openstack.org/20/567620/4/check/osc-functional-devstack/72381cd/ : SUCCESS in 43m 55s\n- osc-functional-devstack-tips http://logs.openstack.org/20/567620/4/check/osc-functional-devstack-tips/1238de6/ : SUCCESS in 48m 43s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/4/check/openstack-tox-lower-constraints/ba56ffa/ : SUCCESS in 5m 02s","accounts_in_message":[],"_revision_number":4},{"id":"ef0f458c0c82ee69442f4535bbe15462e8805045","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-06-01 19:47:46.000000000","message":"Patch Set 4:\n\n* The behaviour should be consistent throughout OSC no matter what it is, it needs to be the same everywhere\n* I personally think having columns/fields appear/disappear based on privileges or roles is bad UI.  Consider csv or JSON output also.  \u0027None\u0027 is Python\u0027s \"data-not-present\" representation (not that it is the correct one to use, just why we use it).\n\nHaving a different representation for admin-only attributes seems do-able, but at a minimum I\u0027d want all of the network commands to behave the same if not all of OSC.","accounts_in_message":[],"_revision_number":4},{"id":"589eefcd4002602130c24f3636b1fe6780528bb7","author":{"_account_id":25564,"name":"yanpuqing","email":"yanpq@awcloud.com","username":"ycx"},"date":"2018-06-06 07:35:34.000000000","message":"Patch Set 4: Code-Review+1","accounts_in_message":[],"_revision_number":4},{"id":"ddc26cd9d331690f7a455b9987f6e805455511b6","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-06-07 10:30:15.000000000","message":"Patch Set 4:\n\nThx for Your review Dean.\n\n \u003e * The behaviour should be consistent throughout OSC no matter what\n \u003e it is, it needs to be the same everywhere\n \u003e * I personally think having columns/fields appear/disappear based\n \u003e on privileges or roles is bad UI.  Consider csv or JSON output\n \u003e also.  \u0027None\u0027 is Python\u0027s \"data-not-present\" representation (not\n \u003e that it is the correct one to use, just why we use it).\n\nI agree with that but in case of e.g. SDK. Here it is tool used by many (sometimes not very technical) people and they don\u0027t need to think in \"JSON style\". So difference between False and None might be not very clear sometimes.\n\n \u003e \n \u003e Having a different representation for admin-only attributes seems\n \u003e do-able, but at a minimum I\u0027d want all of the network commands to\n \u003e behave the same if not all of OSC.\n\nPlease note that it\u0027s already like that for e.g. nova commands IIRC so it\u0027s already not consistent around whole OSC.\nSo what are You proposing? Should I go through all network commands in OSC and fix this behavior for all of them in one commit?\nOr maybe can we merge this one like it is and we will try to do other things to be the same in future.","accounts_in_message":[],"_revision_number":4},{"id":"ba7cc98250955cc85def340856af7156d9b1b725","author":{"_account_id":17120,"name":"Manjeet Singh Bhatia","email":"manjeet.s.bhatia@intel.com","username":"manjeets"},"date":"2018-06-13 16:34:59.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"69c74f6a164838159f2aa8efbceeb9700e75fcfd","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-11-26 10:57:39.000000000","message":"Patch Set 4:\n\n@Dean: please check my last comment and tell me what in Your opinion would be the best option here. I recently had another question from some user who was confused that his router is not configured as \"ha\" even when he expected it to be HA. Confusion came from this \"None\" value displayed in router\u0027s HA field for non admin user who don\u0027t have permission to check that.","accounts_in_message":[],"_revision_number":4},{"id":"8755e12083ae53b136e0c5ccebed14591f2bc208","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2018-12-04 09:02:29.000000000","message":"Patch Set 4: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"28f07beeebbe9f126d972d3bfb7c8ff637b3d122","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2018-12-10 17:10:26.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":4},{"id":"d8e78572e2e46d529b0505e8ddf957df8bf3565a","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-12-10 17:13:01.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"98e39cf303a0119d492714d089173f9f420a011a","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-12-10 20:09:24.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- osc-tox-py27-tips http://logs.openstack.org/20/567620/4/gate/osc-tox-py27-tips/87de4e1/ : SUCCESS in 6m 13s\n- osc-tox-py35-tips http://logs.openstack.org/20/567620/4/gate/osc-tox-py35-tips/1e559a8/ : SUCCESS in 5m 47s\n- openstack-tox-lower-constraints http://logs.openstack.org/20/567620/4/gate/openstack-tox-lower-constraints/f8b2891/ : SUCCESS in 5m 46s\n- openstack-tox-pep8 http://logs.openstack.org/20/567620/4/gate/openstack-tox-pep8/5e2a105/ : SUCCESS in 5m 38s\n- openstack-tox-py27 http://logs.openstack.org/20/567620/4/gate/openstack-tox-py27/b450c7a/ : SUCCESS in 4m 45s\n- openstack-tox-py35 http://logs.openstack.org/20/567620/4/gate/openstack-tox-py35/0bc6b99/ : SUCCESS in 5m 17s\n- openstack-tox-py36 http://logs.openstack.org/20/567620/4/gate/openstack-tox-py36/046b89e/ : SUCCESS in 5m 38s\n- openstack-tox-docs http://logs.openstack.org/20/567620/4/gate/openstack-tox-docs/b4eb3f0/html/ : SUCCESS in 5m 42s\n- tempest-full http://logs.openstack.org/20/567620/4/gate/tempest-full/1c3a9e8/ : SUCCESS in 1h 21m 30s\n- tempest-full-py3 http://logs.openstack.org/20/567620/4/gate/tempest-full-py3/f696015/ : SUCCESS in 1h 19m 02s\n- osc-functional-devstack http://logs.openstack.org/20/567620/4/gate/osc-functional-devstack/87cf8eb/ : SUCCESS in 43m 50s","accounts_in_message":[],"_revision_number":4},{"id":"4bb5894ffcfea4b564e8b8df197dc38a8b1fc46b","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-12-10 20:09:24.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":4},{"id":"a31003b9e25f0d2e71bc3d25e74e97e24f301429","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-12-10 20:27:38.000000000","message":"Patch Set 4: Cherry Picked\n\nThis patchset was cherry picked to branch stable/rocky as commit 42155fae8cd64038ce0fc0de181070ad32a6f84a","accounts_in_message":[],"_revision_number":4},{"id":"45e5bd20ff6e0590f26780e259be0c891bc10a71","author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"date":"2018-12-10 20:27:56.000000000","message":"Patch Set 4: Cherry Picked\n\nThis patchset was cherry picked to branch stable/queens as commit bda3dac64bcbc424ffec001b512e2893bcee794d","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"8db3933feb35f91f3ff3d121c155286973c66122","revisions":{"0094a0cf23d781ed19241bf4abb7213c6d2cba91":{"kind":"REWORK","_number":1,"created":"2018-05-10 15:26:49.000000000","uploader":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"ref":"refs/changes/20/567620/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/20/567620/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/1"}}},"commit":{"parents":[{"commit":"06263bd5852aad9cd03a76f50140fbbb2d0751ba","subject":"Merge \"Fix limits show command without Nova and Cinder\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/06263bd5852aad9cd03a76f50140fbbb2d0751ba"}]}],"author":{"name":"Sławek Kapłoński","email":"slawek@kaplonski.pl","date":"2018-05-10 15:16:48.000000000","tz":120},"committer":{"name":"Sławek Kapłoński","email":"slawek@kaplonski.pl","date":"2018-05-10 15:26:47.000000000","tz":120},"subject":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always","message":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always\n\nIn case when is_ha or is_distributed attribute of Neutron\u0027s router is\nset to None, it means that it wasn\u0027t returned from server and should\nnot be displayed.\nOtherwise it might be confusing for user is making\nopenstack router show \u003crouter_name\u003e\ncall as an admin will return e.g. is_ha\u003dTrue but same call done as\nregular user will return False or None.\nIt might happen like that because returning of those attributes is\nforbidden for regular users in Neutron\u0027s policy.json\n\nDepends-On: https://review.openstack.org/567606/\nChange-Id: I626b5193d9ecb308baad7b27939f9673c32b4182\nCloses-Bug: #1689510\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/0094a0cf23d781ed19241bf4abb7213c6d2cba91"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/0094a0cf23d781ed19241bf4abb7213c6d2cba91"}]},"branch":"refs/heads/master"},"00b92a8a3d73f6ea537744ce0fc9d5f3cd534c2a":{"kind":"REWORK","_number":2,"created":"2018-05-18 20:08:43.000000000","uploader":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"ref":"refs/changes/20/567620/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/20/567620/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/2"}}},"commit":{"parents":[{"commit":"06263bd5852aad9cd03a76f50140fbbb2d0751ba","subject":"Merge \"Fix limits show command without Nova and Cinder\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/06263bd5852aad9cd03a76f50140fbbb2d0751ba"}]}],"author":{"name":"Sławek Kapłoński","email":"slawek@kaplonski.pl","date":"2018-05-10 15:16:48.000000000","tz":120},"committer":{"name":"Slawek Kaplonski","email":"skaplons@redhat.com","date":"2018-05-18 20:08:41.000000000","tz":120},"subject":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always","message":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always\n\nIn case when is_ha or is_distributed attribute of Neutron\u0027s router is\nset to None, it means that it wasn\u0027t returned from server and should\nnot be displayed.\nOtherwise it might be confusing for user is making\nopenstack router show \u003crouter_name\u003e\ncall as an admin will return e.g. is_ha\u003dTrue but same call done as\nregular user will return False or None.\nIt might happen like that because returning of those attributes is\nforbidden for regular users in Neutron\u0027s policy.json\n\nDepends-On: https://review.openstack.org/567606/\nChange-Id: I626b5193d9ecb308baad7b27939f9673c32b4182\nCloses-Bug: #1689510\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/00b92a8a3d73f6ea537744ce0fc9d5f3cd534c2a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/00b92a8a3d73f6ea537744ce0fc9d5f3cd534c2a"}]},"branch":"refs/heads/master"},"b4b10069634923ec922e9080f34540fce808a1f7":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2018-05-22 16:42:17.000000000","uploader":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"ref":"refs/changes/20/567620/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/20/567620/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/3"}}},"commit":{"parents":[{"commit":"f7e4d31820e797e0d374e7dfde1142373245ea87","subject":"Update command test for volume.v3","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/f7e4d31820e797e0d374e7dfde1142373245ea87"}]}],"author":{"name":"Sławek Kapłoński","email":"slawek@kaplonski.pl","date":"2018-05-10 15:16:48.000000000","tz":120},"committer":{"name":"Slawek Kaplonski","email":"skaplons@redhat.com","date":"2018-05-22 16:42:17.000000000","tz":0},"subject":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always","message":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always\n\nIn case when is_ha or is_distributed attribute of Neutron\u0027s router is\nset to None, it means that it wasn\u0027t returned from server and should\nnot be displayed.\nOtherwise it might be confusing for user is making\nopenstack router show \u003crouter_name\u003e\ncall as an admin will return e.g. is_ha\u003dTrue but same call done as\nregular user will return False or None.\nIt might happen like that because returning of those attributes is\nforbidden for regular users in Neutron\u0027s policy.json\n\nDepends-On: https://review.openstack.org/567606/\nChange-Id: I626b5193d9ecb308baad7b27939f9673c32b4182\nCloses-Bug: #1689510\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b4b10069634923ec922e9080f34540fce808a1f7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/b4b10069634923ec922e9080f34540fce808a1f7"}]},"branch":"refs/heads/master"},"8db3933feb35f91f3ff3d121c155286973c66122":{"kind":"NO_CODE_CHANGE","_number":4,"created":"2018-05-25 19:45:26.000000000","uploader":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"ref":"refs/changes/20/567620/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/20/567620/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/20/567620/4"}}},"commit":{"parents":[{"commit":"f7e4d31820e797e0d374e7dfde1142373245ea87","subject":"Update command test for volume.v3","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/f7e4d31820e797e0d374e7dfde1142373245ea87"}]}],"author":{"name":"Sławek Kapłoński","email":"slawek@kaplonski.pl","date":"2018-05-10 15:16:48.000000000","tz":120},"committer":{"name":"Slawek Kaplonski","email":"skaplons@redhat.com","date":"2018-05-25 19:45:13.000000000","tz":0},"subject":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always","message":"Don\u0027t display router\u0027s is_ha and is_distributed attributes always\n\nIn case when is_ha or is_distributed attribute of Neutron\u0027s router is\nset to None, it means that it wasn\u0027t returned from server and should\nnot be displayed.\nOtherwise it might be confusing for user is making\nopenstack router show \u003crouter_name\u003e\ncall as an admin will return e.g. is_ha\u003dTrue but same call done as\nregular user will return False or None.\nIt might happen like that because returning of those attributes is\nforbidden for regular users in Neutron\u0027s policy.json\n\nDepends-On: https://review.openstack.org/567606/\nChange-Id: I626b5193d9ecb308baad7b27939f9673c32b4182\nCloses-Bug: #1689510\nTask: 19789\nStory: 2002110\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/8db3933feb35f91f3ff3d121c155286973c66122"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/8db3933feb35f91f3ff3d121c155286973c66122"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
