)]}'
{"trove/common/cfg.py":[{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"c82d0cffe3f18b3d60cf9753b2e86735d4a4d5f3","unresolved":false,"context_lines":[{"line_number":744,"context_line":"               help\u003d\u0027Port for mongod and mongos instances.\u0027),"},{"line_number":745,"context_line":"    cfg.IntOpt(\u0027configsvr_port\u0027, default\u003d27019,"},{"line_number":746,"context_line":"               help\u003d\u0027Port for instances running as config servers.\u0027),"},{"line_number":747,"context_line":"    cfg.ListOpt(\u0027ignore_users\u0027, default\u003d[\u0027admin.os_admin\u0027, \u0027admin.root\u0027]),"},{"line_number":748,"context_line":"]"},{"line_number":749,"context_line":""},{"line_number":750,"context_line":"# PostgreSQL"}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_03bd22d7","line":747,"updated":"2015-07-23 15:50:44.000000000","message":"Please add the help message","commit_id":"faab9b86d2a531432c4ebec2666bb4a3e30f4d59"}],"trove/guestagent/datastore/experimental/mongodb/service.py":[{"author":{"_account_id":14576,"name":"Petr Malik","email":"pmalik@tesora.com","username":"pmalik"},"change_message_id":"a46ffcdd8dcbe7da009913d7c9922668e1e881ec","unresolved":false,"context_lines":[{"line_number":525,"context_line":"            for user_info in admin_client.admin.system.users.find():"},{"line_number":526,"context_line":"                user \u003d models.MongoDBUser(name\u003duser_info[\u0027_id\u0027])"},{"line_number":527,"context_line":"                user.roles \u003d user_info[\u0027roles\u0027]"},{"line_number":528,"context_line":"                if not user.name \u003d\u003d \u0027admin.%s\u0027 % system.MONGO_ADMIN_NAME:"},{"line_number":529,"context_line":"                    users.append(user.serialize())"},{"line_number":530,"context_line":"        LOG.debug(\u0027users \u003d \u0027 + str(users))"},{"line_number":531,"context_line":"        return pagination.paginate_list(users, limit, marker,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_07092731","line":528,"range":{"start_line":528,"start_character":0,"end_line":528,"end_character":20},"updated":"2015-07-21 19:35:04.000000000","message":"Again, the \u0027ignore_users\u0027 may be appropriate here.","commit_id":"233b2d9b358349cb32e5b315180de1f34e58026d"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"c82d0cffe3f18b3d60cf9753b2e86735d4a4d5f3","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        user \u003d models.MongoDBUser(name\u003d\u0027admin.%s\u0027 % creds.username,"},{"line_number":370,"context_line":"                                  password\u003dcreds.password)"},{"line_number":371,"context_line":"        user.roles \u003d system.MONGO_ADMIN_ROLES"},{"line_number":372,"context_line":"        user.databases \u003d \u0027admin\u0027"},{"line_number":373,"context_line":"        with MongoDBClient(user, auth\u003dFalse) as client:"},{"line_number":374,"context_line":"            MongoDBAdmin().create_user(user, client\u003dclient)"},{"line_number":375,"context_line":"        LOG.debug(\u0027Created admin user.\u0027)"}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_23313e5a","side":"PARENT","line":372,"updated":"2015-07-23 15:50:44.000000000","message":"(+0)why are we removing this","commit_id":"7b6e086c399597b80f90759d2627498083006fd5"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"f8bec6e1471d755a99836a9bc9dd9aaa9604ef32","unresolved":false,"context_lines":[{"line_number":369,"context_line":"        creds \u003d self.store_admin_password(password)"},{"line_number":370,"context_line":"        user \u003d models.MongoDBUser(name\u003d\u0027admin.%s\u0027 % creds.username,"},{"line_number":371,"context_line":"                                  password\u003dcreds.password)"},{"line_number":372,"context_line":"        user.roles \u003d system.MONGO_ADMIN_ROLES"},{"line_number":373,"context_line":"        with MongoDBClient(user, auth\u003dFalse) as client:"},{"line_number":374,"context_line":"            MongoDBAdmin().create_user(user, client\u003dclient)"},{"line_number":375,"context_line":"        LOG.debug(\u0027Created admin user.\u0027)"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_859861c1","line":372,"updated":"2015-07-29 15:33:06.000000000","message":"This line looks out-of-scope (it\u0027s not, based on discussions with mvandijk).  Maybe you could add something to the commit message if you respin?","commit_id":"8d950476d38f3bd19dea81e38cb9c49d06d14a7c"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"f8bec6e1471d755a99836a9bc9dd9aaa9604ef32","unresolved":false,"context_lines":[{"line_number":452,"context_line":"            creds.read(system.MONGO_ADMIN_CREDS_FILE)"},{"line_number":453,"context_line":"            user \u003d models.MongoDBUser("},{"line_number":454,"context_line":"                \u0027admin.%s\u0027 % creds.username,"},{"line_number":455,"context_line":"                creds.password"},{"line_number":456,"context_line":"            )"},{"line_number":457,"context_line":"            type(self).admin_user \u003d user"},{"line_number":458,"context_line":"        return type(self).admin_user"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_656515ad","line":455,"updated":"2015-07-29 15:33:06.000000000","message":"ditto","commit_id":"8d950476d38f3bd19dea81e38cb9c49d06d14a7c"}],"trove/guestagent/db/models.py":[{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"b6dc33d3693984b487fc850bca96db9ec9b803d2","unresolved":false,"context_lines":[{"line_number":694,"context_line":"    # def databases(self):"},{"line_number":695,"context_line":"    #     return [MongoDBSchema(role[\u0027db\u0027]).serialize()"},{"line_number":696,"context_line":"    #             for role in self.roles"},{"line_number":697,"context_line":"    #             if role[\u0027role\u0027] \u003d\u003d \u0027readWrite\u0027]"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"    @classmethod"},{"line_number":700,"context_line":"    def deserialize_user(cls, value):"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_1f98fc1a","line":697,"updated":"2015-06-25 23:30:12.000000000","message":"commented out?","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":15321,"name":"Matthew Van Dijk","email":"mvandijk@tesora.com","username":"mvandijk"},"change_message_id":"7756e6b7600ff97b43300686b5cdb966b0621bb7","unresolved":false,"context_lines":[{"line_number":694,"context_line":"    # def databases(self):"},{"line_number":695,"context_line":"    #     return [MongoDBSchema(role[\u0027db\u0027]).serialize()"},{"line_number":696,"context_line":"    #             for role in self.roles"},{"line_number":697,"context_line":"    #             if role[\u0027role\u0027] \u003d\u003d \u0027readWrite\u0027]"},{"line_number":698,"context_line":""},{"line_number":699,"context_line":"    @classmethod"},{"line_number":700,"context_line":"    def deserialize_user(cls, value):"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_729fd650","line":697,"in_reply_to":"fa32b979_1f98fc1a","updated":"2015-06-26 17:49:09.000000000","message":"Removed.","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":14576,"name":"Petr Malik","email":"pmalik@tesora.com","username":"pmalik"},"change_message_id":"ce08aea48e2416085ea044d8a85bdc3d0b29f3e1","unresolved":false,"context_lines":[{"line_number":691,"context_line":"            self._roles \u003d []"},{"line_number":692,"context_line":"            for db in self._databases:"},{"line_number":693,"context_line":"                self._roles.append({\u0027db\u0027: db[\u0027_name\u0027], \u0027role\u0027: \u0027readWrite\u0027})"},{"line_number":694,"context_line":""},{"line_number":695,"context_line":""},{"line_number":696,"context_line":"    @classmethod"},{"line_number":697,"context_line":"    def deserialize_user(cls, value):"}],"source_content_type":"text/x-python","patch_set":15,"id":"3a50d1a3_2008c27f","line":694,"updated":"2015-08-02 16:28:00.000000000","message":"This extra line is causing the pep-8 failure.","commit_id":"84ba66d13ea8a4bfe668fed14c7a3b9fb5489a92"}],"trove/tests/unittests/guestagent/test_mongodb_manager.py":[{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"b6dc33d3693984b487fc850bca96db9ec9b803d2","unresolved":false,"context_lines":[{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    @mock.patch.object(service, \u0027MongoDBClient\u0027)"},{"line_number":120,"context_line":"    @mock.patch.object(service.MongoDBAdmin, \u0027_admin_user\u0027)"},{"line_number":121,"context_line":"    def test_create_user(self, mocked_admin_user, mocked_client):"},{"line_number":122,"context_line":"        users \u003d [{\u0027_name\u0027: \u0027testdb.testuser\u0027, \u0027_password\u0027: \u0027testpassword\u0027,"},{"line_number":123,"context_line":"                  \u0027_roles\u0027: [{\u0027db\u0027: \u0027test\u0027, \u0027role\u0027: \u0027testrole\u0027}]}]"},{"line_number":124,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_62464b51","line":121,"updated":"2015-06-25 23:30:12.000000000","message":"mind adding a get/list of a user here that exists and a get of a user that does not?","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":15321,"name":"Matthew Van Dijk","email":"mvandijk@tesora.com","username":"mvandijk"},"change_message_id":"7756e6b7600ff97b43300686b5cdb966b0621bb7","unresolved":false,"context_lines":[{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    @mock.patch.object(service, \u0027MongoDBClient\u0027)"},{"line_number":120,"context_line":"    @mock.patch.object(service.MongoDBAdmin, \u0027_admin_user\u0027)"},{"line_number":121,"context_line":"    def test_create_user(self, mocked_admin_user, mocked_client):"},{"line_number":122,"context_line":"        users \u003d [{\u0027_name\u0027: \u0027testdb.testuser\u0027, \u0027_password\u0027: \u0027testpassword\u0027,"},{"line_number":123,"context_line":"                  \u0027_roles\u0027: [{\u0027db\u0027: \u0027test\u0027, \u0027role\u0027: \u0027testrole\u0027}]}]"},{"line_number":124,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_723b5639","line":121,"in_reply_to":"fa32b979_62464b51","updated":"2015-06-26 17:49:09.000000000","message":"That should be done in the parent branch, not in this \u0027access grant/show/revoke\u0027 branch.","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"b6dc33d3693984b487fc850bca96db9ec9b803d2","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        client.add_user.assert_called_with(\u0027testuser\u0027, roles\u003d["},{"line_number":145,"context_line":"            {\u0027db\u0027: \u0027db1\u0027, \u0027role\u0027: \u0027readWrite\u0027},"},{"line_number":146,"context_line":"            {\u0027db\u0027: \u0027db2\u0027, \u0027role\u0027: \u0027readWrite\u0027},"},{"line_number":147,"context_line":"            {\u0027db\u0027: \u0027db3\u0027, \u0027role\u0027: \u0027readWrite\u0027}"},{"line_number":148,"context_line":"        ])"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"    @mock.patch.object(service, \u0027MongoDBClient\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_c2795784","line":147,"updated":"2015-06-25 23:30:12.000000000","message":"what happens for a role that is not valid? can you add that case as well since you changed validation the method.","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":15321,"name":"Matthew Van Dijk","email":"mvandijk@tesora.com","username":"mvandijk"},"change_message_id":"7756e6b7600ff97b43300686b5cdb966b0621bb7","unresolved":false,"context_lines":[{"line_number":144,"context_line":"        client.add_user.assert_called_with(\u0027testuser\u0027, roles\u003d["},{"line_number":145,"context_line":"            {\u0027db\u0027: \u0027db1\u0027, \u0027role\u0027: \u0027readWrite\u0027},"},{"line_number":146,"context_line":"            {\u0027db\u0027: \u0027db2\u0027, \u0027role\u0027: \u0027readWrite\u0027},"},{"line_number":147,"context_line":"            {\u0027db\u0027: \u0027db3\u0027, \u0027role\u0027: \u0027readWrite\u0027}"},{"line_number":148,"context_line":"        ])"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"    @mock.patch.object(service, \u0027MongoDBClient\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"fa32b979_b286bed9","line":147,"in_reply_to":"fa32b979_c2795784","updated":"2015-06-26 17:49:09.000000000","message":"\u0027readWrite\u0027 is the only role that would be set via access grant. This check fails if anything else is attempted. The only field that could be invalid is the db name, but that is checked in the schema model.","commit_id":"a77888e76b026320925625803cb07ff21f063ded"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"c82d0cffe3f18b3d60cf9753b2e86735d4a4d5f3","unresolved":false,"context_lines":[{"line_number":241,"context_line":"        client.add_user.assert_called_with(\u0027testuser\u0027, roles\u003d["},{"line_number":242,"context_line":"            {\u0027db\u0027: \u0027db1\u0027, \u0027role\u0027: \u0027readWrite\u0027},"},{"line_number":243,"context_line":"            {\u0027db\u0027: \u0027db3\u0027, \u0027role\u0027: \u0027readWrite\u0027}"},{"line_number":244,"context_line":"        ])"}],"source_content_type":"text/x-python","patch_set":11,"id":"3a50d1a3_a30a2e24","line":244,"updated":"2015-07-23 15:50:44.000000000","message":"please add tests for list_access","commit_id":"faab9b86d2a531432c4ebec2666bb4a3e30f4d59"}]}
