)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"fe140c7872115c8638c4c95cbaaee230a5650341","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: fix network connectivity problems"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When using Neutron with and there are hundreds of Neutron networks"},{"line_number":10,"context_line":"defined there are cases when a VM that is deployed will not get"},{"line_number":11,"context_line":"network connectivity. This is due to the fact that the network for"},{"line_number":12,"context_line":"the VM in question is not sent in the first blob of data from the VC."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"baa201ad_7fc70613","line":9,"updated":"2014-09-29 20:49:01.000000000","message":"When using Neutron with what? :)","commit_id":"7b20a08e6f0230e787c26f1d49a1d9cf1ff7ab89"}],"nova/virt/vmwareapi/network_util.py":[{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"e55d623e785144cfa609a5d1c0636e7b1a48a75f","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                                      \u0027get_object_properties\u0027,"},{"line_number":79,"context_line":"                                       None, cluster,"},{"line_number":80,"context_line":"                                       \u0027ClusterComputeResource\u0027, [\u0027network\u0027])"},{"line_number":81,"context_line":"    while vm_networks:"},{"line_number":82,"context_line":"        if vm_networks.objects:"},{"line_number":83,"context_line":"            network_obj \u003d _get_network_obj(session, vm_networks.objects,"},{"line_number":84,"context_line":"                                           network_name)"}],"source_content_type":"text/x-python","patch_set":1,"id":"baa201ad_28b9d12e","line":81,"updated":"2014-09-29 15:49:26.000000000","message":"there is utility function called \"continue_retrieval\" in oslo/vim_util.py which hides the usage of tokens; the pattern is:\n\nwhile results:\n    # do something\n    results \u003d session._call_method(vim_util, \"continue_retrieval\", results)","commit_id":"a98f4d365b4a0ab710eec032c18264aeee141ddd"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"2648c57d72dd60fdfa1ecc201cb4a9747f9646dd","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                                      \u0027get_object_properties\u0027,"},{"line_number":79,"context_line":"                                       None, cluster,"},{"line_number":80,"context_line":"                                       \u0027ClusterComputeResource\u0027, [\u0027network\u0027])"},{"line_number":81,"context_line":"    while vm_networks:"},{"line_number":82,"context_line":"        if vm_networks.objects:"},{"line_number":83,"context_line":"            network_obj \u003d _get_network_obj(session, vm_networks.objects,"},{"line_number":84,"context_line":"                                           network_name)"}],"source_content_type":"text/x-python","patch_set":1,"id":"baa201ad_48ee15ee","line":81,"in_reply_to":"baa201ad_28b9d12e","updated":"2014-09-29 15:58:09.000000000","message":"cool. i will update :)","commit_id":"a98f4d365b4a0ab710eec032c18264aeee141ddd"},{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"f231303f3d80f043bb72a08739b27f6ea5f8b75f","unresolved":false,"context_lines":[{"line_number":77,"context_line":"    \"\"\""},{"line_number":78,"context_line":"    vm_networks \u003d session._call_method(vim_util,"},{"line_number":79,"context_line":"                                      \u0027get_object_properties\u0027,"},{"line_number":80,"context_line":"                                       None, cluster,"},{"line_number":81,"context_line":"                                       \u0027ClusterComputeResource\u0027, [\u0027network\u0027])"},{"line_number":82,"context_line":"    while vm_networks:"},{"line_number":83,"context_line":"        if vm_networks.objects:"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa81d914_59b6ef8b","line":80,"updated":"2015-01-27 20:48:32.000000000","message":"nit: fix indentation if you respin","commit_id":"9fc06049440eeafc95727c847f9147eca18a57ba"},{"author":{"_account_id":4395,"name":"Aaron Rosen","email":"aaronorosen@gmail.com","username":"arosen"},"change_message_id":"272b743254b12c5c408405f53442f15b0e2aa5f5","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            network_refs \u003d network_refs.ManagedObjectReference"},{"line_number":43,"context_line":"            for network in network_refs:"},{"line_number":44,"context_line":"                # Get network properties"},{"line_number":45,"context_line":"                if network._type \u003d\u003d \u0027DistributedVirtualPortgroup\u0027:"},{"line_number":46,"context_line":"                    props \u003d session._call_method(vim_util,"},{"line_number":47,"context_line":"                                \"get_dynamic_property\", network,"},{"line_number":48,"context_line":"                                \"DistributedVirtualPortgroup\", \"config\")"}],"source_content_type":"text/x-python","patch_set":10,"id":"fa81d914_e395fee4","line":45,"updated":"2015-01-28 18:02:42.000000000","message":"nit: could consider using nova/virt/vmwareapi/constants.py for these or do it in a later patch.","commit_id":"2973bfb7817604f1e8c6939b59cb19736903e545"},{"author":{"_account_id":4395,"name":"Aaron Rosen","email":"aaronorosen@gmail.com","username":"arosen"},"change_message_id":"272b743254b12c5c408405f53442f15b0e2aa5f5","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            network_obj \u003d _get_network_obj(session, vm_networks.objects,"},{"line_number":85,"context_line":"                                           network_name)"},{"line_number":86,"context_line":"            if network_obj:"},{"line_number":87,"context_line":"                session._call_method(vutil, \u0027cancel_retrieval\u0027,"},{"line_number":88,"context_line":"                                     vm_networks)"},{"line_number":89,"context_line":"                return network_obj"},{"line_number":90,"context_line":"        vm_networks \u003d session._call_method(vutil, \u0027continue_retrieval\u0027,"}],"source_content_type":"text/x-python","patch_set":10,"id":"fa81d914_aee76d3f","line":87,"updated":"2015-01-28 18:02:42.000000000","message":"Just curious why does this need to be done? How does this request work? you have to tell vc to stop requesting itself ?","commit_id":"2973bfb7817604f1e8c6939b59cb19736903e545"},{"author":{"_account_id":9172,"name":"Radoslav Gerganov","email":"rgerganov@vmware.com","username":"rgerganov"},"change_message_id":"2470dbbb5dddc85b364fce88161d569a56319c55","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            network_obj \u003d _get_network_obj(session, vm_networks.objects,"},{"line_number":85,"context_line":"                                           network_name)"},{"line_number":86,"context_line":"            if network_obj:"},{"line_number":87,"context_line":"                session._call_method(vutil, \u0027cancel_retrieval\u0027,"},{"line_number":88,"context_line":"                                     vm_networks)"},{"line_number":89,"context_line":"                return network_obj"},{"line_number":90,"context_line":"        vm_networks \u003d session._call_method(vutil, \u0027continue_retrieval\u0027,"}],"source_content_type":"text/x-python","patch_set":10,"id":"fa81d914_46540a21","line":87,"in_reply_to":"fa81d914_aee76d3f","updated":"2015-01-28 22:30:08.000000000","message":"This is needed to discard the remaining results from the retrieval of the network objects. See PropertyCollector.CancelRetrievePropertiesEx()","commit_id":"2973bfb7817604f1e8c6939b59cb19736903e545"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"0a0eb0186bc1f2ff3b8bcf6eab9fa6165e62124b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"def _get_network_obj(session, network_objects, network_name):"},{"line_number":33,"context_line":"    network_obj \u003d {}"},{"line_number":34,"context_line":"    # network_objects is actually a RetrieveResult object from vSphere API call"},{"line_number":35,"context_line":"    for obj_content in network_objects:"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_92e38004","line":32,"updated":"2015-02-23 19:57:35.000000000","message":"How about a good docstring for this method? Notably absent is a discussion of what happens when none of the RetrieveResult object\u0027s iteration yields contains a propSet attribute or has no propSet.network attribute: this function returns None.\n\nAlso include in the docstring the structure of the dictionary that is returned from this function.","commit_id":"08ded4a11da90d6ff84405c4010fff40d33ed0f4"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"0a0eb0186bc1f2ff3b8bcf6eab9fa6165e62124b","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            network_refs \u003d network_refs.ManagedObjectReference"},{"line_number":43,"context_line":"            for network in network_refs:"},{"line_number":44,"context_line":"                # Get network properties"},{"line_number":45,"context_line":"                if network._type \u003d\u003d \u0027DistributedVirtualPortgroup\u0027:"},{"line_number":46,"context_line":"                    props \u003d session._call_method(vim_util,"},{"line_number":47,"context_line":"                                \"get_dynamic_property\", network,"},{"line_number":48,"context_line":"                                \"DistributedVirtualPortgroup\", \"config\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_523ae836","line":45,"updated":"2015-02-23 19:57:35.000000000","message":"Consider splitting lines 46-63 and 65-72 out into separate helper functions","commit_id":"08ded4a11da90d6ff84405c4010fff40d33ed0f4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"524ba4258bbfc4a85b87d1bfb1797ef0d906c391","unresolved":false,"context_lines":[{"line_number":42,"context_line":"            network_refs \u003d network_refs.ManagedObjectReference"},{"line_number":43,"context_line":"            for network in network_refs:"},{"line_number":44,"context_line":"                # Get network properties"},{"line_number":45,"context_line":"                if network._type \u003d\u003d \u0027DistributedVirtualPortgroup\u0027:"},{"line_number":46,"context_line":"                    props \u003d session._call_method(vim_util,"},{"line_number":47,"context_line":"                                \"get_dynamic_property\", network,"},{"line_number":48,"context_line":"                                \"DistributedVirtualPortgroup\", \"config\")"}],"source_content_type":"text/x-python","patch_set":11,"id":"ba7be1f8_e7393cf3","line":45,"in_reply_to":"ba7be1f8_523ae836","updated":"2015-02-24 14:23:32.000000000","message":"I am not really sure about that. It is just wrapping the method session._call_method. If possible \u0027d like to leave this.","commit_id":"08ded4a11da90d6ff84405c4010fff40d33ed0f4"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"1bd741e77a6017e6d0a371fb1a7fd2030cdef042","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    network_objects."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    :param session: vCenter soap session"},{"line_number":43,"context_line":"    :param network_objects: group of networks"},{"line_number":44,"context_line":"    :param network_name: the requested network"},{"line_number":45,"context_line":"    :return: network object"},{"line_number":46,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_d83892f1","line":43,"updated":"2015-02-24 16:02:18.000000000","message":"This is actually a RetrieveResult object from the vSphere API, not a group of networks...","commit_id":"2269c7a56c9e659760a6b46023fd9ecbe49fe317"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"1bd741e77a6017e6d0a371fb1a7fd2030cdef042","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    :param session: vCenter soap session"},{"line_number":43,"context_line":"    :param network_objects: group of networks"},{"line_number":44,"context_line":"    :param network_name: the requested network"},{"line_number":45,"context_line":"    :return: network object"},{"line_number":46,"context_line":"    \"\"\""},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    network_obj \u003d {}"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba7be1f8_b84cbe9f","line":45,"updated":"2015-02-24 16:02:18.000000000","message":"or None if no networks match the supplied name..","commit_id":"2269c7a56c9e659760a6b46023fd9ecbe49fe317"}]}
