)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"28b95eebb2b6f9a473d9d04a0409670203703933","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mehdi Abaakouk \u003csileht@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-17 11:44:23 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"api: return 410 is only Gnocchi is enabled"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ia947f354da73a9a98feaa8cc6c39a1791208613e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9a41bdd9_3cafdfe4","line":7,"updated":"2015-07-17 12:22:17.000000000","message":"Can you add some why, for the sake of the historical record?","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b51ac6278200fee10b00be721ef5a528bbb965d4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mehdi Abaakouk \u003csileht@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-17 11:44:23 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"api: return 410 is only Gnocchi is enabled"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ia947f354da73a9a98feaa8cc6c39a1791208613e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9a41bdd9_ac173c53","line":7,"in_reply_to":"9a41bdd9_3cafdfe4","updated":"2015-07-17 15:09:08.000000000","message":"Done","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"908f23e2bdbda2c97d7ea4267db78f6257be4d01","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mehdi Abaakouk \u003csileht@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-17 14:18:41 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"api: return 410 is only Gnocchi is enabled"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ia947f354da73a9a98feaa8cc6c39a1791208613e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9a41bdd9_7c59e78d","line":7,"updated":"2015-07-17 12:23:23.000000000","message":"s/is/if","commit_id":"c8f12c4040279cc211a2009e39980bf0178a1de1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"30c55714e52dcd5f97461550b305c168d7dfe4ec","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Mehdi Abaakouk \u003csileht@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-07-17 14:18:41 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"api: return 410 is only Gnocchi is enabled"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: Ia947f354da73a9a98feaa8cc6c39a1791208613e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9a41bdd9_7998146b","line":7,"in_reply_to":"9a41bdd9_7c59e78d","updated":"2015-07-17 15:09:12.000000000","message":"Done","commit_id":"c8f12c4040279cc211a2009e39980bf0178a1de1"}],"ceilometer/api/controllers/v2/root.py":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"28b95eebb2b6f9a473d9d04a0409670203703933","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        if gnocchi_enabled:"},{"line_number":53,"context_line":"            self.samples \u003d query.QuerySamplesController()"},{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            self.samples \u003d GnocchiWarningController()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        self.alarms \u003d query.QueryAlarmsController()"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_bcb9afee","line":55,"updated":"2015-07-17 12:22:17.000000000","message":"Is this block backwards?","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b51ac6278200fee10b00be721ef5a528bbb965d4","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        if gnocchi_enabled:"},{"line_number":53,"context_line":"            self.samples \u003d query.QuerySamplesController()"},{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            self.samples \u003d GnocchiWarningController()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        self.alarms \u003d query.QueryAlarmsController()"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_79349449","line":55,"in_reply_to":"9a41bdd9_bcb9afee","updated":"2015-07-17 15:09:08.000000000","message":"Done","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"a3448e13e7e29101bcb3f0d1a24b9f7289a68148","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        if gnocchi_enabled:"},{"line_number":75,"context_line":"            LOG.warn(_LW(\"ceilometer-api with gnocchi enabled. Not alarms url \""},{"line_number":76,"context_line":"                         \"are disabled.\"))"},{"line_number":77,"context_line":"            self.resources \u003d GnocchiWarningController()"},{"line_number":78,"context_line":"            self.meters \u003d GnocchiWarningController()"},{"line_number":79,"context_line":"            self.samples \u003d GnocchiWarningController()"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_5cc74345","line":76,"updated":"2015-07-17 12:21:05.000000000","message":"I don\u0027t understand the sentence here :)","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"28b95eebb2b6f9a473d9d04a0409670203703933","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        if gnocchi_enabled:"},{"line_number":75,"context_line":"            LOG.warn(_LW(\"ceilometer-api with gnocchi enabled. Not alarms url \""},{"line_number":76,"context_line":"                         \"are disabled.\"))"},{"line_number":77,"context_line":"            self.resources \u003d GnocchiWarningController()"},{"line_number":78,"context_line":"            self.meters \u003d GnocchiWarningController()"},{"line_number":79,"context_line":"            self.samples \u003d GnocchiWarningController()"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_fcc3b736","line":76,"updated":"2015-07-17 12:22:17.000000000","message":"This message sounds wrong. Are you trying to say that urls not for alarms are disabled?","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"b51ac6278200fee10b00be721ef5a528bbb965d4","unresolved":false,"context_lines":[{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        if gnocchi_enabled:"},{"line_number":75,"context_line":"            LOG.warn(_LW(\"ceilometer-api with gnocchi enabled. Not alarms url \""},{"line_number":76,"context_line":"                         \"are disabled.\"))"},{"line_number":77,"context_line":"            self.resources \u003d GnocchiWarningController()"},{"line_number":78,"context_line":"            self.meters \u003d GnocchiWarningController()"},{"line_number":79,"context_line":"            self.samples \u003d GnocchiWarningController()"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a41bdd9_b92a1ce6","line":76,"in_reply_to":"9a41bdd9_fcc3b736","updated":"2015-07-17 15:09:08.000000000","message":"Done","commit_id":"fd8f24c46002ef605cec3c0807196fe513127e45"},{"author":{"_account_id":6924,"name":"Pradeep Kilambi","email":"pkilambi@redhat.com","username":"pkilambi"},"change_message_id":"6f44a28b0bc68a7df6b2bcfe6b82ea09fc633444","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        if gnocchi_enabled:"},{"line_number":53,"context_line":"            self.samples \u003d query.QuerySamplesController()"},{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            self.samples \u003d GnocchiWarningController()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        self.alarms \u003d query.QueryAlarmsController()"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_e799e420","line":55,"updated":"2015-07-17 12:41:00.000000000","message":"We should be warning if gnocchi is enabled. This seems like its doing it the other way?","commit_id":"c8f12c4040279cc211a2009e39980bf0178a1de1"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"30c55714e52dcd5f97461550b305c168d7dfe4ec","unresolved":false,"context_lines":[{"line_number":52,"context_line":"        if gnocchi_enabled:"},{"line_number":53,"context_line":"            self.samples \u003d query.QuerySamplesController()"},{"line_number":54,"context_line":"        else:"},{"line_number":55,"context_line":"            self.samples \u003d GnocchiWarningController()"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"        self.alarms \u003d query.QueryAlarmsController()"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a41bdd9_36f85b7c","line":55,"in_reply_to":"9a41bdd9_e799e420","updated":"2015-07-17 15:09:12.000000000","message":"Fixed and some tests added.","commit_id":"c8f12c4040279cc211a2009e39980bf0178a1de1"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"f05b892549e18ca2556f83a9d97058c0a597f22b","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def _get_keystone_data(self):"},{"line_number":92,"context_line":"        ks \u003d keystone_client.get_client()"},{"line_number":93,"context_line":"        service_types \u003d [service.type for service in ks.services.list()]"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        self._gnocchi_enabled \u003d (\"metric\" in service_types"},{"line_number":96,"context_line":"                                 and \"gnocchi\" in cfg.CONF.dispatcher"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_29b578cc","line":93,"updated":"2015-07-20 10:27:36.000000000","message":"Probably faster to go with any() to check for \u0027metric\u0027 here.\n\nAlso you can bypass the service listing if gnocchi is not in the dispatcher (see your other conditions below), which makes the check faster.","commit_id":"bafd790e83fa6d6c3841cb54661f928a85aa7487"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"81503f3bd1210c272d5ad76ccb312bdd98c74e5e","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def _get_keystone_data(self):"},{"line_number":92,"context_line":"        ks \u003d keystone_client.get_client()"},{"line_number":93,"context_line":"        service_types \u003d [service.type for service in ks.services.list()]"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        self._gnocchi_enabled \u003d (\"metric\" in service_types"},{"line_number":96,"context_line":"                                 and \"gnocchi\" in cfg.CONF.dispatcher"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_69cce035","line":93,"in_reply_to":"3a50d1a3_29b578cc","updated":"2015-07-20 10:30:25.000000000","message":"This is because next use this too and I don\u0027t want to query keystone two times.","commit_id":"bafd790e83fa6d6c3841cb54661f928a85aa7487"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"23fe288f60f86873ea909e98ebcc664e2ac8fdac","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def _get_keystone_data(self):"},{"line_number":92,"context_line":"        ks \u003d keystone_client.get_client()"},{"line_number":93,"context_line":"        service_types \u003d [service.type for service in ks.services.list()]"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"        self._gnocchi_enabled \u003d (\"metric\" in service_types"},{"line_number":96,"context_line":"                                 and \"gnocchi\" in cfg.CONF.dispatcher"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_a9f9884f","line":93,"in_reply_to":"3a50d1a3_69cce035","updated":"2015-07-20 10:30:44.000000000","message":"*next patch*","commit_id":"bafd790e83fa6d6c3841cb54661f928a85aa7487"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"f05b892549e18ca2556f83a9d97058c0a597f22b","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    def gnocchi_is_enabled(self):"},{"line_number":104,"context_line":"        if self._gnocchi_enabled is None:"},{"line_number":105,"context_line":"            try:"},{"line_number":106,"context_line":"                self._get_keystone_data()"},{"line_number":107,"context_line":"            except exceptions.ClientException:"},{"line_number":108,"context_line":"                LOG.warn(_LW(\"Can\u0027t connect to keystone, \""},{"line_number":109,"context_line":"                             \"assume gnocchi is disabled. And retry later\"))"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_a99c286a","line":106,"updated":"2015-07-20 10:27:36.000000000","message":"nitpick but I\u0027d prefer to have:\n\nself._gnocchi_enabled \u003d _ask_keystone_if_gnocchi_is_enabled()","commit_id":"bafd790e83fa6d6c3841cb54661f928a85aa7487"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"e6c702e042d1abc864b90258be5a589e81498c76","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    def gnocchi_is_enabled(self):"},{"line_number":104,"context_line":"        if self._gnocchi_enabled is None:"},{"line_number":105,"context_line":"            try:"},{"line_number":106,"context_line":"                self._get_keystone_data()"},{"line_number":107,"context_line":"            except exceptions.ClientException:"},{"line_number":108,"context_line":"                LOG.warn(_LW(\"Can\u0027t connect to keystone, \""},{"line_number":109,"context_line":"                             \"assume gnocchi is disabled. And retry later\"))"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_24811d4b","line":106,"in_reply_to":"3a50d1a3_a99c286a","updated":"2015-07-20 10:38:37.000000000","message":"Done","commit_id":"bafd790e83fa6d6c3841cb54661f928a85aa7487"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"563eada9ec12be8701de0186d4e66ac9ee0516aa","unresolved":false,"context_lines":[{"line_number":85,"context_line":"            return cfg.CONF.api.gnocchi_is_enabled"},{"line_number":86,"context_line":"        elif self._gnocchi_is_enabled is None:"},{"line_number":87,"context_line":"            try:"},{"line_number":88,"context_line":"                self._ask_keystone_for_enabled_services()"},{"line_number":89,"context_line":"            except exceptions.ClientException:"},{"line_number":90,"context_line":"                LOG.warn(_LW(\"Can\u0027t connect to keystone, \""},{"line_number":91,"context_line":"                             \"assuming gnocchi is disabled and retry later\"))"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_50594759","line":88,"updated":"2015-07-21 10:14:31.000000000","message":"can I have my self._gnocchi_is_enabled \u003d\n\nYou know, I\u0027m a functional guy.","commit_id":"87c405094de0800041b8ed4353c12a9cf47723eb"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"57ea31951c9a6792df57183cca5be963f1a0eade","unresolved":false,"context_lines":[{"line_number":85,"context_line":"            return cfg.CONF.api.gnocchi_is_enabled"},{"line_number":86,"context_line":"        elif self._gnocchi_is_enabled is None:"},{"line_number":87,"context_line":"            try:"},{"line_number":88,"context_line":"                self._ask_keystone_for_enabled_services()"},{"line_number":89,"context_line":"            except exceptions.ClientException:"},{"line_number":90,"context_line":"                LOG.warn(_LW(\"Can\u0027t connect to keystone, \""},{"line_number":91,"context_line":"                             \"assuming gnocchi is disabled and retry later\"))"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a50d1a3_c767a64b","line":88,"in_reply_to":"3a50d1a3_50594759","updated":"2015-07-22 07:58:32.000000000","message":"Done","commit_id":"87c405094de0800041b8ed4353c12a9cf47723eb"}]}
