)]}'
{"releasenotes/notes/add_service_list-d8e28adabc26f1cf.yaml":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e27c7a425d69c7e33d70d2104904e1e831f6aeb","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - Added a new API to list all vitrage services present in the system."}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fdfeff1_de360452","line":3,"range":{"start_line":3,"start_character":4,"end_line":3,"end_character":19},"updated":"2019-02-12 10:57:24.000000000","message":"Added support for a new API.\nThis should be in addition to release notes in python-vitrage client.","commit_id":"12f70b9ada4234b19245898932bd5cfba17184b0"}],"vitrage/api/controllers/v1/service.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"b961055b79c5e2ab64200a70bc142911d2256bf6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#  Copyright 2019 - Nokia Corporation"},{"line_number":2,"context_line":"#  #"},{"line_number":3,"context_line":"#  Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#  not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#  a copy of the License at"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_c55bb584","line":2,"range":{"start_line":2,"start_character":3,"end_line":2,"end_character":4},"updated":"2019-02-10 12:06:21.000000000","message":"Is it needed?","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"af69f47458b463ffa1181521b7e723e0b3a4a47f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#  Copyright 2019 - Nokia Corporation"},{"line_number":2,"context_line":"#  #"},{"line_number":3,"context_line":"#  Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#  not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#  a copy of the License at"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_65df69d6","line":2,"range":{"start_line":2,"start_character":3,"end_line":2,"end_character":4},"in_reply_to":"9fdfeff1_c55bb584","updated":"2019-02-10 12:22:34.000000000","message":"Done","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"52fd731ed33ec4726b28fb555fdb0ec4fd4589af","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        return self.get()"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    @pecan.expose(\u0027json\u0027)"},{"line_number":33,"context_line":"    def get(self):"},{"line_number":34,"context_line":"        enforce(\"get service list\", pecan.request.headers,"},{"line_number":35,"context_line":"                pecan.request.enforcer, {})"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_45f025ca","line":33,"range":{"start_line":33,"start_character":8,"end_line":33,"end_character":11},"updated":"2019-02-10 10:37:36.000000000","message":"shouldn\u0027t be \"get_all\" ?\n\nand \"get\" can be implemented to bring more details on the service","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"43b6f2a36a728b8fd41062519a60c77a19d6b5f9","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        return self.get()"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    @pecan.expose(\u0027json\u0027)"},{"line_number":33,"context_line":"    def get(self):"},{"line_number":34,"context_line":"        enforce(\"get service list\", pecan.request.headers,"},{"line_number":35,"context_line":"                pecan.request.enforcer, {})"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_e5b4b9d3","line":33,"range":{"start_line":33,"start_character":8,"end_line":33,"end_character":11},"in_reply_to":"9fdfeff1_45f025ca","updated":"2019-02-10 10:53:27.000000000","message":"get with parameter will show more details but there is no need\nfor this since there isn\u0027t any extra data to show in deatils","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"}],"vitrage/api/hooks.py":[{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"a9961b81f2b2ab489c08600a68823bfa32ea6418","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"class CoordinatorHook(hooks.PecanHook):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def __init__(self, conf):"},{"line_number":104,"context_line":"        self.coordinator \u003d coordination.Coordinator(conf)"},{"line_number":105,"context_line":"        self.coordinator.start()"},{"line_number":106,"context_line":"        self.coordinator.join_group()"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    def before(self, state):"},{"line_number":109,"context_line":"        state.request.coordinator \u003d self.coordinator"}],"source_content_type":"text/x-python","patch_set":25,"id":"9fdfeff1_21c2955a","line":106,"range":{"start_line":103,"start_character":0,"end_line":106,"end_character":37},"updated":"2019-02-12 11:39:51.000000000","message":"This is only done once on process startup, so if the tooz backend was down at that point, the api will always return an error, even after the tooz backend was enabled, and a vitrage restart will be required.","commit_id":"12f70b9ada4234b19245898932bd5cfba17184b0"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"8c15ab9d21887b2ffc47afadc33673df159f9709","unresolved":false,"context_lines":[{"line_number":100,"context_line":""},{"line_number":101,"context_line":"class CoordinatorHook(hooks.PecanHook):"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def __init__(self, conf):"},{"line_number":104,"context_line":"        self.coordinator \u003d coordination.Coordinator(conf)"},{"line_number":105,"context_line":"        self.coordinator.start()"},{"line_number":106,"context_line":"        self.coordinator.join_group()"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    def before(self, state):"},{"line_number":109,"context_line":"        state.request.coordinator \u003d self.coordinator"}],"source_content_type":"text/x-python","patch_set":25,"id":"9fdfeff1_e1156d4a","line":106,"range":{"start_line":103,"start_character":0,"end_line":106,"end_character":37},"in_reply_to":"9fdfeff1_21c2955a","updated":"2019-02-12 12:00:36.000000000","message":"I think this is something that should be implemented in the tooz library or in its drivers","commit_id":"12f70b9ada4234b19245898932bd5cfba17184b0"}],"vitrage/coordination/__init__.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"b961055b79c5e2ab64200a70bc142911d2256bf6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#  Copyright 2019 - Nokia Corporation"},{"line_number":2,"context_line":"#  #"},{"line_number":3,"context_line":"#  Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#  not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#  a copy of the License at"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_a550f15f","line":2,"range":{"start_line":2,"start_character":3,"end_line":2,"end_character":4},"updated":"2019-02-10 12:06:21.000000000","message":"Not needed (also in other files)","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"af69f47458b463ffa1181521b7e723e0b3a4a47f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#  Copyright 2019 - Nokia Corporation"},{"line_number":2,"context_line":"#  #"},{"line_number":3,"context_line":"#  Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"#  not use this file except in compliance with the License. You may obtain"},{"line_number":5,"context_line":"#  a copy of the License at"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_05f0dd66","line":2,"range":{"start_line":2,"start_character":3,"end_line":2,"end_character":4},"in_reply_to":"9fdfeff1_a550f15f","updated":"2019-02-10 12:22:34.000000000","message":"Done","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"}],"vitrage/coordination/coordination.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"b961055b79c5e2ab64200a70bc142911d2256bf6","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                LOG.exception(\u0027Error connecting to coordination backend.\u0027)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def stop(self):"},{"line_number":47,"context_line":"        if self.is_active():"},{"line_number":48,"context_line":"            return"},{"line_number":49,"context_line":"        try:"},{"line_number":50,"context_line":"            self.coordinator.stop()"},{"line_number":51,"context_line":"        except tooz.coordination.ToozError:"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_454fc5bc","line":48,"range":{"start_line":47,"start_character":8,"end_line":48,"end_character":18},"updated":"2019-02-10 12:06:21.000000000","message":"did you mean \u0027if not self.is_active()\u0027 ?","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"af69f47458b463ffa1181521b7e723e0b3a4a47f","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                LOG.exception(\u0027Error connecting to coordination backend.\u0027)"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def stop(self):"},{"line_number":47,"context_line":"        if self.is_active():"},{"line_number":48,"context_line":"            return"},{"line_number":49,"context_line":"        try:"},{"line_number":50,"context_line":"            self.coordinator.stop()"},{"line_number":51,"context_line":"        except tooz.coordination.ToozError:"}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_25f3a175","line":48,"range":{"start_line":47,"start_character":8,"end_line":48,"end_character":18},"in_reply_to":"9fdfeff1_454fc5bc","updated":"2019-02-10 12:22:34.000000000","message":"good catch :)","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"b961055b79c5e2ab64200a70bc142911d2256bf6","unresolved":false,"context_lines":[{"line_number":101,"context_line":"        if not self.is_active():"},{"line_number":102,"context_line":"            return []"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        while True:"},{"line_number":105,"context_line":"            get_members_req \u003d self.coordinator.get_members(six.b(group_id))"},{"line_number":106,"context_line":"            try:"},{"line_number":107,"context_line":"                return [json.loads("}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_654a09ad","line":104,"range":{"start_line":104,"start_character":8,"end_line":104,"end_character":18},"updated":"2019-02-10 12:06:21.000000000","message":"loop forever?","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"af69f47458b463ffa1181521b7e723e0b3a4a47f","unresolved":false,"context_lines":[{"line_number":101,"context_line":"        if not self.is_active():"},{"line_number":102,"context_line":"            return []"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"        while True:"},{"line_number":105,"context_line":"            get_members_req \u003d self.coordinator.get_members(six.b(group_id))"},{"line_number":106,"context_line":"            try:"},{"line_number":107,"context_line":"                return [json.loads("}],"source_content_type":"text/x-python","patch_set":17,"id":"9fdfeff1_c5e97580","line":104,"range":{"start_line":104,"start_character":8,"end_line":104,"end_character":18},"in_reply_to":"9fdfeff1_654a09ad","updated":"2019-02-10 12:22:34.000000000","message":"only until it succeeds","commit_id":"29c8b223d1c827fb937a0318d5672f0772809ce3"}],"vitrage/coordination/service.py":[{"author":{"_account_id":19184,"name":"Idan Hefetz","email":"idan.hefetz@nokia.com","username":"idan-hefetz"},"change_message_id":"a9961b81f2b2ab489c08600a68823bfa32ea6418","unresolved":false,"context_lines":[{"line_number":24,"context_line":"        self.coordinator \u003d Coordinator(conf, \u0027%s worker(%s)\u0027 % (self.name,"},{"line_number":25,"context_line":"                                                                worker_id))"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    def run(self):"},{"line_number":28,"context_line":"        self.coordinator.start()"},{"line_number":29,"context_line":"        self.coordinator.join_group()"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def terminate(self):"},{"line_number":32,"context_line":"        self.coordinator.stop()"}],"source_content_type":"text/x-python","patch_set":25,"id":"9fdfeff1_a1c9a559","line":29,"range":{"start_line":27,"start_character":0,"end_line":29,"end_character":37},"updated":"2019-02-12 11:39:51.000000000","message":"same comment regarding these services starting when tooz backend is down.","commit_id":"12f70b9ada4234b19245898932bd5cfba17184b0"}]}
