)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"change_message_id":"4b8b68478b36b232cb84ad6f5b6a8b38550cc159","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Subramanian Neelakantan \u003csubramanian.neelakantan@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-12-13 13:30:57 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Storage policy based volume placement."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new feature to vmdk cinder driver. Users will be"},{"line_number":10,"context_line":"able to specify a vSphere storage policy in a volume-type. Creating"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9Pjw%3D","line":7,"updated":"2013-12-13 15:39:43.000000000","message":"Add \u0027vmware:\u0027 to this subject line please","commit_id":"1c3b936ad0925463676485d9710fa06b3fca35f9"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"56f78eabb6096ddafe9ef0147e392359b8a654d0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Subramanian Neelakantan \u003csubramanian.neelakantan@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-12-13 13:30:57 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Storage policy based volume placement."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new feature to vmdk cinder driver. Users will be"},{"line_number":10,"context_line":"able to specify a vSphere storage policy in a volume-type. Creating"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAATn%2F9PNI%3D","line":7,"in_reply_to":"AAAATn%2F9Pjw%3D","updated":"2013-12-13 16:54:00.000000000","message":"Done","commit_id":"1c3b936ad0925463676485d9710fa06b3fca35f9"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":12,"context_line":"storage policy in vSphere. The driver places this volume only on a"},{"line_number":13,"context_line":"datastore that satisfies this storage policy."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change in patch set 3: Bumped up driver version to 1.1"},{"line_number":16,"context_line":"Change in patch set 4: Addressed Gary\u0027s comments"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implements: blueprint vmdk-storage-policy-volume-type"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAUH%2F%2FfE4%3D","line":15,"updated":"2014-01-13 12:35:56.000000000","message":"i do not think that you need these","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":12,"context_line":"storage policy in vSphere. The driver places this volume only on a"},{"line_number":13,"context_line":"datastore that satisfies this storage policy."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change in patch set 3: Bumped up driver version to 1.1"},{"line_number":16,"context_line":"Change in patch set 4: Addressed Gary\u0027s comments"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implements: blueprint vmdk-storage-policy-volume-type"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAAUH%2F%2FY0g%3D","line":15,"in_reply_to":"AAAAUH%2F%2FfE4%3D","updated":"2014-01-14 12:11:52.000000000","message":"Ok. Will remove these.","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Subramanian Neelakantan \u003csubramanian.neelakantan@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-01-16 10:42:21 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: Storage policy based volume placement."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new feature to vmdk cinder driver. Users will be"},{"line_number":10,"context_line":"able to specify a vSphere storage policy in a volume-type. Creating"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"AAAAUH%2F%2FIXU%3D","line":7,"updated":"2014-01-17 06:17:59.000000000","message":"nit: as per http://docs.openstack.org/developer/hacking/\n\n\"If the change relates to a specific driver (libvirt, xenapi, qpid, etc...), begin the first line of the commit message with the driver name, lowercased, followed by a colon.\"","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Subramanian Neelakantan \u003csubramanian.neelakantan@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-01-16 10:42:21 +0530"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"VMware: Storage policy based volume placement."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new feature to vmdk cinder driver. Users will be"},{"line_number":10,"context_line":"able to specify a vSphere storage policy in a volume-type. Creating"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"AAAAUH%2F%2FIJM%3D","line":7,"in_reply_to":"AAAAUH%2F%2FIXU%3D","updated":"2014-01-17 07:30:56.000000000","message":"Done","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"}],"cinder/tests/test_vmware_vmdk.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"    def setUp(self):"},{"line_number":1643,"context_line":"        super(VMwareVcVmdkDriverTestCase, self).setUp()"},{"line_number":1644,"context_line":"        self._config.vmware_pbm_wsdl \u003d self.PBM_WSDL"},{"line_number":1645,"context_line":"        self._driver \u003d vmdk.VMwareVcVmdkDriver(configuration\u003dself._config)"},{"line_number":1646,"context_line":""},{"line_number":1647,"context_line":"    def test_create_folder_not_present(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2FAQE%3D","line":1644,"updated":"2014-01-19 13:38:18.000000000","message":"you should use self.flags(vmware_pbm_wsdl\u003dself.PBM_WSDL)\nthis sets the configuration variable","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"    def setUp(self):"},{"line_number":1643,"context_line":"        super(VMwareVcVmdkDriverTestCase, self).setUp()"},{"line_number":1644,"context_line":"        self._config.vmware_pbm_wsdl \u003d self.PBM_WSDL"},{"line_number":1645,"context_line":"        self._driver \u003d vmdk.VMwareVcVmdkDriver(configuration\u003dself._config)"},{"line_number":1646,"context_line":""},{"line_number":1647,"context_line":"    def test_create_folder_not_present(self):"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByR8%3D","line":1644,"in_reply_to":"AAAAUH%2F%2FAQE%3D","updated":"2014-01-22 06:33:27.000000000","message":"Done","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"}],"cinder/volume/drivers/vmware/api.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":146,"context_line":"    @property"},{"line_number":147,"context_line":"    def pbm(self):"},{"line_number":148,"context_line":"        if not self._pbm and self._pbm_wsdl:"},{"line_number":149,"context_line":"            pbm_url \u003d \u0027https://%s/pbm\u0027 % self._server_ip"},{"line_number":150,"context_line":"            self._pbm \u003d pbm.PBMClient(self.vim, pbm_url, self._pbm_wsdl)"},{"line_number":151,"context_line":"        return self._pbm"},{"line_number":152,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv50%3D","line":149,"updated":"2014-01-02 12:58:00.000000000","message":"can you please also add ipv6 support","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":146,"context_line":"    @property"},{"line_number":147,"context_line":"    def pbm(self):"},{"line_number":148,"context_line":"        if not self._pbm and self._pbm_wsdl:"},{"line_number":149,"context_line":"            pbm_url \u003d \u0027https://%s/pbm\u0027 % self._server_ip"},{"line_number":150,"context_line":"            self._pbm \u003d pbm.PBMClient(self.vim, pbm_url, self._pbm_wsdl)"},{"line_number":151,"context_line":"        return self._pbm"},{"line_number":152,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F95o%3D","line":149,"in_reply_to":"AAAAT3%2F%2Fv50%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":188,"context_line":"        try:"},{"line_number":189,"context_line":"            self.pbm.Logout(self.pbm.service_content.sessionManager)"},{"line_number":190,"context_line":"        except Exception as excep:"},{"line_number":191,"context_line":"            LOG.exception(_(\"Error while logging out from pbm session: %s.\") %"},{"line_number":192,"context_line":"                          excep)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"    def invoke_api(self, module, method, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5s%3D","line":191,"updated":"2014-01-02 12:58:00.000000000","message":"please use a , instead of %","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":188,"context_line":"        except Exception as excep:"},{"line_number":189,"context_line":"            LOG.exception(_(\"Error while logging out from vim session: %s.\"),"},{"line_number":190,"context_line":"                          excep)"},{"line_number":191,"context_line":"        try:"},{"line_number":192,"context_line":"            self.pbm.Logout(self.pbm.service_content.sessionManager)"},{"line_number":193,"context_line":"        except Exception as excep:"},{"line_number":194,"context_line":"            LOG.exception(_(\"Error while logging out from pbm session: %s.\"),"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FfD4%3D","line":191,"updated":"2014-01-13 12:35:56.000000000","message":"should we first check that the self._pbm  is not None - say it is not configured. This may cause and exception.\nat the moment you catch the exception but i guess that we can check if the pbm is defined","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":188,"context_line":"        except Exception as excep:"},{"line_number":189,"context_line":"            LOG.exception(_(\"Error while logging out from vim session: %s.\"),"},{"line_number":190,"context_line":"                          excep)"},{"line_number":191,"context_line":"        try:"},{"line_number":192,"context_line":"            self.pbm.Logout(self.pbm.service_content.sessionManager)"},{"line_number":193,"context_line":"        except Exception as excep:"},{"line_number":194,"context_line":"            LOG.exception(_(\"Error while logging out from pbm session: %s.\"),"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FY0M%3D","line":191,"in_reply_to":"AAAAUH%2F%2FfD4%3D","updated":"2014-01-14 12:11:52.000000000","message":"Done","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: expandtab tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FT1o%3D","line":1,"updated":"2014-01-15 07:23:25.000000000","message":"Please remove vim line","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: expandtab tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FTgg%3D","line":1,"in_reply_to":"AAAAUH%2F%2FT1o%3D","updated":"2014-01-15 09:44:00.000000000","message":"Done","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"unresolved":false,"context_lines":[{"line_number":129,"context_line":"        self._scheme \u003d scheme"},{"line_number":130,"context_line":"        self._session_id \u003d None"},{"line_number":131,"context_line":"        self._vim \u003d None"},{"line_number":132,"context_line":"        self._pbm_wsdl \u003d pbm_wsdl"},{"line_number":133,"context_line":"        self._pbm \u003d None"},{"line_number":134,"context_line":"        if create_session:"},{"line_number":135,"context_line":"            self.create_session()"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FIW4%3D","line":132,"updated":"2014-01-17 06:17:59.000000000","message":"Do we need to move the pbm related code out of this class considering the fact that this will go into OSLO? I think PBM connection may not be required by other  VMware drivers.","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":129,"context_line":"        self._scheme \u003d scheme"},{"line_number":130,"context_line":"        self._session_id \u003d None"},{"line_number":131,"context_line":"        self._vim \u003d None"},{"line_number":132,"context_line":"        self._pbm_wsdl \u003d pbm_wsdl"},{"line_number":133,"context_line":"        self._pbm \u003d None"},{"line_number":134,"context_line":"        if create_session:"},{"line_number":135,"context_line":"            self.create_session()"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FII4%3D","line":132,"in_reply_to":"AAAAUH%2F%2FIW4%3D","updated":"2014-01-17 07:30:56.000000000","message":"Yes, PBM related code would also move to oslo soon since vmware nova driver also needs pbm connection.","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":142,"context_line":"        return self._vim"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    @property"},{"line_number":145,"context_line":"    def pbm(self):"},{"line_number":146,"context_line":"        if not self._pbm and self._pbm_wsdl:"},{"line_number":147,"context_line":"            if vim.is_valid_ipv6(self._server_ip):"},{"line_number":148,"context_line":"                pbm_url \u003d \u0027%s://[%s]/pbm\u0027 % (self._scheme, self._server_ip)"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FlI%3D","line":145,"updated":"2014-01-31 08:31:47.000000000","message":"You can move these to pbm.py similar to how we have in vim.py. Look at vim.Vim init method","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        return self._vim"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    @property"},{"line_number":145,"context_line":"    def pbm(self):"},{"line_number":146,"context_line":"        if not self._pbm and self._pbm_wsdl:"},{"line_number":147,"context_line":"            if vim.is_valid_ipv6(self._server_ip):"},{"line_number":148,"context_line":"                pbm_url \u003d \u0027%s://[%s]/pbm\u0027 % (self._scheme, self._server_ip)"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FZA%3D","line":145,"in_reply_to":"AAAAUH%2F9%2FlI%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":168,"context_line":"                LOG.exception(_(\"Error while terminating session: %s.\") %"},{"line_number":169,"context_line":"                              excep)"},{"line_number":170,"context_line":"        self._session_id \u003d session.key"},{"line_number":171,"context_line":"        if self.pbm:"},{"line_number":172,"context_line":"            self.pbm.set_cookie()"},{"line_number":173,"context_line":"        LOG.info(_(\"Successfully established connection to the server.\"))"},{"line_number":174,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpRs%3D","line":171,"updated":"2014-02-25 14:06:30.000000000","message":"Is it self._pbm?","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":168,"context_line":"                LOG.exception(_(\"Error while terminating session: %s.\") %"},{"line_number":169,"context_line":"                              excep)"},{"line_number":170,"context_line":"        self._session_id \u003d session.key"},{"line_number":171,"context_line":"        if self.pbm:"},{"line_number":172,"context_line":"            self.pbm.set_cookie()"},{"line_number":173,"context_line":"        LOG.info(_(\"Successfully established connection to the server.\"))"},{"line_number":174,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2Foe0%3D","line":171,"in_reply_to":"AAAAU3%2F%2FpRs%3D","updated":"2014-02-25 15:21:29.000000000","message":"No. We try to create the pbm property which gets created only if pbm_wsdl file location is set.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"}],"cinder/volume/drivers/vmware/pbm.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FXwg%3D","line":1,"updated":"2014-01-14 14:39:57.000000000","message":"there was talk about removing these. that is the vim: ...","commit_id":"055ccc63786cb956077d7e9cfa261c3ef4f89ada"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FT10%3D","line":1,"updated":"2014-01-15 07:23:25.000000000","message":"Please remove this","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FTgk%3D","line":1,"in_reply_to":"AAAAUH%2F%2FT10%3D","updated":"2014-01-15 09:44:00.000000000","message":"Done","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"unresolved":false,"context_lines":[{"line_number":33,"context_line":"    \"\"\"Sets up a client to interact with the vSphere PBM APIs."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    This client piggy backs on Vim object\u0027s authenticated cookie to invoke"},{"line_number":36,"context_line":"    PBM API calls."},{"line_number":37,"context_line":"    Note that this class needs the PBM wsdl file in order to make SOAP API"},{"line_number":38,"context_line":"    calls. This wsdl file is included in the VMware Storage Policy SDK."},{"line_number":39,"context_line":"    A user of this feature needs to install this SDK on the cinder volume"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FIVk%3D","line":36,"updated":"2014-01-17 06:17:59.000000000","message":"newline here?","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    \"\"\"Sets up a client to interact with the vSphere PBM APIs."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    This client piggy backs on Vim object\u0027s authenticated cookie to invoke"},{"line_number":36,"context_line":"    PBM API calls."},{"line_number":37,"context_line":"    Note that this class needs the PBM wsdl file in order to make SOAP API"},{"line_number":38,"context_line":"    calls. This wsdl file is included in the VMware Storage Policy SDK."},{"line_number":39,"context_line":"    A user of this feature needs to install this SDK on the cinder volume"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FIIw%3D","line":36,"in_reply_to":"AAAAUH%2F%2FIVk%3D","updated":"2014-01-17 07:30:56.000000000","message":"Done","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @staticmethod"},{"line_number":73,"context_line":"    def _get_vc_session_cookie(vimSession):"},{"line_number":74,"context_line":"        \"\"\"Look for vmware_soap_session cookie in vimSession.\"\"\""},{"line_number":75,"context_line":"        cookies \u003d vimSession.client.options.transport.cookiejar"},{"line_number":76,"context_line":"        for c in cookies:"},{"line_number":77,"context_line":"            if c.name.lower() \u003d\u003d \u0027vmware_soap_session\u0027:"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FyQ%3D","line":74,"updated":"2014-01-31 08:31:47.000000000","message":":param vimSession:...","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @staticmethod"},{"line_number":73,"context_line":"    def _get_vc_session_cookie(vimSession):"},{"line_number":74,"context_line":"        \"\"\"Look for vmware_soap_session cookie in vimSession.\"\"\""},{"line_number":75,"context_line":"        cookies \u003d vimSession.client.options.transport.cookiejar"},{"line_number":76,"context_line":"        for c in cookies:"},{"line_number":77,"context_line":"            if c.name.lower() \u003d\u003d \u0027vmware_soap_session\u0027:"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FYo%3D","line":74,"in_reply_to":"AAAAUH%2F9%2FyQ%3D","updated":"2014-01-31 10:33:55.000000000","message":"Not mandatory, plus it is only a private method. So leaving this.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2FngI%3D","line":1,"updated":"2014-02-11 23:40:26.000000000","message":"please rename the file spbm.py","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2FnJQ%3D","line":1,"in_reply_to":"AAAAUX%2F%2FngI%3D","updated":"2014-02-12 02:48:46.000000000","message":"I would prefer to retain the name as PBM. The APIs and WSDL file are all named as PBM. In fact changing this to SPBM will be confusing to external users.","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"Classes for making VMware PBM SOAP calls."},{"line_number":18,"context_line":"Used for storage policy based placement of volumes."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2Fngg%3D","line":17,"updated":"2014-02-11 23:40:26.000000000","message":"SPBM","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"Classes for making VMware PBM SOAP calls."},{"line_number":18,"context_line":"Used for storage policy based placement of volumes."},{"line_number":19,"context_line":"\"\"\""},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2FnJE%3D","line":17,"in_reply_to":"AAAAUX%2F%2Fngg%3D","updated":"2014-02-12 02:48:46.000000000","message":"This service is named PBM in vSphere.","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":"SERVICE_INSTANCE \u003d \u0027ServiceInstance\u0027"},{"line_number":30,"context_line":"SERVICE_TYPE \u003d \u0027PbmServiceInstance\u0027"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class PBMClient(vim_module.Vim):"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2Fngo%3D","line":30,"updated":"2014-02-11 23:40:26.000000000","message":"SpbmServiceInstance","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":"SERVICE_INSTANCE \u003d \u0027ServiceInstance\u0027"},{"line_number":30,"context_line":"SERVICE_TYPE \u003d \u0027PbmServiceInstance\u0027"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class PBMClient(vim_module.Vim):"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2FnIo%3D","line":30,"in_reply_to":"AAAAUX%2F%2Fngo%3D","updated":"2014-02-12 02:48:46.000000000","message":"This comes from the WSDL file which defines it as PbmServiceInstance, so we cannot rename it here.","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":8759,"name":"Arnaud Legendre","email":"arnaudleg@gmail.com","username":"arnaud"},"unresolved":false,"context_lines":[{"line_number":30,"context_line":"SERVICE_TYPE \u003d \u0027PbmServiceInstance\u0027"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class PBMClient(vim_module.Vim):"},{"line_number":34,"context_line":"    \"\"\"Sets up a client to interact with the vSphere PBM APIs."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    This client piggy backs on Vim object\u0027s authenticated cookie to invoke"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2Fngs%3D","line":33,"updated":"2014-02-11 23:40:26.000000000","message":"Please rename this to SPBMClient.\nPBM is another feature.","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":30,"context_line":"SERVICE_TYPE \u003d \u0027PbmServiceInstance\u0027"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class PBMClient(vim_module.Vim):"},{"line_number":34,"context_line":"    \"\"\"Sets up a client to interact with the vSphere PBM APIs."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    This client piggy backs on Vim object\u0027s authenticated cookie to invoke"}],"source_content_type":"text/x-python","patch_set":17,"id":"AAAAUX%2F%2FnIU%3D","line":33,"in_reply_to":"AAAAUX%2F%2Fngs%3D","updated":"2014-02-12 02:48:46.000000000","message":"For the same reason mentioned above, I\u0027d prefer keeping this named PBMClient.","commit_id":"69f2c076233e76621603d624f82cd2b06de22541"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B6rA%3D","line":1,"updated":"2014-02-18 08:29:25.000000000","message":"2014","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B510%3D","line":1,"in_reply_to":"AAAAUX%2F%2B6G8%3D","updated":"2014-02-18 09:53:41.000000000","message":"Will retain submission date of 2013.","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2013 VMware, Inc."},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B6G8%3D","line":1,"in_reply_to":"AAAAUX%2F%2B6rA%3D","updated":"2014-02-18 09:20:23.000000000","message":"Submitted in 2013","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"Classes for making VMware PBM SOAP calls used for storage policy based"},{"line_number":18,"context_line":"placement of volumes."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Read more about Storage Policy Based Management here:"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B6qM%3D","line":17,"updated":"2014-02-18 08:29:25.000000000","message":"Multiline docstrings should start with a single line less than 80 characters ending with a period","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"\"\"\""},{"line_number":17,"context_line":"Classes for making VMware PBM SOAP calls used for storage policy based"},{"line_number":18,"context_line":"placement of volumes."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Read more about Storage Policy Based Management here:"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B52I%3D","line":17,"in_reply_to":"AAAAUX%2F%2B6qM%3D","updated":"2014-02-18 09:53:41.000000000","message":"Done","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    Note that this class needs the PBM wsdl file in order to make SOAP API"},{"line_number":44,"context_line":"    calls. This wsdl file is included in the VMware Storage Policy SDK."},{"line_number":45,"context_line":"    A user of this feature needs to install this SDK on the cinder volume"},{"line_number":46,"context_line":"    nodes and configure the path in the cinder.conf file."},{"line_number":47,"context_line":"    \"\"\""},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B6p8%3D","line":45,"updated":"2014-02-18 08:29:25.000000000","message":"Cinder","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    Note that this class needs the PBM wsdl file in order to make SOAP API"},{"line_number":44,"context_line":"    calls. This wsdl file is included in the VMware Storage Policy SDK."},{"line_number":45,"context_line":"    A user of this feature needs to install this SDK on the cinder volume"},{"line_number":46,"context_line":"    nodes and configure the path in the cinder.conf file."},{"line_number":47,"context_line":"    \"\"\""},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUX%2F%2B51k%3D","line":45,"in_reply_to":"AAAAUX%2F%2B6p8%3D","updated":"2014-02-18 09:53:41.000000000","message":"Done","commit_id":"78d75cd3788d1092ac0fb0b775c27d2299ce2a62"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self._url \u003d vim_util.get_soap_url(protocol, host, \u0027pbm\u0027)"},{"line_number":60,"context_line":"        # create the pbm client"},{"line_number":61,"context_line":"        self._client \u003d suds.client.Client(pbm_wsdl, location\u003dself._url)"},{"line_number":62,"context_line":"        PBMClient._copy_client_cookie(self._vimSession, self._client)"},{"line_number":63,"context_line":"        # Get the PBM service content"},{"line_number":64,"context_line":"        si_moref \u003d vim_module.get_moref(SERVICE_INSTANCE, SERVICE_TYPE)"},{"line_number":65,"context_line":"        self._sc \u003d self._client.service.PbmRetrieveServiceContent(si_moref)"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpP4%3D","line":62,"updated":"2014-02-25 14:06:30.000000000","message":"You can use method set_cookie here as its defined bottom.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        self._url \u003d vim_util.get_soap_url(protocol, host, \u0027pbm\u0027)"},{"line_number":60,"context_line":"        # create the pbm client"},{"line_number":61,"context_line":"        self._client \u003d suds.client.Client(pbm_wsdl, location\u003dself._url)"},{"line_number":62,"context_line":"        PBMClient._copy_client_cookie(self._vimSession, self._client)"},{"line_number":63,"context_line":"        # Get the PBM service content"},{"line_number":64,"context_line":"        si_moref \u003d vim_module.get_moref(SERVICE_INSTANCE, SERVICE_TYPE)"},{"line_number":65,"context_line":"        self._sc \u003d self._client.service.PbmRetrieveServiceContent(si_moref)"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2Fod8%3D","line":62,"in_reply_to":"AAAAU3%2F%2FpP4%3D","updated":"2014-02-25 15:21:29.000000000","message":"set_cookie is not a staticmethod and I don\u0027t want to make it one.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        self._client \u003d suds.client.Client(pbm_wsdl, location\u003dself._url)"},{"line_number":62,"context_line":"        PBMClient._copy_client_cookie(self._vimSession, self._client)"},{"line_number":63,"context_line":"        # Get the PBM service content"},{"line_number":64,"context_line":"        si_moref \u003d vim_module.get_moref(SERVICE_INSTANCE, SERVICE_TYPE)"},{"line_number":65,"context_line":"        self._sc \u003d self._client.service.PbmRetrieveServiceContent(si_moref)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpPo%3D","line":64,"updated":"2014-02-25 14:06:30.000000000","message":"Do you want to make them global before using?","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        self._client \u003d suds.client.Client(pbm_wsdl, location\u003dself._url)"},{"line_number":62,"context_line":"        PBMClient._copy_client_cookie(self._vimSession, self._client)"},{"line_number":63,"context_line":"        # Get the PBM service content"},{"line_number":64,"context_line":"        si_moref \u003d vim_module.get_moref(SERVICE_INSTANCE, SERVICE_TYPE)"},{"line_number":65,"context_line":"        self._sc \u003d self._client.service.PbmRetrieveServiceContent(si_moref)"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FocU%3D","line":64,"in_reply_to":"AAAAU3%2F%2FpPo%3D","updated":"2014-02-25 15:21:29.000000000","message":"What do you mean? Can you explain?","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"}],"cinder/volume/drivers/vmware/vim.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":17,"context_line":"Classes for making VMware VI SOAP calls."},{"line_number":18,"context_line":"\"\"\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import httplib"},{"line_number":21,"context_line":"import netaddr"},{"line_number":22,"context_line":"import suds"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FfDo%3D","line":20,"updated":"2014-01-13 12:35:56.000000000","message":"you need a new line here","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":17,"context_line":"Classes for making VMware VI SOAP calls."},{"line_number":18,"context_line":"\"\"\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import httplib"},{"line_number":21,"context_line":"import netaddr"},{"line_number":22,"context_line":"import suds"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FY0E%3D","line":20,"in_reply_to":"AAAAUH%2F%2FZr8%3D","updated":"2014-01-14 12:11:52.000000000","message":"Ok, separating out standard libraries from third-party. Thanks for explaining offline.","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":17,"context_line":"Classes for making VMware VI SOAP calls."},{"line_number":18,"context_line":"\"\"\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import httplib"},{"line_number":21,"context_line":"import netaddr"},{"line_number":22,"context_line":"import suds"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FZr8%3D","line":20,"in_reply_to":"AAAAUH%2F%2FfDo%3D","updated":"2014-01-14 05:32:29.000000000","message":"Can you explain why we need a new line here? pep8 is successful as it is now.","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\"\"\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import httplib"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"import suds"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from cinder.volume.drivers.vmware import error_util"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpOo%3D","line":21,"updated":"2014-02-25 14:06:30.000000000","message":"line between imports not required.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\"\"\""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"import httplib"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"import suds"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from cinder.volume.drivers.vmware import error_util"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2Foao%3D","line":21,"in_reply_to":"AAAAU3%2F%2FpOo%3D","updated":"2014-02-25 15:21:29.000000000","message":"separating standard libs and third-party libs as specified in http://docs.openstack.org/developer/hacking/#imports","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"}],"cinder/volume/drivers/vmware/vim_util.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":324,"context_line":""},{"line_number":325,"context_line":"    :param hubs: array of PbmPlacementHub morefs"},{"line_number":326,"context_line":"    :return: array of hub id strings"},{"line_number":327,"context_line":"    \"\"\""},{"line_number":328,"context_line":"    ids \u003d []"},{"line_number":329,"context_line":"    for hub in hubs:"},{"line_number":330,"context_line":"        ids.append(hub.hubId)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5c%3D","line":327,"updated":"2014-01-02 12:58:00.000000000","message":"return [hub.hubId for hub in hubs]","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":324,"context_line":""},{"line_number":325,"context_line":"    :param hubs: array of PbmPlacementHub morefs"},{"line_number":326,"context_line":"    :return: array of hub id strings"},{"line_number":327,"context_line":"    \"\"\""},{"line_number":328,"context_line":"    ids \u003d []"},{"line_number":329,"context_line":"    for hub in hubs:"},{"line_number":330,"context_line":"        ids.append(hub.hubId)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F94g%3D","line":327,"in_reply_to":"AAAAT3%2F%2Fv5c%3D","updated":"2014-01-06 11:46:56.000000000","message":"Nice. Thanks!","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"unresolved":false,"context_lines":[{"line_number":306,"context_line":""},{"line_number":307,"context_line":"    :param pbm_client_factory: pbm client factory"},{"line_number":308,"context_line":"    :param datastores: list of datastore morefs"},{"line_number":309,"context_line":"    :return: list of PbmPlacementHub morefs"},{"line_number":310,"context_line":"    \"\"\""},{"line_number":311,"context_line":"    hubs \u003d []"},{"line_number":312,"context_line":"    for ds in datastores:"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FINA%3D","line":309,"updated":"2014-01-17 06:17:59.000000000","message":"return or returns?","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":306,"context_line":""},{"line_number":307,"context_line":"    :param pbm_client_factory: pbm client factory"},{"line_number":308,"context_line":"    :param datastores: list of datastore morefs"},{"line_number":309,"context_line":"    :return: list of PbmPlacementHub morefs"},{"line_number":310,"context_line":"    \"\"\""},{"line_number":311,"context_line":"    hubs \u003d []"},{"line_number":312,"context_line":"    for ds in datastores:"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FIGs%3D","line":309,"in_reply_to":"AAAAUH%2F%2FINA%3D","updated":"2014-01-17 07:30:56.000000000","message":"changing to returns, but looks like pydoc treats them both similarly.","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":317,"context_line":"    return hubs"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"def _extract_hub_ids(hubs):"},{"line_number":321,"context_line":"    \"\"\"Return an array of hub id strings extracted from hub morefs."},{"line_number":322,"context_line":""},{"line_number":323,"context_line":"    :param hubs: array of PbmPlacementHub morefs"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2Fy8%3D","line":320,"updated":"2014-01-31 08:31:47.000000000","message":"I think you can do away with this method as it is single line called once.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":317,"context_line":"    return hubs"},{"line_number":318,"context_line":""},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"def _extract_hub_ids(hubs):"},{"line_number":321,"context_line":"    \"\"\"Return an array of hub id strings extracted from hub morefs."},{"line_number":322,"context_line":""},{"line_number":323,"context_line":"    :param hubs: array of PbmPlacementHub morefs"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FXI%3D","line":320,"in_reply_to":"AAAAUH%2F9%2Fy8%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"}],"cinder/volume/drivers/vmware/vmdk.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"16cc692a91add6f37b36860d1d84686be2928638","unresolved":false,"context_lines":[{"line_number":125,"context_line":"class VMwareEsxVmdkDriver(driver.VolumeDriver):"},{"line_number":126,"context_line":"    \"\"\"Manage volumes on VMware ESX server.\"\"\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":131,"context_line":"        super(VMwareEsxVmdkDriver, self).__init__(*args, **kwargs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F9FaM%3D","line":128,"updated":"2013-12-16 22:57:07.000000000","message":"should bump the version here.   1.1?  1.0.1?","commit_id":"fff33d00da0770deda97a64f1b4c356e9a9cf06d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":125,"context_line":"class VMwareEsxVmdkDriver(driver.VolumeDriver):"},{"line_number":126,"context_line":"    \"\"\"Manage volumes on VMware ESX server.\"\"\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":131,"context_line":"        super(VMwareEsxVmdkDriver, self).__init__(*args, **kwargs)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F9Ejc%3D","line":128,"in_reply_to":"AAAATn%2F9FaM%3D","updated":"2013-12-17 04:33:41.000000000","message":"Thanks for raising this. Agree that this change deserves a bump to 1.1.","commit_id":"fff33d00da0770deda97a64f1b4c356e9a9cf06d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    \u0027server and not in one shot. Server may still limit the \u0027"},{"line_number":78,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":79,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":80,"context_line":"               default\u003dNone,"},{"line_number":81,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":82,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl\u0027"},{"line_number":83,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv6A%3D","line":80,"updated":"2014-01-02 12:58:00.000000000","message":"by default the value is None. You do not need to set this","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    \u0027server and not in one shot. Server may still limit the \u0027"},{"line_number":78,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":79,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":80,"context_line":"               default\u003dNone,"},{"line_number":81,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":82,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl\u0027"},{"line_number":83,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F93o%3D","line":80,"in_reply_to":"AAAAT3%2F%2Fv6A%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":76,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":79,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl\u0027"},{"line_number":80,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"},{"line_number":81,"context_line":"                    \u0027placement of volumes.\u0027),"},{"line_number":82,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2Fex0%3D","line":79,"updated":"2014-01-13 13:27:03.000000000","message":"missing space here","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":76,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":79,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl\u0027"},{"line_number":80,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"},{"line_number":81,"context_line":"                    \u0027placement of volumes.\u0027),"},{"line_number":82,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FY0A%3D","line":79,"in_reply_to":"AAAAUH%2F%2Fex0%3D","updated":"2014-01-14 12:11:52.000000000","message":"Done","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"unresolved":false,"context_lines":[{"line_number":128,"context_line":"class VMwareEsxVmdkDriver(driver.VolumeDriver):"},{"line_number":129,"context_line":"    \"\"\"Manage volumes on VMware ESX server.\"\"\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    VERSION \u003d \u00271.2.0\u0027"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":134,"context_line":"        super(VMwareEsxVmdkDriver, self).__init__(*args, **kwargs)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FT1Q%3D","line":131,"updated":"2014-01-15 07:23:25.000000000","message":"Do you want to add a comment on what changed in 1.2.0?","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":128,"context_line":"class VMwareEsxVmdkDriver(driver.VolumeDriver):"},{"line_number":129,"context_line":"    \"\"\"Manage volumes on VMware ESX server.\"\"\""},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"    VERSION \u003d \u00271.2.0\u0027"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":134,"context_line":"        super(VMwareEsxVmdkDriver, self).__init__(*args, **kwargs)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2FTgs%3D","line":131,"in_reply_to":"AAAAUH%2F%2FT1Q%3D","updated":"2014-01-15 09:44:00.000000000","message":"Done","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"unresolved":false,"context_lines":[{"line_number":402,"context_line":"                                                        datastores)"},{"line_number":403,"context_line":"        disk_type \u003d VMwareEsxVmdkDriver._get_disk_type(volume)"},{"line_number":404,"context_line":"        size_kb \u003d volume[\u0027size\u0027] * units.MiB"},{"line_number":405,"context_line":"        return self.volumeops.create_backing(volume[\u0027name\u0027],"},{"line_number":406,"context_line":"                                             size_kb,"},{"line_number":407,"context_line":"                                             disk_type, folder,"},{"line_number":408,"context_line":"                                             resource_pool,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FILc%3D","line":405,"updated":"2014-01-17 06:17:59.000000000","message":"As you mentioned, it may be a good idea to associate the profile with the shell VM.","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":402,"context_line":"                                                        datastores)"},{"line_number":403,"context_line":"        disk_type \u003d VMwareEsxVmdkDriver._get_disk_type(volume)"},{"line_number":404,"context_line":"        size_kb \u003d volume[\u0027size\u0027] * units.MiB"},{"line_number":405,"context_line":"        return self.volumeops.create_backing(volume[\u0027name\u0027],"},{"line_number":406,"context_line":"                                             size_kb,"},{"line_number":407,"context_line":"                                             disk_type, folder,"},{"line_number":408,"context_line":"                                             resource_pool,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAUH%2F%2FIFc%3D","line":405,"in_reply_to":"AAAAUH%2F%2FILc%3D","updated":"2014-01-17 07:30:56.000000000","message":"Yes, will make change to associate the profile with shell VM.","commit_id":"d4603d6a16a3b36793bace2d4d500140a56b32cc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":316,"context_line":"        \"\"\""},{"line_number":317,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"},{"line_number":318,"context_line":"        if not type_id:"},{"line_number":319,"context_line":"            return None"},{"line_number":320,"context_line":"        spec_key \u003d \u0027vmware:storage_profile\u0027"},{"line_number":321,"context_line":"        return volume_types.get_volume_type_extra_specs(type_id, spec_key)"},{"line_number":322,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B9Q0%3D","line":319,"updated":"2014-01-20 12:28:03.000000000","message":"by default None is returned so you just need a return","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":316,"context_line":"        \"\"\""},{"line_number":317,"context_line":"        type_id \u003d volume[\u0027volume_type_id\u0027]"},{"line_number":318,"context_line":"        if not type_id:"},{"line_number":319,"context_line":"            return None"},{"line_number":320,"context_line":"        spec_key \u003d \u0027vmware:storage_profile\u0027"},{"line_number":321,"context_line":"        return volume_types.get_volume_type_extra_specs(type_id, spec_key)"},{"line_number":322,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByRw%3D","line":319,"in_reply_to":"AAAAUH%2F%2B9Q0%3D","updated":"2014-01-22 06:33:27.000000000","message":"Done","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":344,"context_line":"    def _get_folder_ds_summary(self, volume, resource_pool, datastores):"},{"line_number":345,"context_line":"        \"\"\"Get folder and best datastore summary where volume can be placed."},{"line_number":346,"context_line":""},{"line_number":347,"context_line":"        :param volume: volume to place on one of the datastores"},{"line_number":348,"context_line":"        :param resource_pool: Resource pool reference"},{"line_number":349,"context_line":"        :param datastores: Datastores from which a choice is to be made"},{"line_number":350,"context_line":"                           for the volume"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B9jo%3D","line":347,"updated":"2014-01-20 11:35:47.000000000","message":"place into?","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":344,"context_line":"    def _get_folder_ds_summary(self, volume, resource_pool, datastores):"},{"line_number":345,"context_line":"        \"\"\"Get folder and best datastore summary where volume can be placed."},{"line_number":346,"context_line":""},{"line_number":347,"context_line":"        :param volume: volume to place on one of the datastores"},{"line_number":348,"context_line":"        :param resource_pool: Resource pool reference"},{"line_number":349,"context_line":"        :param datastores: Datastores from which a choice is to be made"},{"line_number":350,"context_line":"                           for the volume"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByRs%3D","line":347,"in_reply_to":"AAAAUH%2F%2B9jo%3D","updated":"2014-01-22 06:33:27.000000000","message":"Done","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":349,"context_line":"        :param datastores: Datastores from which a choice is to be made"},{"line_number":350,"context_line":"                           for the volume"},{"line_number":351,"context_line":"        :return: Folder and best datastore summary where volume can be"},{"line_number":352,"context_line":"                 placed on"},{"line_number":353,"context_line":"        \"\"\""},{"line_number":354,"context_line":"        datacenter \u003d self.volumeops.get_dc(resource_pool)"},{"line_number":355,"context_line":"        folder \u003d self._get_volume_group_folder(datacenter)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B9jY%3D","line":352,"updated":"2014-01-20 11:35:47.000000000","message":"suggest ending with a \u0027.\u0027","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":349,"context_line":"        :param datastores: Datastores from which a choice is to be made"},{"line_number":350,"context_line":"                           for the volume"},{"line_number":351,"context_line":"        :return: Folder and best datastore summary where volume can be"},{"line_number":352,"context_line":"                 placed on"},{"line_number":353,"context_line":"        \"\"\""},{"line_number":354,"context_line":"        datacenter \u003d self.volumeops.get_dc(resource_pool)"},{"line_number":355,"context_line":"        folder \u003d self._get_volume_group_folder(datacenter)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByRk%3D","line":352,"in_reply_to":"AAAAUH%2F%2B9jY%3D","updated":"2014-01-22 06:33:27.000000000","message":"Done","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":355,"context_line":"        folder \u003d self._get_volume_group_folder(datacenter)"},{"line_number":356,"context_line":"        storage_profile \u003d self._get_storage_profile(volume)"},{"line_number":357,"context_line":"        if self._storage_policy_enabled and storage_profile:"},{"line_number":358,"context_line":"            LOG.debug(_(\"Storage profile required for this volume: %s\"),"},{"line_number":359,"context_line":"                      storage_profile)"},{"line_number":360,"context_line":"            datastores \u003d self._filter_ds_by_profile(datastores,"},{"line_number":361,"context_line":"                                                    storage_profile)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B9js%3D","line":358,"updated":"2014-01-20 11:35:47.000000000","message":"suggest ending with a \u0027.\u0027","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":355,"context_line":"        folder \u003d self._get_volume_group_folder(datacenter)"},{"line_number":356,"context_line":"        storage_profile \u003d self._get_storage_profile(volume)"},{"line_number":357,"context_line":"        if self._storage_policy_enabled and storage_profile:"},{"line_number":358,"context_line":"            LOG.debug(_(\"Storage profile required for this volume: %s\"),"},{"line_number":359,"context_line":"                      storage_profile)"},{"line_number":360,"context_line":"            datastores \u003d self._filter_ds_by_profile(datastores,"},{"line_number":361,"context_line":"                                                    storage_profile)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByRg%3D","line":358,"in_reply_to":"AAAAUH%2F%2B9js%3D","updated":"2014-01-22 06:33:27.000000000","message":"Done","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":307,"context_line":"                  {\u0027datastore\u0027: best_summary, \u0027host_count\u0027: max_host_count})"},{"line_number":308,"context_line":"        return best_summary"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def _get_storage_profile(self, volume):"},{"line_number":311,"context_line":"        \"\"\"Get storage profile associated with this volume\u0027s volume_type."},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"        :param volume: volume whose storage profile should be queried"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F%2BAMc%3D","line":310,"updated":"2014-01-31 08:31:47.000000000","message":"Try to leverage vmdk._get_volume_type_extra_spec(...) after some changes. Its best to keep \"vmware:\" prefix in one place","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":307,"context_line":"                  {\u0027datastore\u0027: best_summary, \u0027host_count\u0027: max_host_count})"},{"line_number":308,"context_line":"        return best_summary"},{"line_number":309,"context_line":""},{"line_number":310,"context_line":"    def _get_storage_profile(self, volume):"},{"line_number":311,"context_line":"        \"\"\"Get storage profile associated with this volume\u0027s volume_type."},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"        :param volume: volume whose storage profile should be queried"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FUo%3D","line":310,"in_reply_to":"AAAAUH%2F%2BAMc%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":320,"context_line":"        spec_key \u003d \u0027vmware:storage_profile\u0027"},{"line_number":321,"context_line":"        return volume_types.get_volume_type_extra_specs(type_id, spec_key)"},{"line_number":322,"context_line":""},{"line_number":323,"context_line":"    def _filter_ds_by_profile(self, datastores, storage_profile):"},{"line_number":324,"context_line":"        \"\"\"Filter out datastores that do not match given storage profile."},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"        :param datastores: list of candidate datastores"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F%2BAEk%3D","line":323,"updated":"2014-01-31 08:31:47.000000000","message":"Not now, but later the code needs to be made more elegant esp handling various filtering schemes.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":320,"context_line":"        spec_key \u003d \u0027vmware:storage_profile\u0027"},{"line_number":321,"context_line":"        return volume_types.get_volume_type_extra_specs(type_id, spec_key)"},{"line_number":322,"context_line":""},{"line_number":323,"context_line":"    def _filter_ds_by_profile(self, datastores, storage_profile):"},{"line_number":324,"context_line":"        \"\"\"Filter out datastores that do not match given storage profile."},{"line_number":325,"context_line":""},{"line_number":326,"context_line":"        :param datastores: list of candidate datastores"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FUc%3D","line":323,"in_reply_to":"AAAAUH%2F%2BAEk%3D","updated":"2014-01-31 10:33:55.000000000","message":"Agree. Will open a bug for refactoring around datastore filtering.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":333,"context_line":"                  {\u0027profile\u0027: storage_profile, \u0027dss\u0027: datastores})"},{"line_number":334,"context_line":"        profileId \u003d self.volumeops.retrieve_profile_id(storage_profile)"},{"line_number":335,"context_line":"        if not profileId:"},{"line_number":336,"context_line":"            msg \u003d _(\"No such storage profile \u0027%s; is defined in vCenter.\")"},{"line_number":337,"context_line":"            LOG.error(msg, storage_profile)"},{"line_number":338,"context_line":"            raise error_util.VimException(msg % storage_profile)"},{"line_number":339,"context_line":"        pbm_cf \u003d self.session.pbm.client.factory"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F%2BAKw%3D","line":336,"updated":"2014-01-31 08:31:47.000000000","message":"Can\u0027t say vCenter in VMwareEsxVmdkDriver.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":333,"context_line":"                  {\u0027profile\u0027: storage_profile, \u0027dss\u0027: datastores})"},{"line_number":334,"context_line":"        profileId \u003d self.volumeops.retrieve_profile_id(storage_profile)"},{"line_number":335,"context_line":"        if not profileId:"},{"line_number":336,"context_line":"            msg \u003d _(\"No such storage profile \u0027%s; is defined in vCenter.\")"},{"line_number":337,"context_line":"            LOG.error(msg, storage_profile)"},{"line_number":338,"context_line":"            raise error_util.VimException(msg % storage_profile)"},{"line_number":339,"context_line":"        pbm_cf \u003d self.session.pbm.client.factory"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FUQ%3D","line":336,"in_reply_to":"AAAAUH%2F%2BAKw%3D","updated":"2014-01-31 10:33:55.000000000","message":"Agree. This will also get cleaned along with above refactoring.","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"from cinder import exception"},{"line_number":28,"context_line":"from cinder.openstack.common import log as logging"},{"line_number":29,"context_line":"from cinder import units"},{"line_number":30,"context_line":"from cinder.volume import driver"},{"line_number":31,"context_line":"from cinder.volume.drivers.vmware import api"},{"line_number":32,"context_line":"from cinder.volume.drivers.vmware import error_util"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpL8%3D","line":29,"updated":"2014-02-25 14:06:30.000000000","message":"The units module is about to get shifted. https://review.openstack.org/64429. Please check this, probably need to wait or press for a quick merge for the change.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"from cinder import exception"},{"line_number":28,"context_line":"from cinder.openstack.common import log as logging"},{"line_number":29,"context_line":"from cinder import units"},{"line_number":30,"context_line":"from cinder.volume import driver"},{"line_number":31,"context_line":"from cinder.volume.drivers.vmware import api"},{"line_number":32,"context_line":"from cinder.volume.drivers.vmware import error_util"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FoV8%3D","line":29,"in_reply_to":"AAAAU3%2F%2FpL8%3D","updated":"2014-02-25 15:21:29.000000000","message":"Thanks for bringing this to my attention. Will watch out and if 64429 doesn\u0027t merge before this I\u0027d handle this in a different patch.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"fc53733c60d32f9384839931072565c972a07697","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                    \u0027Query results will be obtained in batches from the \u0027"},{"line_number":81,"context_line":"                    \u0027server and not in one shot. Server may still limit the \u0027"},{"line_number":82,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":83,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":84,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":85,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl. \u0027"},{"line_number":86,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2Ftfs%3D","line":83,"updated":"2014-02-25 06:30:54.000000000","message":"should set a default for this, since you look for it later.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"c7efa3531d668116ab3ffa41a56022bd96a3a964","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                    \u0027Query results will be obtained in batches from the \u0027"},{"line_number":81,"context_line":"                    \u0027server and not in one shot. Server may still limit the \u0027"},{"line_number":82,"context_line":"                    \u0027count to something less than the configured value.\u0027),"},{"line_number":83,"context_line":"    cfg.StrOpt(\u0027vmware_pbm_wsdl\u0027,"},{"line_number":84,"context_line":"               help\u003d\u0027PBM service WSDL file location URL. \u0027"},{"line_number":85,"context_line":"                    \u0027e.g. file:///opt/SDK/spbm/wsdl/pbmService.wsdl. \u0027"},{"line_number":86,"context_line":"                    \u0027Not setting this will disable storage policy based \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FtEI%3D","line":83,"in_reply_to":"AAAAU3%2F%2Ftfs%3D","updated":"2014-02-25 06:39:19.000000000","message":"The default is None. This option is allowed to be \"not set\" and so the code checks for the value \"None\".\n\nIn fact in this patch, not setting this indicates that PBM is turned off and policy based placement of vmdk does not happen (instead falls back on earlier approach of placing vmdk on any available datastore).","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":373,"context_line":"                       \"volume since policy based placement is \""},{"line_number":374,"context_line":"                       \"disabled.\"), storage_profile)"},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"        size_bytes \u003d volume[\u0027size\u0027] * units.GiB"},{"line_number":377,"context_line":"        datastore_summary \u003d self._select_datastore_summary(size_bytes,"},{"line_number":378,"context_line":"                                                           datastores)"},{"line_number":379,"context_line":"        return (folder, datastore_summary)"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpMc%3D","line":376,"updated":"2014-02-25 14:06:30.000000000","message":"The units module is about to get shifted. https://review.openstack.org/64429. Please check this, probably need to wait or press for a quick merge for the change.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":373,"context_line":"                       \"volume since policy based placement is \""},{"line_number":374,"context_line":"                       \"disabled.\"), storage_profile)"},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"        size_bytes \u003d volume[\u0027size\u0027] * units.GiB"},{"line_number":377,"context_line":"        datastore_summary \u003d self._select_datastore_summary(size_bytes,"},{"line_number":378,"context_line":"                                                           datastores)"},{"line_number":379,"context_line":"        return (folder, datastore_summary)"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FoVs%3D","line":376,"in_reply_to":"AAAAU3%2F%2FpMc%3D","updated":"2014-02-25 15:21:29.000000000","message":"Thanks for bringing this to my attention. Will watch out and if 64429 doesn\u0027t merge before this I\u0027d handle this in a different patch.","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":6094,"name":"Navneet Singh","email":"navsinghnitd@gmail.com","username":"singn"},"change_message_id":"9fd4fc5f01ebff864c0acf8ce615a2fd9c3af608","unresolved":false,"context_lines":[{"line_number":405,"context_line":"                                                        resource_pool,"},{"line_number":406,"context_line":"                                                        datastores)"},{"line_number":407,"context_line":"        disk_type \u003d VMwareEsxVmdkDriver._get_disk_type(volume)"},{"line_number":408,"context_line":"        size_kb \u003d volume[\u0027size\u0027] * units.MiB"},{"line_number":409,"context_line":"        storage_profile \u003d self._get_storage_profile(volume)"},{"line_number":410,"context_line":"        profileId \u003d None"},{"line_number":411,"context_line":"        if self._storage_policy_enabled and storage_profile:"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FpMI%3D","line":408,"updated":"2014-02-25 14:06:30.000000000","message":"same as above","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"f0bb06421761c5fd711b4bb57f74e092bfe77608","unresolved":false,"context_lines":[{"line_number":405,"context_line":"                                                        resource_pool,"},{"line_number":406,"context_line":"                                                        datastores)"},{"line_number":407,"context_line":"        disk_type \u003d VMwareEsxVmdkDriver._get_disk_type(volume)"},{"line_number":408,"context_line":"        size_kb \u003d volume[\u0027size\u0027] * units.MiB"},{"line_number":409,"context_line":"        storage_profile \u003d self._get_storage_profile(volume)"},{"line_number":410,"context_line":"        profileId \u003d None"},{"line_number":411,"context_line":"        if self._storage_policy_enabled and storage_profile:"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAU3%2F%2FoVg%3D","line":408,"in_reply_to":"AAAAU3%2F%2FpMI%3D","updated":"2014-02-25 15:21:29.000000000","message":"Thanks. Same response :)","commit_id":"ac0979d1f15a5ab4be248dd42fce680637408382"}],"cinder/volume/drivers/vmware/volumeops.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":188,"context_line":"                    datastores \u003d prop.val.ManagedObjectReference"},{"line_number":189,"context_line":"                elif prop.name \u003d\u003d \u0027parent\u0027:"},{"line_number":190,"context_line":"                    compute_resource \u003d prop.val"},{"line_number":191,"context_line":"        LOG.info(_(\"Datastores attached to host %(host)s are: %(ds)s.\") %"},{"line_number":192,"context_line":"                 {\u0027host\u0027: host, \u0027ds\u0027: datastores})"},{"line_number":193,"context_line":"        # Filter datastores based on if it is accessible, mounted and writable"},{"line_number":194,"context_line":"        valid_dss \u003d []"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5Y%3D","line":191,"updated":"2014-01-02 12:58:00.000000000","message":"please use a , instead of %","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                    datastores \u003d prop.val.ManagedObjectReference"},{"line_number":189,"context_line":"                elif prop.name \u003d\u003d \u0027parent\u0027:"},{"line_number":190,"context_line":"                    compute_resource \u003d prop.val"},{"line_number":191,"context_line":"        LOG.info(_(\"Datastores attached to host %(host)s are: %(ds)s.\") %"},{"line_number":192,"context_line":"                 {\u0027host\u0027: host, \u0027ds\u0027: datastores})"},{"line_number":193,"context_line":"        # Filter datastores based on if it is accessible, mounted and writable"},{"line_number":194,"context_line":"        valid_dss \u003d []"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9wg%3D","line":191,"in_reply_to":"AAAAT3%2F%2Fv5Y%3D","updated":"2014-01-06 11:46:56.000000000","message":"Looks like the rest of the vmdk driver code also uses \u0027%\u0027 in place of a \u0027,\u0027 while logging messages. I will open a different bug for rest of the code and change only those log messages that I have touched in this patch.","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":206,"context_line":"            LOG.error(msg % host)"},{"line_number":207,"context_line":"            raise error_util.VimException(msg % host)"},{"line_number":208,"context_line":"        else:"},{"line_number":209,"context_line":"            LOG.info(_(\"Valid datastores are: %s\") % valid_dss)"},{"line_number":210,"context_line":"        return (valid_dss, resource_pool)"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"    def _get_parent(self, child, parent_type):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5U%3D","line":209,"updated":"2014-01-02 12:58:00.000000000","message":"ditto","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":206,"context_line":"            LOG.error(msg % host)"},{"line_number":207,"context_line":"            raise error_util.VimException(msg % host)"},{"line_number":208,"context_line":"        else:"},{"line_number":209,"context_line":"            LOG.info(_(\"Valid datastores are: %s\") % valid_dss)"},{"line_number":210,"context_line":"        return (valid_dss, resource_pool)"},{"line_number":211,"context_line":""},{"line_number":212,"context_line":"    def _get_parent(self, child, parent_type):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9wc%3D","line":209,"in_reply_to":"AAAAT3%2F%2Fv5U%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":713,"context_line":"        profileIds \u003d self._session.invoke_api(pbm, \u0027PbmQueryProfile\u0027,"},{"line_number":714,"context_line":"                                              profile_manager,"},{"line_number":715,"context_line":"                                              resourceType\u003dres_type)"},{"line_number":716,"context_line":"        LOG.info(_(\"Got profile IDs: %s\") % profileIds)"},{"line_number":717,"context_line":"        return self._session.invoke_api(pbm, \u0027PbmRetrieveContent\u0027,"},{"line_number":718,"context_line":"                                        profile_manager,"},{"line_number":719,"context_line":"                                        profileIds\u003dprofileIds)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5Q%3D","line":716,"updated":"2014-01-02 12:58:00.000000000","message":"ditto","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":713,"context_line":"        profileIds \u003d self._session.invoke_api(pbm, \u0027PbmQueryProfile\u0027,"},{"line_number":714,"context_line":"                                              profile_manager,"},{"line_number":715,"context_line":"                                              resourceType\u003dres_type)"},{"line_number":716,"context_line":"        LOG.info(_(\"Got profile IDs: %s\") % profileIds)"},{"line_number":717,"context_line":"        return self._session.invoke_api(pbm, \u0027PbmRetrieveContent\u0027,"},{"line_number":718,"context_line":"                                        profile_manager,"},{"line_number":719,"context_line":"                                        profileIds\u003dprofileIds)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9wY%3D","line":716,"in_reply_to":"AAAAT3%2F%2Fv5Q%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":729,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":730,"context_line":"                profileId \u003d profile.profileId"},{"line_number":731,"context_line":"                LOG.info(_(\"Got profile id %(id)s for profile %(name)s.\") %"},{"line_number":732,"context_line":"                         {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":733,"context_line":"                return profileId"},{"line_number":734,"context_line":""},{"line_number":735,"context_line":"    def filter_matching_hubs(self, hubs, profileId):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5I%3D","line":732,"updated":"2014-01-02 12:58:00.000000000","message":"ditto","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":729,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":730,"context_line":"                profileId \u003d profile.profileId"},{"line_number":731,"context_line":"                LOG.info(_(\"Got profile id %(id)s for profile %(name)s.\") %"},{"line_number":732,"context_line":"                         {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":733,"context_line":"                return profileId"},{"line_number":734,"context_line":""},{"line_number":735,"context_line":"    def filter_matching_hubs(self, hubs, profileId):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9wU%3D","line":732,"in_reply_to":"AAAAT3%2F%2Fv5I%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":747,"context_line":"                                                 placement_solver,"},{"line_number":748,"context_line":"                                                 hubsToSearch\u003dhubs,"},{"line_number":749,"context_line":"                                                 profile\u003dprofileId)"},{"line_number":750,"context_line":"        LOG.info(_(\"Filtered hubs: %s\") % filtered_hubs)"},{"line_number":751,"context_line":"        return filtered_hubs"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2Fv5E%3D","line":750,"updated":"2014-01-02 12:58:00.000000000","message":"ditto","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":747,"context_line":"                                                 placement_solver,"},{"line_number":748,"context_line":"                                                 hubsToSearch\u003dhubs,"},{"line_number":749,"context_line":"                                                 profile\u003dprofileId)"},{"line_number":750,"context_line":"        LOG.info(_(\"Filtered hubs: %s\") % filtered_hubs)"},{"line_number":751,"context_line":"        return filtered_hubs"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9wQ%3D","line":750,"in_reply_to":"AAAAT3%2F%2Fv5E%3D","updated":"2014-01-06 11:46:56.000000000","message":"Done","commit_id":"5b97182653f2cdf8e3ff5514e9f37532a121864d"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":711,"context_line":"        profileIds \u003d self._session.invoke_api(pbm, \u0027PbmQueryProfile\u0027,"},{"line_number":712,"context_line":"                                              profile_manager,"},{"line_number":713,"context_line":"                                              resourceType\u003dres_type)"},{"line_number":714,"context_line":"        LOG.info(_(\"Got profile IDs: %s\"), profileIds)"},{"line_number":715,"context_line":"        return self._session.invoke_api(pbm, \u0027PbmRetrieveContent\u0027,"},{"line_number":716,"context_line":"                                        profile_manager,"},{"line_number":717,"context_line":"                                        profileIds\u003dprofileIds)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2Fe3g%3D","line":714,"updated":"2014-01-13 13:13:38.000000000","message":"maybe we should consider a debug statement here instead of the info","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":711,"context_line":"        profileIds \u003d self._session.invoke_api(pbm, \u0027PbmQueryProfile\u0027,"},{"line_number":712,"context_line":"                                              profile_manager,"},{"line_number":713,"context_line":"                                              resourceType\u003dres_type)"},{"line_number":714,"context_line":"        LOG.info(_(\"Got profile IDs: %s\"), profileIds)"},{"line_number":715,"context_line":"        return self._session.invoke_api(pbm, \u0027PbmRetrieveContent\u0027,"},{"line_number":716,"context_line":"                                        profile_manager,"},{"line_number":717,"context_line":"                                        profileIds\u003dprofileIds)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FYz8%3D","line":714,"in_reply_to":"AAAAUH%2F%2Fe3g%3D","updated":"2014-01-14 12:11:52.000000000","message":"Yes, agree.","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":726,"context_line":"        for profile in self.get_all_profiles():"},{"line_number":727,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":728,"context_line":"                profileId \u003d profile.profileId"},{"line_number":729,"context_line":"                LOG.info(_(\"Got profile id %(id)s for profile %(name)s.\"),"},{"line_number":730,"context_line":"                         {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":731,"context_line":"                return profileId"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2Fexk%3D","line":729,"updated":"2014-01-13 13:27:03.000000000","message":"ditto","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":726,"context_line":"        for profile in self.get_all_profiles():"},{"line_number":727,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":728,"context_line":"                profileId \u003d profile.profileId"},{"line_number":729,"context_line":"                LOG.info(_(\"Got profile id %(id)s for profile %(name)s.\"),"},{"line_number":730,"context_line":"                         {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":731,"context_line":"                return profileId"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FYz4%3D","line":729,"in_reply_to":"AAAAUH%2F%2Fexk%3D","updated":"2014-01-14 12:11:52.000000000","message":"Done","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"unresolved":false,"context_lines":[{"line_number":745,"context_line":"                                                 placement_solver,"},{"line_number":746,"context_line":"                                                 hubsToSearch\u003dhubs,"},{"line_number":747,"context_line":"                                                 profile\u003dprofileId)"},{"line_number":748,"context_line":"        LOG.info(_(\"Filtered hubs: %s\"), filtered_hubs)"},{"line_number":749,"context_line":"        return filtered_hubs"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2Fe3Y%3D","line":748,"updated":"2014-01-13 13:13:38.000000000","message":"ditto","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":745,"context_line":"                                                 placement_solver,"},{"line_number":746,"context_line":"                                                 hubsToSearch\u003dhubs,"},{"line_number":747,"context_line":"                                                 profile\u003dprofileId)"},{"line_number":748,"context_line":"        LOG.info(_(\"Filtered hubs: %s\"), filtered_hubs)"},{"line_number":749,"context_line":"        return filtered_hubs"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUH%2F%2FYz0%3D","line":748,"in_reply_to":"AAAAUH%2F%2Fe3Y%3D","updated":"2014-01-14 12:11:52.000000000","message":"Done","commit_id":"af2203378c8353d75d790fb36f644fb2d1f62c08"},{"author":{"_account_id":5538,"name":"Rushi Agrawal","email":"rushi.openstack@gmail.com","username":"rushiagr"},"unresolved":false,"context_lines":[{"line_number":767,"context_line":"        :param profile_name: profile name as string"},{"line_number":768,"context_line":"        :return: profile id as string"},{"line_number":769,"context_line":"        \"\"\""},{"line_number":770,"context_line":"        LOG.debug(_(\"Trying to retrieve profile id for %s\"), profile_name)"},{"line_number":771,"context_line":"        for profile in self.get_all_profiles():"},{"line_number":772,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":773,"context_line":"                profileId \u003d profile.profileId"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2B9h4%3D","line":770,"updated":"2014-01-20 11:35:47.000000000","message":"Just after this debug statement, the debug statement of get_all_profiles() will be called. Keeping two debug statements seem superfluous, and I\u0027d suggest you remove one of these..","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":767,"context_line":"        :param profile_name: profile name as string"},{"line_number":768,"context_line":"        :return: profile id as string"},{"line_number":769,"context_line":"        \"\"\""},{"line_number":770,"context_line":"        LOG.debug(_(\"Trying to retrieve profile id for %s\"), profile_name)"},{"line_number":771,"context_line":"        for profile in self.get_all_profiles():"},{"line_number":772,"context_line":"            if profile.name \u003d\u003d profile_name:"},{"line_number":773,"context_line":"                profileId \u003d profile.profileId"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAUH%2F%2ByQc%3D","line":770,"in_reply_to":"AAAAUH%2F%2B9h4%3D","updated":"2014-01-22 06:33:27.000000000","message":"Agree that in this case both these debug statements get printed out, but I\u0027d still like to retain both since they are debug lots from two different methods which is what is intended. Moreover a future change might invoke get_all_profiles without retrieve_profile_id, so removing it now will cause a missing debug stmt later.","commit_id":"22801c8f96af0588aa6c034f6fd8169956614907"},{"author":{"_account_id":7575,"name":"Sabari","email":"smurugesan@vmware.com","username":"sabari"},"unresolved":false,"context_lines":[{"line_number":775,"context_line":"                          {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":776,"context_line":"                return profileId"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"    def filter_matching_hubs(self, hubs, profileId):"},{"line_number":779,"context_line":"        \"\"\"Filter and return only hubs that match given profile."},{"line_number":780,"context_line":""},{"line_number":781,"context_line":"        :param hubs: PbmPlacementHub morefs candidates"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAUH%2F%2Btho%3D","line":778,"updated":"2014-01-22 22:28:42.000000000","message":"pl consider profile_id to profileID.","commit_id":"1c7fd3e58166e44b4e9564c3325a621c73adcc5b"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":775,"context_line":"                          {\u0027id\u0027: profileId, \u0027name\u0027: profile_name})"},{"line_number":776,"context_line":"                return profileId"},{"line_number":777,"context_line":""},{"line_number":778,"context_line":"    def filter_matching_hubs(self, hubs, profileId):"},{"line_number":779,"context_line":"        \"\"\"Filter and return only hubs that match given profile."},{"line_number":780,"context_line":""},{"line_number":781,"context_line":"        :param hubs: PbmPlacementHub morefs candidates"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAUH%2F%2BlOw%3D","line":778,"in_reply_to":"AAAAUH%2F%2Btho%3D","updated":"2014-01-24 06:20:38.000000000","message":"thanks done. Agree this will make variable naming consistent.","commit_id":"1c7fd3e58166e44b4e9564c3325a621c73adcc5b"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":222,"context_line":"                    datastores \u003d prop.val.ManagedObjectReference"},{"line_number":223,"context_line":"                elif prop.name \u003d\u003d \u0027parent\u0027:"},{"line_number":224,"context_line":"                    compute_resource \u003d prop.val"},{"line_number":225,"context_line":"        LOG.info(_(\"Datastores attached to host %(host)s are: %(ds)s.\"),"},{"line_number":226,"context_line":"                 {\u0027host\u0027: host, \u0027ds\u0027: datastores})"},{"line_number":227,"context_line":"        # Filter datastores based on if it is accessible, mounted and writable"},{"line_number":228,"context_line":"        valid_dss \u003d []"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2Fzw%3D","line":225,"updated":"2014-01-31 08:31:47.000000000","message":"debug?","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":222,"context_line":"                    datastores \u003d prop.val.ManagedObjectReference"},{"line_number":223,"context_line":"                elif prop.name \u003d\u003d \u0027parent\u0027:"},{"line_number":224,"context_line":"                    compute_resource \u003d prop.val"},{"line_number":225,"context_line":"        LOG.info(_(\"Datastores attached to host %(host)s are: %(ds)s.\"),"},{"line_number":226,"context_line":"                 {\u0027host\u0027: host, \u0027ds\u0027: datastores})"},{"line_number":227,"context_line":"        # Filter datastores based on if it is accessible, mounted and writable"},{"line_number":228,"context_line":"        valid_dss \u003d []"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FTw%3D","line":225,"in_reply_to":"AAAAUH%2F9%2Fzw%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":240,"context_line":"            LOG.error(msg)"},{"line_number":241,"context_line":"            raise error_util.VimException(msg)"},{"line_number":242,"context_line":"        else:"},{"line_number":243,"context_line":"            LOG.info(_(\"Valid datastores are: %s\"), valid_dss)"},{"line_number":244,"context_line":"        return (valid_dss, resource_pool)"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"    def _get_parent(self, child, parent_type):"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2Fzs%3D","line":243,"updated":"2014-01-31 08:31:47.000000000","message":"debug?","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":240,"context_line":"            LOG.error(msg)"},{"line_number":241,"context_line":"            raise error_util.VimException(msg)"},{"line_number":242,"context_line":"        else:"},{"line_number":243,"context_line":"            LOG.info(_(\"Valid datastores are: %s\"), valid_dss)"},{"line_number":244,"context_line":"        return (valid_dss, resource_pool)"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"    def _get_parent(self, child, parent_type):"}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FT0%3D","line":243,"in_reply_to":"AAAAUH%2F9%2Fzs%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7992,"name":"Kartik Bommepally","email":"kbommepally@vmware.com","username":"kartikaditya"},"unresolved":false,"context_lines":[{"line_number":377,"context_line":"        return create_spec"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"    def create_backing(self, name, size_kb, disk_type,"},{"line_number":380,"context_line":"                       folder, resource_pool, host, ds_name, profileId\u003dNone):"},{"line_number":381,"context_line":"        \"\"\"Create backing for the volume."},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        Creates a VM with one VMDK based on the given inputs."}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2Fzo%3D","line":380,"updated":"2014-01-31 08:31:47.000000000","message":"nit: move folder to 379","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":377,"context_line":"        return create_spec"},{"line_number":378,"context_line":""},{"line_number":379,"context_line":"    def create_backing(self, name, size_kb, disk_type,"},{"line_number":380,"context_line":"                       folder, resource_pool, host, ds_name, profileId\u003dNone):"},{"line_number":381,"context_line":"        \"\"\"Create backing for the volume."},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        Creates a VM with one VMDK based on the given inputs."}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAAUH%2F9%2FTI%3D","line":380,"in_reply_to":"AAAAUH%2F9%2Fzo%3D","updated":"2014-01-31 10:33:55.000000000","message":"Done","commit_id":"c8104896e6693a5117d6f6e5775f1b67e667cee5"},{"author":{"_account_id":7575,"name":"Sabari","email":"smurugesan@vmware.com","username":"sabari"},"unresolved":false,"context_lines":[{"line_number":319,"context_line":"        return child_folder"},{"line_number":320,"context_line":""},{"line_number":321,"context_line":"    def _get_create_spec(self, name, size_kb, disk_type, ds_name,"},{"line_number":322,"context_line":"                         profileId\u003dNone):"},{"line_number":323,"context_line":"        \"\"\"Return spec for creating volume backing."},{"line_number":324,"context_line":""},{"line_number":325,"context_line":"        :param name: Name of the backing"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAAUH%2F9aRw%3D","line":322,"updated":"2014-02-07 04:04:59.000000000","message":"Minor nit:- profile_id in few places in the file. May be done in a subsequent patch later:)","commit_id":"397a2f773d70c1bd533519583cafb10053ec00e9"}],"etc/cinder/cinder.conf.sample":[{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"unresolved":false,"context_lines":[{"line_number":1980,"context_line":"# header. If False, middleware will not ask for service"},{"line_number":1981,"context_line":"# catalog on token validation and will not set the X-Service-"},{"line_number":1982,"context_line":"# Catalog header. (boolean value)"},{"line_number":1983,"context_line":"#include_service_catalog\u003dtrue"},{"line_number":1984,"context_line":""},{"line_number":1985,"context_line":""},{"line_number":1986,"context_line":"[matchmaker_ring]"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"AAAAUH%2F%2FT1E%3D","line":1983,"updated":"2014-01-15 07:23:25.000000000","message":"This option was not added by your patch and shouldn\u0027t be added to the sample config here.  There is a separate patch in the queue to do that.","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"},{"author":{"_account_id":7948,"name":"Subbu","email":"subramanian.neelakantan@gmail.com","username":"subbu"},"change_message_id":"05981e248c146a729c994b2e7e42f763b9d7832f","unresolved":false,"context_lines":[{"line_number":1980,"context_line":"# header. If False, middleware will not ask for service"},{"line_number":1981,"context_line":"# catalog on token validation and will not set the X-Service-"},{"line_number":1982,"context_line":"# Catalog header. (boolean value)"},{"line_number":1983,"context_line":"#include_service_catalog\u003dtrue"},{"line_number":1984,"context_line":""},{"line_number":1985,"context_line":""},{"line_number":1986,"context_line":"[matchmaker_ring]"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"AAAAUH%2F%2FTgM%3D","line":1983,"in_reply_to":"AAAAUH%2F%2FT1E%3D","updated":"2014-01-15 09:44:00.000000000","message":"Strange. This got added automatically by generate_sample.sh script and a previous tempest run failed when this was absent in my previous patch 5. http://logs.openstack.org/31/61931/5/check/gate-cinder-python27/bbf9d6e/console.html\nAnd if I manually remove this I get the error - cinder.conf.sample is not up to date, please run tools/conf/generate_sample.sh in venv - when running run_tests.sh locally.","commit_id":"f83ffa9ca81837588adf2ed37384f0391fd1a4c7"}]}
