)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17405,"name":"Jacob Gregor","email":"jgregor@us.ibm.com","username":"jgregor"},"change_message_id":"994632b9970f6248691347fb0d92f142891a1954","unresolved":false,"context_lines":[{"line_number":9,"context_line":"A driver specific requirement module should not be a hard requirement,"},{"line_number":10,"context_line":"since the choice of drivers is based on operator. oslo.vmware module"},{"line_number":11,"context_line":"is to be moved out of the requirements.txt and instead listed as"},{"line_number":12,"context_line":"optional dependecy using extras functionality in setup.cfg."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"A check is added to the vmdk driver to gracefully handle import errors"},{"line_number":15,"context_line":"if the vmdk driver is used and oslo.vmware is not found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa80f949_127b88f6","line":12,"updated":"2015-11-06 16:51:52.000000000","message":"dependecy -\u003e dependency","commit_id":"7c15fff6be8027663e515d136a8e2c532f1be920"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"7e2a0fa57c6bfeee92f285b04f42c0dd9147a628","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"A driver specific requirement module should not be a hard requirement,"},{"line_number":10,"context_line":"since the choice of drivers is based on operator. oslo.vmware module"},{"line_number":11,"context_line":"is to be moved out of the requirements.txt and instead listed as"},{"line_number":12,"context_line":"optional dependecy using extras functionality in setup.cfg."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"A check is added to the vmdk driver to gracefully handle import errors"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"bae84128_257dbf6e","line":11,"range":{"start_line":11,"start_character":9,"end_line":11,"end_character":42},"updated":"2016-02-22 05:58:34.000000000","message":"The change in requirements.txt is missing.","commit_id":"b8be89fa9d9743abb5a84853fc505aaa88588b88"},{"author":{"_account_id":17130,"name":"melissaml","email":"ma.lei@99cloud.net","username":"malei"},"change_message_id":"827de7076e70081cc31345111ab82edf6ee0356a","unresolved":false,"context_lines":[{"line_number":9,"context_line":"A driver specific requirement module should not be a hard requirement,"},{"line_number":10,"context_line":"since the choice of drivers is based on operator. oslo.vmware module"},{"line_number":11,"context_line":"is to be moved out of the requirements.txt and instead listed as"},{"line_number":12,"context_line":"optional dependecy using extras functionality in setup.cfg."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"A check is added to the vmdk driver to gracefully handle import errors"},{"line_number":15,"context_line":"if the vmdk driver is used and oslo.vmware is not found. Unit test"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"3aaa91ec_6b8304cd","line":12,"range":{"start_line":12,"start_character":9,"end_line":12,"end_character":18},"updated":"2016-06-29 11:45:03.000000000","message":"dependency","commit_id":"4dc97015e169a03a3ea4fe41c166ba01966ffbf2"}],"cinder/tests/unit/test_vmware_vmdk.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"5f1833705ab7c1542ae4f66d4e21d967b65cb2d3","unresolved":false,"context_lines":[{"line_number":1460,"context_line":"        self.assertRaises(cinder_exceptions.VolumeDriverException,"},{"line_number":1461,"context_line":"                          self._driver.do_setup,"},{"line_number":1462,"context_line":"                          mock.ANY)"},{"line_number":1463,"context_line":"        vmdk.oslo_vmware \u003d temp_oslo_vmware"},{"line_number":1464,"context_line":""},{"line_number":1465,"context_line":"    @mock.patch(\u0027cinder.volume.drivers.vmware.vmdk.VMwareVcVmdkDriver.\u0027"},{"line_number":1466,"context_line":"                \u0027_validate_vcenter_version\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"bae84128_4dc8d022","line":1463,"updated":"2016-02-22 16:51:56.000000000","message":"If this test fails, vmdk.oslo_vmware doesn\u0027t get the right value assigned back to it.  This should probably be handled with mock rather than manual assignment.","commit_id":"d5cf3a1ad2d1d0c0d8c6dad9d5e22e7d4d47aeb8"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"b653986b0d803e22667feff0e69a25c68f050d91","unresolved":false,"context_lines":[{"line_number":1454,"context_line":"            six.text_type(vc_version))"},{"line_number":1455,"context_line":""},{"line_number":1456,"context_line":"    def test_do_setup_with_no_oslo_vmware(self):"},{"line_number":1457,"context_line":"        temp_oslo_vmware \u003d vmdk.oslo_vmware"},{"line_number":1458,"context_line":"        vmdk.oslo_vmware \u003d None"},{"line_number":1459,"context_line":""},{"line_number":1460,"context_line":"        try:"},{"line_number":1461,"context_line":"            self.assertRaises(cinder_exceptions.VolumeDriverException,"}],"source_content_type":"text/x-python","patch_set":6,"id":"bae84128_71585457","line":1458,"range":{"start_line":1457,"start_character":0,"end_line":1458,"end_character":31},"updated":"2016-02-25 12:02:03.000000000","message":"Can\u0027t we do that with a mock? Something like this should do the trick:\n\n @mock.patch(\u0027vmdk.oslo_vmware\u0027, None)","commit_id":"5f5e429933a041ea4510bf940bcef456044a7bb5"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"2b2a1b77c2b1caf6c31ba5f6986746f0311431b4","unresolved":false,"context_lines":[{"line_number":1454,"context_line":"            six.text_type(vc_version))"},{"line_number":1455,"context_line":""},{"line_number":1456,"context_line":"    def test_do_setup_with_no_oslo_vmware(self):"},{"line_number":1457,"context_line":"        temp_oslo_vmware \u003d vmdk.oslo_vmware"},{"line_number":1458,"context_line":"        vmdk.oslo_vmware \u003d None"},{"line_number":1459,"context_line":""},{"line_number":1460,"context_line":"        try:"},{"line_number":1461,"context_line":"            self.assertRaises(cinder_exceptions.VolumeDriverException,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9aed3d3a_0da1ef94","line":1458,"range":{"start_line":1457,"start_character":0,"end_line":1458,"end_character":31},"in_reply_to":"bae84128_71585457","updated":"2016-02-26 10:37:43.000000000","message":"Done","commit_id":"5f5e429933a041ea4510bf940bcef456044a7bb5"},{"author":{"_account_id":15383,"name":"Yucong Feng","email":"yfeng@us.ibm.com","username":"yfeng"},"change_message_id":"7fdcd2049f65287b16817f2cf554d14730897701","unresolved":false,"context_lines":[{"line_number":1454,"context_line":"            six.text_type(vc_version))"},{"line_number":1455,"context_line":""},{"line_number":1456,"context_line":"    def test_do_setup_with_no_oslo_vmware(self):"},{"line_number":1457,"context_line":"        temp_oslo_vmware \u003d vmdk.oslo_vmware"},{"line_number":1458,"context_line":"        vmdk.oslo_vmware \u003d None"},{"line_number":1459,"context_line":""},{"line_number":1460,"context_line":"        try:"},{"line_number":1461,"context_line":"            self.assertRaises(cinder_exceptions.VolumeDriverException,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9aed3d3a_68b0928c","line":1458,"range":{"start_line":1457,"start_character":0,"end_line":1458,"end_character":31},"in_reply_to":"bae84128_71585457","updated":"2016-02-25 19:06:31.000000000","message":"Unfortunately the patching doesn\u0027t work. Tried multiple approaches with the patch, ended up getting an target error.\n\nTypeError: Need a valid target to patch.\n\nIf you have any other suggestionsm I can also try it also. But the simplest form I found that work is to wrap the assertion in a Try block.","commit_id":"5f5e429933a041ea4510bf940bcef456044a7bb5"}],"cinder/volume/drivers/vmware/vmdk.py":[{"author":{"_account_id":17405,"name":"Jacob Gregor","email":"jgregor@us.ibm.com","username":"jgregor"},"change_message_id":"994632b9970f6248691347fb0d92f142891a1954","unresolved":false,"context_lines":[{"line_number":1727,"context_line":"        if oslo_vmware is None:"},{"line_number":1728,"context_line":"            msg \u003d _(\"Missing \u0027oslo_vmware\u0027 python module, ensure the library \""},{"line_number":1729,"context_line":"                    \"is installed and available.\")"},{"line_number":1730,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"},{"line_number":1731,"context_line":"        self._validate_params()"},{"line_number":1732,"context_line":""},{"line_number":1733,"context_line":"        # Validate vCenter version."}],"source_content_type":"text/x-python","patch_set":1,"id":"fa80f949_b2539c6a","line":1730,"updated":"2015-11-06 16:51:52.000000000","message":"We should probably either update or add a unit test to make sure we are reaching this new exception.","commit_id":"7c15fff6be8027663e515d136a8e2c532f1be920"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"fc84329f0ba60a70a34c007a7ddd3973a5951beb","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    from oslo_vmware import exceptions"},{"line_number":43,"context_line":"    from oslo_vmware import image_transfer"},{"line_number":44,"context_line":"    from oslo_vmware import pbm"},{"line_number":45,"context_line":"    from oslo_vmware import vim_util"},{"line_number":46,"context_line":"import six"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"from cinder import exception"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_fd3b71e9","line":45,"updated":"2016-03-08 15:46:27.000000000","message":"-1: I don\u0027t see the point of importing oslo_vmware if it\u0027s just going to be used as a sentinel.  I would prefer a more straightforward solution\n\ntry:\n    from oslo_vmware import api\n    from oslo_vmware import exceptions\n    from oslo_vmware import image_transfer\n    from oslo_vmware import pbm\n    from oslo_vmware import vim_util\nexcept ImportError:\n    vim_util \u003d None\n\nAnd then we just use vim_util as the sentinel.","commit_id":"a7c011471255dad47e242b7bdbcd5747070f6a44"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"417a6a7637bfbe8e159944798d76ec4c00cdf2ee","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    from oslo_vmware import exceptions"},{"line_number":43,"context_line":"    from oslo_vmware import image_transfer"},{"line_number":44,"context_line":"    from oslo_vmware import pbm"},{"line_number":45,"context_line":"    from oslo_vmware import vim_util"},{"line_number":46,"context_line":"import six"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"from cinder import exception"}],"source_content_type":"text/x-python","patch_set":7,"id":"9abb7d3a_25f2e1d2","line":45,"in_reply_to":"5aef4532_fd3b71e9","updated":"2016-06-03 17:38:43.000000000","message":"We\u0027re importing \u003e50% of the oslo_vmware library anyway, so I think the best way to do this is to just do the try import as done here, then\n\n  api \u003d oslo_vmware.api\n  exceptions \u003d oslo_vmware.exceptions\n\netc. as needed to make the code more readable below (which is why I assume these are done this way.)  Avoiding importing the whole lib is not worthwhile.","commit_id":"a7c011471255dad47e242b7bdbcd5747070f6a44"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"af3689aaae38cf695538810e22066bde88b19b34","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    from oslo_vmware import exceptions"},{"line_number":43,"context_line":"    from oslo_vmware import image_transfer"},{"line_number":44,"context_line":"    from oslo_vmware import pbm"},{"line_number":45,"context_line":"    from oslo_vmware import vim_util"},{"line_number":46,"context_line":"import six"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"from cinder import exception"}],"source_content_type":"text/x-python","patch_set":7,"id":"7aa08908_e75e5c44","line":45,"in_reply_to":"9abb7d3a_25f2e1d2","updated":"2016-06-06 10:22:45.000000000","message":"Eric, I don\u0027t really care if we do it your way or my way, but the way you suggest is also different from how it is being done in this patch.  In this patch we import the whole library and then just use that import as a sentinel, which I consider to be the wrong approach.","commit_id":"a7c011471255dad47e242b7bdbcd5747070f6a44"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"aaf5c273b9fdf4ce4632fa943e80814494d19f51","unresolved":false,"context_lines":[{"line_number":39,"context_line":"except ImportError:"},{"line_number":40,"context_line":"    oslo_vmware \u003d None"},{"line_number":41,"context_line":"else:"},{"line_number":42,"context_line":"    api \u003d oslo_vmware.api"},{"line_number":43,"context_line":"    exceptions \u003d oslo_vmware.exceptions"},{"line_number":44,"context_line":"    image_transfer \u003d oslo_vmware.image_transfer"},{"line_number":45,"context_line":"    pbm \u003d oslo_vmware.pbm"}],"source_content_type":"text/x-python","patch_set":8,"id":"7aa08908_0d9df8bb","line":42,"updated":"2016-06-08 10:12:57.000000000","message":"This code won\u0027t work: http://paste.openstack.org/show/508882/","commit_id":"d8c7979f6faee7ef784ee32e6c3a8c35c63297ed"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"db3e25df74c8bc8b8eeb7eea8e110771a7e0e72a","unresolved":false,"context_lines":[{"line_number":1829,"context_line":""},{"line_number":1830,"context_line":"    def do_setup(self, context):"},{"line_number":1831,"context_line":"        \"\"\"Any initialization the volume driver does while starting.\"\"\""},{"line_number":1832,"context_line":"        if oslo_vmware is None:"},{"line_number":1833,"context_line":"            msg \u003d _(\"Missing \u0027oslo_vmware\u0027 python module, ensure the library \""},{"line_number":1834,"context_line":"                    \"is installed and available.\")"},{"line_number":1835,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":9,"id":"3aaa91ec_0e7899f1","line":1832,"range":{"start_line":1832,"start_character":11,"end_line":1832,"end_character":22},"updated":"2016-06-29 08:53:24.000000000","message":"-1: This should be\n\n if vim_util is None:","commit_id":"4dc97015e169a03a3ea4fe41c166ba01966ffbf2"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"e6be2f745b49743eeef9e97fd013933343a7cb11","unresolved":false,"context_lines":[{"line_number":1829,"context_line":""},{"line_number":1830,"context_line":"    def do_setup(self, context):"},{"line_number":1831,"context_line":"        \"\"\"Any initialization the volume driver does while starting.\"\"\""},{"line_number":1832,"context_line":"        if vm_util is None:"},{"line_number":1833,"context_line":"            msg \u003d _(\"Missing \u0027oslo_vmware\u0027 python module, ensure the library \""},{"line_number":1834,"context_line":"                    \"is installed and available.\")"},{"line_number":1835,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":10,"id":"3aaa91ec_067fa0e0","line":1832,"range":{"start_line":1832,"start_character":11,"end_line":1832,"end_character":18},"updated":"2016-06-30 09:38:57.000000000","message":"-1: It should be vim_util","commit_id":"b3667042ff4721b317743b2501444e78e067fa91"}],"tox.ini":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"fc84329f0ba60a70a34c007a7ddd3973a5951beb","unresolved":false,"context_lines":[{"line_number":17,"context_line":"#                after I937823ffeb95725f0b55e298ebee1857d6482883 lands."},{"line_number":18,"context_line":"deps \u003d -r{toxinidir}/test-requirements.txt"},{"line_number":19,"context_line":"       oslo.versionedobjects[fixtures]"},{"line_number":20,"context_line":"       .[vmdk]"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"# By default ostestr will set concurrency"},{"line_number":23,"context_line":"# to ncpu, to specify something else use"}],"source_content_type":"text/x-properties","patch_set":7,"id":"5aef4532_386967bf","line":20,"updated":"2016-03-08 15:46:27.000000000","message":"-1: We don\u0027t need this if we have already included the dependency in test-requirements.txt","commit_id":"a7c011471255dad47e242b7bdbcd5747070f6a44"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"db3e25df74c8bc8b8eeb7eea8e110771a7e0e72a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#                after I937823ffeb95725f0b55e298ebee1857d6482883 lands."},{"line_number":16,"context_line":"deps \u003d -r{toxinidir}/test-requirements.txt"},{"line_number":17,"context_line":"       oslo.versionedobjects[fixtures]"},{"line_number":18,"context_line":"       .[vmdk]"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"# By default ostestr will set concurrency"},{"line_number":21,"context_line":"# to ncpu, to specify something else use"}],"source_content_type":"text/x-properties","patch_set":9,"id":"3aaa91ec_eef70d57","line":18,"updated":"2016-06-29 08:53:24.000000000","message":"-1: You have already included the module in test-requirements.txt, no need to add this section here as well.","commit_id":"4dc97015e169a03a3ea4fe41c166ba01966ffbf2"}]}
