)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     minwang \u003cswiftwangster@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-01-29 16:42:44 -0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implements: blueprint anti-affinity server group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"https://blueprints.launchpad.net/octavia/+spec/anti-affinity"},{"line_number":10,"context_line":"Added a new column in lb table for server group id;"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7a5de9d1_20dafa4c","line":7,"updated":"2016-01-30 01:17:36.000000000","message":"This should go below the text block.\nImplements: blueprint anti-affinity\n\nDetails here: http://docs.openstack.org/infra/manual/developers.html#committing-a-change","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     minwang \u003cswiftwangster@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-01-29 16:42:44 -0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implements: blueprint anti-affinity server group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"https://blueprints.launchpad.net/octavia/+spec/anti-affinity"},{"line_number":10,"context_line":"Added a new column in lb table for server group id;"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7a5de9d1_457ca8eb","line":7,"in_reply_to":"7a5de9d1_20dafa4c","updated":"2016-02-01 18:33:18.000000000","message":"ok, will update it in the coming patch.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"}],"etc/octavia.conf":[{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":165,"context_line":"#"},{"line_number":166,"context_line":"# Flag to enable nova anti-affinity capabilities to place amphorae on"},{"line_number":167,"context_line":"# different hosts"},{"line_number":168,"context_line":"# enable_nova_anti_affinity \u003d False"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"[task_flow]"},{"line_number":171,"context_line":"# engine \u003d serial"}],"source_content_type":"text/plain","patch_set":22,"id":"bae84128_0d755997","line":168,"range":{"start_line":168,"start_character":0,"end_line":168,"end_character":35},"updated":"2016-02-21 01:06:14.000000000","message":"As I state elsewhere: Nova compute driver options should be in the nova option section of this file.","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"}],"octavia/common/config.py":[{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":262,"context_line":"               help\u003d_(\u0027Load balancer topology configuration. \u0027"},{"line_number":263,"context_line":"                      \u0027SINGLE - One amphora per load balancer. \u0027"},{"line_number":264,"context_line":"                      \u0027ACTIVE_STANDBY - Two amphora per load balancer.\u0027)),"},{"line_number":265,"context_line":"    cfg.StrOpt(\u0027enable_nova_anti_affinity\u0027,"},{"line_number":266,"context_line":"               default\u003dFalse,"},{"line_number":267,"context_line":"               help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":268,"context_line":"                      \u0027turned on.\u0027))"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_7205b312","line":265,"range":{"start_line":265,"start_character":8,"end_line":265,"end_character":14},"updated":"2016-02-09 09:56:57.000000000","message":"BoolOpt is preferred.","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":246,"context_line":"                       \u0027to the config drive on Amphora boot instead of \u0027"},{"line_number":247,"context_line":"                       \u0027personality files. If False, utilize personality \u0027"},{"line_number":248,"context_line":"                       \u0027files.\u0027)),"},{"line_number":249,"context_line":"    cfg.BoolOpt(\u0027enable_nova_anti_affinity\u0027, default\u003dFalse,"},{"line_number":250,"context_line":"                help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":251,"context_line":"                       \u0027turned on.\u0027))"},{"line_number":252,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":22,"id":"bae84128_ed50f50c","line":249,"range":{"start_line":249,"start_character":0,"end_line":249,"end_character":59},"updated":"2016-02-21 01:06:14.000000000","message":"Shouldn\u0027t this be in the \u0027nova opts\u0027 section instead? Also, it should be renamed \u0027enable_anti_affinity\u0027 if it\u0027s moved to that section, as \u0027nova\u0027 in the name would be redundant.","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"3abed4e76f3c12174ee3f6dcfb3f2c1a59af005a","unresolved":false,"context_lines":[{"line_number":354,"context_line":"    cfg.StrOpt(\u0027endpoint_type\u0027, default\u003d\u0027publicURL\u0027,"},{"line_number":355,"context_line":"               help\u003d_(\u0027Endpoint interface in identity service to use\u0027)),"},{"line_number":356,"context_line":"    cfg.BoolOpt(\u0027enable_anti_affinity\u0027, default\u003dFalse,"},{"line_number":357,"context_line":"                help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":358,"context_line":"                       \u0027turned on.\u0027))"},{"line_number":359,"context_line":"]"},{"line_number":360,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_f0536537","line":357,"range":{"start_line":357,"start_character":15,"end_line":357,"end_character":16},"updated":"2016-02-23 00:21:22.000000000","message":"Would this extra space cause any indent issues ?","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ca6024b1aee1041f5e4af760f913949d151d4073","unresolved":false,"context_lines":[{"line_number":354,"context_line":"    cfg.StrOpt(\u0027endpoint_type\u0027, default\u003d\u0027publicURL\u0027,"},{"line_number":355,"context_line":"               help\u003d_(\u0027Endpoint interface in identity service to use\u0027)),"},{"line_number":356,"context_line":"    cfg.BoolOpt(\u0027enable_anti_affinity\u0027, default\u003dFalse,"},{"line_number":357,"context_line":"                help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":358,"context_line":"                       \u0027turned on.\u0027))"},{"line_number":359,"context_line":"]"},{"line_number":360,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_abb4d281","line":357,"range":{"start_line":357,"start_character":15,"end_line":357,"end_character":16},"in_reply_to":"bae84128_2bfba248","updated":"2016-02-23 00:48:03.000000000","message":"np, for the rest of the comments, i have addressed properly, thanks for the input :)","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"0170b7574aac2c9215296fded8f1b88632e03a18","unresolved":false,"context_lines":[{"line_number":354,"context_line":"    cfg.StrOpt(\u0027endpoint_type\u0027, default\u003d\u0027publicURL\u0027,"},{"line_number":355,"context_line":"               help\u003d_(\u0027Endpoint interface in identity service to use\u0027)),"},{"line_number":356,"context_line":"    cfg.BoolOpt(\u0027enable_anti_affinity\u0027, default\u003dFalse,"},{"line_number":357,"context_line":"                help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":358,"context_line":"                       \u0027turned on.\u0027))"},{"line_number":359,"context_line":"]"},{"line_number":360,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_2bfba248","line":357,"range":{"start_line":357,"start_character":15,"end_line":357,"end_character":16},"in_reply_to":"bae84128_ab8052f8","updated":"2016-02-23 00:46:55.000000000","message":"I was about to correct my comment that I didn\u0027t notice the parentheses above. Thanks for confirming either way. :-)","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ff37d29194166c57956672bf83934f4c3d8a93c5","unresolved":false,"context_lines":[{"line_number":354,"context_line":"    cfg.StrOpt(\u0027endpoint_type\u0027, default\u003d\u0027publicURL\u0027,"},{"line_number":355,"context_line":"               help\u003d_(\u0027Endpoint interface in identity service to use\u0027)),"},{"line_number":356,"context_line":"    cfg.BoolOpt(\u0027enable_anti_affinity\u0027, default\u003dFalse,"},{"line_number":357,"context_line":"                help\u003d_(\u0027Flag to indicate if nova anti-affinity feature is \u0027"},{"line_number":358,"context_line":"                       \u0027turned on.\u0027))"},{"line_number":359,"context_line":"]"},{"line_number":360,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_ab8052f8","line":357,"range":{"start_line":357,"start_character":15,"end_line":357,"end_character":16},"in_reply_to":"bae84128_f0536537","updated":"2016-02-23 00:35:58.000000000","message":"it passed pep8, if we delete this extra space, it will cause pep8 error.","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/compute/compute_base.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        pass"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"    @abc.abstractmethod"},{"line_number":78,"context_line":"    def create_server_group(self, loadbalancer_id, policy):"},{"line_number":79,"context_line":"        \"\"\"Create a server group object"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        :param loadbalancer_id: load balancer id which will be used to form"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_80972e47","line":78,"updated":"2016-01-30 01:17:36.000000000","message":"Since this is a compute driver, it might be better to keep this generic and pass in a name instead of the loadbalancer_id.  Then it could be used for other purposes.  The name passed in could already be generated with the loadbalancer_id.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        pass"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"    @abc.abstractmethod"},{"line_number":78,"context_line":"    def create_server_group(self, loadbalancer_id, policy):"},{"line_number":79,"context_line":"        \"\"\"Create a server group object"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        :param loadbalancer_id: load balancer id which will be used to form"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_28df033b","line":78,"in_reply_to":"7a5de9d1_80972e47","updated":"2016-02-01 18:33:18.000000000","message":"ok, so we can update this to be \ndef create_server_group(self, name, policy):","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":41,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":42,"context_line":"        a string"},{"line_number":43,"context_line":"        :param server_group_id: Optional server group id to pass to be exposed"},{"line_number":44,"context_line":"        by the metadata server,it is a uuid"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        :raises ComputeBuildException: if compute failed to build amphora"},{"line_number":47,"context_line":"        :returns: UUID of amphora"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_2106801d","line":44,"range":{"start_line":43,"start_character":71,"end_line":44,"end_character":30},"updated":"2016-02-12 10:45:42.000000000","message":"Why would it get passed to metadata server ? I thought the server group ip would be used by the scheduler according to the instance-group mappings in db, isn\u0027t it?","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":41,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":42,"context_line":"        a string"},{"line_number":43,"context_line":"        :param server_group_id: Optional server group id to pass to be exposed"},{"line_number":44,"context_line":"        by the metadata server,it is a uuid"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        :raises ComputeBuildException: if compute failed to build amphora"},{"line_number":47,"context_line":"        :returns: UUID of amphora"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_607539f8","line":44,"range":{"start_line":43,"start_character":71,"end_line":44,"end_character":30},"in_reply_to":"3a57f1b5_2106801d","updated":"2016-02-12 17:00:52.000000000","message":"we need to use nova client to create server group, so we need to rewrite this build method.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"f630496c3ec74ae74425ab6e8d31537aa4f3287e","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":41,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":42,"context_line":"        a string"},{"line_number":43,"context_line":"        :param server_group_id: Optional server group id to pass to be exposed"},{"line_number":44,"context_line":"        by the metadata server,it is a uuid"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        :raises ComputeBuildException: if compute failed to build amphora"},{"line_number":47,"context_line":"        :returns: UUID of amphora"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_fbb8fa76","line":44,"range":{"start_line":43,"start_character":71,"end_line":44,"end_character":30},"in_reply_to":"3a57f1b5_607539f8","updated":"2016-02-12 17:22:45.000000000","message":"I understand that but what I pointed to was it\u0027s not metadata server that gets to use this server_group_id but the nova scheduler while building the instance. Metadata service just serves the metadata or user info to the instances and nothing else.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"c21970753b4e1e01ca69ef3fd0d0c7f637893d83","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":41,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":42,"context_line":"        a string"},{"line_number":43,"context_line":"        :param server_group_id: Optional server group id to pass to be exposed"},{"line_number":44,"context_line":"        by the metadata server,it is a uuid"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        :raises ComputeBuildException: if compute failed to build amphora"},{"line_number":47,"context_line":"        :returns: UUID of amphora"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_065573c4","line":44,"range":{"start_line":43,"start_character":71,"end_line":44,"end_character":30},"in_reply_to":"3a57f1b5_fbb8fa76","updated":"2016-02-12 21:32:06.000000000","message":"You can edit description as,\n\n\"Optional server group id (uuid) passed to nova to ensure anti_affinity\"","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"3abed4e76f3c12174ee3f6dcfb3f2c1a59af005a","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":41,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":42,"context_line":"        a string"},{"line_number":43,"context_line":"        :param server_group_id: Optional server group id(uuid) which used for"},{"line_number":44,"context_line":"        anti_affinity feature"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        :raises ComputeBuildException: if compute failed to build amphora"}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_2b33a2f7","line":43,"range":{"start_line":43,"start_character":68,"end_line":43,"end_character":73},"updated":"2016-02-23 00:21:22.000000000","message":"nit: used --\u003e is used","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/compute/drivers/noop_driver/driver.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":33,"context_line":"              server_group_id\u003dNone):"},{"line_number":34,"context_line":"        LOG.debug(\"Compute %s no-op, build name %s, amphora_flavor %s, \""},{"line_number":35,"context_line":"                  \"image_id %s, key_name %s, sec_groups %s, network_ids %s,\""},{"line_number":36,"context_line":"                  \"config_drive_files %s, user_data %s, port_ids %s\","},{"line_number":37,"context_line":"                  self.__class__.__name__, name, amphora_flavor, image_id,"},{"line_number":38,"context_line":"                  key_name, sec_groups, network_ids, config_drive_files,"},{"line_number":39,"context_line":"                  user_data, port_ids, server_group_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_0091fe46","line":36,"updated":"2016-01-30 01:17:36.000000000","message":"Missing a print statement here.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":33,"context_line":"              server_group_id\u003dNone):"},{"line_number":34,"context_line":"        LOG.debug(\"Compute %s no-op, build name %s, amphora_flavor %s, \""},{"line_number":35,"context_line":"                  \"image_id %s, key_name %s, sec_groups %s, network_ids %s,\""},{"line_number":36,"context_line":"                  \"config_drive_files %s, user_data %s, port_ids %s\","},{"line_number":37,"context_line":"                  self.__class__.__name__, name, amphora_flavor, image_id,"},{"line_number":38,"context_line":"                  key_name, sec_groups, network_ids, config_drive_files,"},{"line_number":39,"context_line":"                  user_data, port_ids, server_group_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_a8c21351","line":36,"in_reply_to":"7a5de9d1_0091fe46","updated":"2016-02-01 18:33:18.000000000","message":"oh yeah, need to add that new property inside too.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def create_server_group(self, loadbalancer_id, policy):"},{"line_number":72,"context_line":"        LOG.debug(\"Create Server Group %s no-op, name %s,policy%s \","},{"line_number":73,"context_line":"                  self.__class__.__name__, \u0027octavia-lb-\u0027 + loadbalancer_id,"},{"line_number":74,"context_line":"                  policy)"},{"line_number":75,"context_line":"        self.computeconfig[(loadbalancer_id, policy)] \u003d (loadbalancer_id,"},{"line_number":76,"context_line":"                                                         policy, \u0027create\u0027)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_80a5eea2","line":73,"updated":"2016-01-30 01:17:36.000000000","message":"This would change to just name.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        LOG.debug(\"Compute %s no-op, build name %s, amphora_flavor %s, \""},{"line_number":35,"context_line":"                  \"image_id %s, key_name %s, sec_groups %s, network_ids %s,\""},{"line_number":36,"context_line":"                  \"config_drive_files %s, user_data %s, port_ids %s,\""},{"line_number":37,"context_line":"                  \"server_group_id\u003dNone%s\","},{"line_number":38,"context_line":"                  self.__class__.__name__, name, amphora_flavor, image_id,"},{"line_number":39,"context_line":"                  key_name, sec_groups, network_ids, config_drive_files,"},{"line_number":40,"context_line":"                  user_data, port_ids, server_group_id)"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_df92709f","line":37,"range":{"start_line":37,"start_character":34,"end_line":37,"end_character":39},"updated":"2016-02-09 09:56:57.000000000","message":"Remove \"\u003dNone\"","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        )"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def create_server_group(self, name, policy):"},{"line_number":72,"context_line":"        LOG.debug(\"Create Server Group %s no-op, name %s,policy%s \","},{"line_number":73,"context_line":"                  self.__class__.__name__, name, policy)"},{"line_number":74,"context_line":"        self.computeconfig[(name, policy)] \u003d (name, policy, \u0027create\u0027)"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_ff3f2c85","line":72,"range":{"start_line":72,"start_character":57,"end_line":72,"end_character":65},"updated":"2016-02-09 09:56:57.000000000","message":"nit: whitespace --\u003e policy %s","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        self.computeconfig[(name, policy)] \u003d (name, policy, \u0027create\u0027)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def delete_server_group(self, server_group_id):"},{"line_number":77,"context_line":"        LOG.debug(\"Delete Server Group %s no-op,id%s \","},{"line_number":78,"context_line":"                  self.__class__.__name__, server_group_id)"},{"line_number":79,"context_line":"        self.computeconfig[server_group_id] \u003d (server_group_id, \u0027delete\u0027)"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_ff564ccd","line":77,"range":{"start_line":77,"start_character":48,"end_line":77,"end_character":52},"updated":"2016-02-09 09:56:57.000000000","message":"nit: whitespace --\u003e id %s","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"61e4ae7269c5d58cf0457343d95f9cbf412e131a","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        LOG.debug(\"Compute %s no-op, build name %s, amphora_flavor %s, \""},{"line_number":35,"context_line":"                  \"image_id %s, key_name %s, sec_groups %s, network_ids %s,\""},{"line_number":36,"context_line":"                  \"config_drive_files %s, user_data %s, port_ids %s,\""},{"line_number":37,"context_line":"                  \"server_group_id%s\","},{"line_number":38,"context_line":"                  self.__class__.__name__, name, amphora_flavor, image_id,"},{"line_number":39,"context_line":"                  key_name, sec_groups, network_ids, config_drive_files,"},{"line_number":40,"context_line":"                  user_data, port_ids, server_group_id)"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_3516f14b","line":37,"updated":"2016-02-18 21:10:30.000000000","message":"nit: \"server_group_id%s\" -\u003e \"server_group_id %s\"","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"81b3b61b74467e3f6f1c43226d4aff8dd8cf8dd9","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        LOG.debug(\"Compute %s no-op, build name %s, amphora_flavor %s, \""},{"line_number":35,"context_line":"                  \"image_id %s, key_name %s, sec_groups %s, network_ids %s,\""},{"line_number":36,"context_line":"                  \"config_drive_files %s, user_data %s, port_ids %s,\""},{"line_number":37,"context_line":"                  \"server_group_id%s\","},{"line_number":38,"context_line":"                  self.__class__.__name__, name, amphora_flavor, image_id,"},{"line_number":39,"context_line":"                  key_name, sec_groups, network_ids, config_drive_files,"},{"line_number":40,"context_line":"                  user_data, port_ids, server_group_id)"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_8b0a3ad0","line":37,"in_reply_to":"dae33548_3516f14b","updated":"2016-02-18 21:51:21.000000000","message":"I remember pointing these three nits\u0027 in an older patch.. Somehow I skipped reviewing them. Thanks for pointing..","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"61e4ae7269c5d58cf0457343d95f9cbf412e131a","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        )"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def create_server_group(self, name, policy):"},{"line_number":72,"context_line":"        LOG.debug(\"Create Server Group %s no-op, name %s, policy%s \","},{"line_number":73,"context_line":"                  self.__class__.__name__, name, policy)"},{"line_number":74,"context_line":"        self.computeconfig[(name, policy)] \u003d (name, policy, \u0027create\u0027)"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_55173544","line":72,"updated":"2016-02-18 21:10:30.000000000","message":"nit: policy%s -\u003e policy %s","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"61e4ae7269c5d58cf0457343d95f9cbf412e131a","unresolved":false,"context_lines":[{"line_number":74,"context_line":"        self.computeconfig[(name, policy)] \u003d (name, policy, \u0027create\u0027)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def delete_server_group(self, server_group_id):"},{"line_number":77,"context_line":"        LOG.debug(\"Delete Server Group %s no-op, id%s \","},{"line_number":78,"context_line":"                  self.__class__.__name__, server_group_id)"},{"line_number":79,"context_line":"        self.computeconfig[server_group_id] \u003d (server_group_id, \u0027delete\u0027)"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_d521859f","line":77,"updated":"2016-02-18 21:10:30.000000000","message":"nit: id%s  -\u003e id %s","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"}],"octavia/compute/drivers/nova_driver.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":163,"context_line":"    def create_server_group(self, loadbalancer_id, policy):"},{"line_number":164,"context_line":"        \"\"\"Create a server group objectobject"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"        :param name: the name of the server group"},{"line_number":167,"context_line":"        :param policy: the policy of the server group"},{"line_number":168,"context_line":"        :returns: the server group object"},{"line_number":169,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_40c29635","line":166,"updated":"2016-01-30 01:17:36.000000000","message":"Looks like you already started the change!","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"66ce3dbfe344e848e51e8194e32dc7754ffbd4e1","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        :param policy: the policy of the server group"},{"line_number":168,"context_line":"        :returns: the server group object"},{"line_number":169,"context_line":"        \"\"\""},{"line_number":170,"context_line":"        kwargs \u003d {\u0027name\u0027: \u0027octavia-lb-\u0027 + loadbalancer_id,"},{"line_number":171,"context_line":"                  \u0027policies\u0027: [policy]}"},{"line_number":172,"context_line":"        try:"},{"line_number":173,"context_line":"            server_group_obj \u003d self.server_groups.create(**kwargs)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_4e4727bc","line":170,"range":{"start_line":170,"start_character":42,"end_line":170,"end_character":57},"updated":"2016-01-30 03:49:09.000000000","message":"to concur with Michael -- you would generate that string outside.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        :param policy: the policy of the server group"},{"line_number":168,"context_line":"        :returns: the server group object"},{"line_number":169,"context_line":"        \"\"\""},{"line_number":170,"context_line":"        kwargs \u003d {\u0027name\u0027: \u0027octavia-lb-\u0027 + loadbalancer_id,"},{"line_number":171,"context_line":"                  \u0027policies\u0027: [policy]}"},{"line_number":172,"context_line":"        try:"},{"line_number":173,"context_line":"            server_group_obj \u003d self.server_groups.create(**kwargs)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_a870d340","line":170,"range":{"start_line":170,"start_character":42,"end_line":170,"end_character":57},"in_reply_to":"7a5de9d1_4e4727bc","updated":"2016-02-01 18:33:18.000000000","message":"yeah, will update it in the next patch.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":183,"context_line":"        return response"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"    def create_server_group(self, name, policy):"},{"line_number":186,"context_line":"        \"\"\"Create a server group objectobject"},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"        :param name: the name of the server group"},{"line_number":189,"context_line":"        :param policy: the policy of the server group"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_726b7386","line":186,"range":{"start_line":186,"start_character":33,"end_line":186,"end_character":39},"updated":"2016-02-09 09:56:57.000000000","message":"nit: remove duplicate","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":66,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":67,"context_line":"        a string"},{"line_number":68,"context_line":"        :param server_group_id: Optional server group id to pass to be exposed"},{"line_number":69,"context_line":"        by the metadata server,it is a uuid"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :raises ComputeBuildException: if nova failed to build virtual machine"},{"line_number":72,"context_line":"        :returns: UUID of amphora"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_0184a45b","line":69,"range":{"start_line":68,"start_character":71,"end_line":69,"end_character":30},"updated":"2016-02-12 10:45:42.000000000","message":"Refer to my previous comment.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"61e4ae7269c5d58cf0457343d95f9cbf412e131a","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        \"\"\""},{"line_number":210,"context_line":"        try:"},{"line_number":211,"context_line":"            self.server_groups.delete(server_group_id)"},{"line_number":212,"context_line":"        except Exception:"},{"line_number":213,"context_line":"            LOG.exception(_LE(\"Error delete server group instance.\"))"},{"line_number":214,"context_line":"            raise exceptions.ServerGroupObjectDeleteException()"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_b5dfa10b","line":212,"updated":"2016-02-18 21:10:30.000000000","message":"If the exception is a \"not found\" exception we should not raise an exception here.","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"81b3b61b74467e3f6f1c43226d4aff8dd8cf8dd9","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        \"\"\""},{"line_number":210,"context_line":"        try:"},{"line_number":211,"context_line":"            self.server_groups.delete(server_group_id)"},{"line_number":212,"context_line":"        except Exception:"},{"line_number":213,"context_line":"            LOG.exception(_LE(\"Error delete server group instance.\"))"},{"line_number":214,"context_line":"            raise exceptions.ServerGroupObjectDeleteException()"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_cb42820e","line":212,"in_reply_to":"dae33548_b5dfa10b","updated":"2016-02-18 21:51:21.000000000","message":"Great point..","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":12999,"name":"James Arendt","email":"james.arendt@hpe.com","username":"jwarendt"},"change_message_id":"4e1859c7d0fe7d942f2a459f553571a22bdc653b","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":66,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":67,"context_line":"        a string"},{"line_number":68,"context_line":"        :param server_group_id: Optional server group id(uuid) which used for"},{"line_number":69,"context_line":"        anti_affinity feature"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :raises ComputeBuildException: if nova failed to build virtual machine"}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_eb437a40","line":68,"updated":"2016-02-23 00:28:47.000000000","message":"Nit: \"is used\" instead of \"used\".","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"3abed4e76f3c12174ee3f6dcfb3f2c1a59af005a","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        :param user_data: Optional user data to pass to be exposed by the"},{"line_number":66,"context_line":"        metadata server this can be a file type object as well or"},{"line_number":67,"context_line":"        a string"},{"line_number":68,"context_line":"        :param server_group_id: Optional server group id(uuid) which used for"},{"line_number":69,"context_line":"        anti_affinity feature"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :raises ComputeBuildException: if nova failed to build virtual machine"}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_4b5426fe","line":68,"range":{"start_line":68,"start_character":68,"end_line":68,"end_character":73},"updated":"2016-02-23 00:21:22.000000000","message":"nit: used --\u003e is used","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/controller/worker/controller_worker.py":[{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":261,"context_line":"        # https://review.openstack.org/#/c/98946/"},{"line_number":262,"context_line":""},{"line_number":263,"context_line":"        store \u003d {constants.LOADBALANCER_ID: load_balancer_id,"},{"line_number":264,"context_line":"                 constants.SERVER_GROUP_POLICY: \u0027anti-affinity\u0027}"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"        topology \u003d CONF.controller_worker.loadbalancer_topology"},{"line_number":267,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"bae84128_b2f8084b","line":264,"range":{"start_line":264,"start_character":0,"end_line":264,"end_character":64},"updated":"2016-02-21 01:06:14.000000000","message":"We\u0027re hard-coding the use of anti-affinity when we create load balancers? Doesn\u0027t that make the configuration option kind of pointless? (Or am I misunderstanding what is going on here?)\n\nAnd if we do need to hard-code this, why are we passing it in as a variable?","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"}],"octavia/controller/worker/flows/amphora_flows.py":[{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":129,"context_line":"            flag_role_backup \u003d constants.ROLE_BACKUP"},{"line_number":130,"context_line":"            flag_role_master \u003d constants.ROLE_MASTER"},{"line_number":131,"context_line":"            role_flag \u003d flag_role_backup or flag_role_master"},{"line_number":132,"context_line":"            if role_flag and (anti_affinity is True):"},{"line_number":133,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.CertComputeCreate("},{"line_number":134,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.CERT_COMPUTE_CREATE,"},{"line_number":135,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM,"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_b540f536","line":132,"range":{"start_line":132,"start_character":15,"end_line":132,"end_character":52},"updated":"2016-02-09 09:56:57.000000000","message":"If used Boolean Opt in config.py, this condition could be \"role_flag and anti_affinity\"","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":141,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM),"},{"line_number":142,"context_line":"                    provides\u003dconstants.COMPUTE_ID))"},{"line_number":143,"context_line":"        else:"},{"line_number":144,"context_line":"            if role !\u003d constants.ROLE_STANDALONE and anti_affinity is True:"},{"line_number":145,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.ComputeCreate("},{"line_number":146,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.COMPUTE_CREATE,"},{"line_number":147,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_GROUP_ID),"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_15454916","line":144,"range":{"start_line":144,"start_character":53,"end_line":144,"end_character":74},"updated":"2016-02-09 09:56:57.000000000","message":"Same comment as above if used BoolOpt.","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"        anti_affinity \u003d CONF.controller_worker.enable_nova_anti_affinity"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        flag_role_backup \u003d role \u003d\u003d constants.ROLE_BACKUP"},{"line_number":121,"context_line":"        flag_role_master \u003d role \u003d\u003d constants.ROLE_MASTER"},{"line_number":122,"context_line":"        role_flag \u003d flag_role_backup or flag_role_master"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        if self.REST_AMPHORA_DRIVER:"},{"line_number":125,"context_line":"            create_amp_for_lb_subflow.add(cert_task.GenerateServerPEMTask("}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_0c07fbca","line":122,"range":{"start_line":120,"start_character":8,"end_line":122,"end_character":56},"updated":"2016-02-12 10:45:42.000000000","message":"May I suggest an elegant way for readability instead of these lines?. Refer below comments.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"        anti_affinity \u003d CONF.controller_worker.enable_nova_anti_affinity"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        flag_role_backup \u003d role \u003d\u003d constants.ROLE_BACKUP"},{"line_number":121,"context_line":"        flag_role_master \u003d role \u003d\u003d constants.ROLE_MASTER"},{"line_number":122,"context_line":"        role_flag \u003d flag_role_backup or flag_role_master"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        if self.REST_AMPHORA_DRIVER:"},{"line_number":125,"context_line":"            create_amp_for_lb_subflow.add(cert_task.GenerateServerPEMTask("}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_c0766dd6","line":122,"range":{"start_line":120,"start_character":8,"end_line":122,"end_character":56},"in_reply_to":"3a57f1b5_0c07fbca","updated":"2016-02-12 17:00:52.000000000","message":"the reason to use this way is because we need to use this flag twice, so it would be good to setup before using them.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"f630496c3ec74ae74425ab6e8d31537aa4f3287e","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"        anti_affinity \u003d CONF.controller_worker.enable_nova_anti_affinity"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        flag_role_backup \u003d role \u003d\u003d constants.ROLE_BACKUP"},{"line_number":121,"context_line":"        flag_role_master \u003d role \u003d\u003d constants.ROLE_MASTER"},{"line_number":122,"context_line":"        role_flag \u003d flag_role_backup or flag_role_master"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"        if self.REST_AMPHORA_DRIVER:"},{"line_number":125,"context_line":"            create_amp_for_lb_subflow.add(cert_task.GenerateServerPEMTask("}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_1b1ab67d","line":122,"range":{"start_line":120,"start_character":8,"end_line":122,"end_character":56},"in_reply_to":"3a57f1b5_c0766dd6","updated":"2016-02-12 17:22:45.000000000","message":"I agree but I felt in line is more readable and efficient. Reduces 5 comparisons to 2 :-)","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.UPDATE_CERT_EXPIRATION,"},{"line_number":132,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM)))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"            if role_flag and anti_affinity:"},{"line_number":135,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.CertComputeCreate("},{"line_number":136,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.CERT_COMPUTE_CREATE,"},{"line_number":137,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_8cd0cb20","line":134,"range":{"start_line":134,"start_character":12,"end_line":134,"end_character":42},"updated":"2016-02-12 10:45:42.000000000","message":"if role in (constants.ROLE_BACKUP, constants.ROLE_MASTER) and anti_affinity:","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.UPDATE_CERT_EXPIRATION,"},{"line_number":132,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM)))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"            if role_flag and anti_affinity:"},{"line_number":135,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.CertComputeCreate("},{"line_number":136,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.CERT_COMPUTE_CREATE,"},{"line_number":137,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_a0601102","line":134,"range":{"start_line":134,"start_character":12,"end_line":134,"end_character":42},"in_reply_to":"3a57f1b5_8cd0cb20","updated":"2016-02-12 17:00:52.000000000","message":"kind of afraid of the length of line ,which might cause pep8 issue.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"f630496c3ec74ae74425ab6e8d31537aa4f3287e","unresolved":false,"context_lines":[{"line_number":131,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.UPDATE_CERT_EXPIRATION,"},{"line_number":132,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM)))"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"            if role_flag and anti_affinity:"},{"line_number":135,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.CertComputeCreate("},{"line_number":136,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.CERT_COMPUTE_CREATE,"},{"line_number":137,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_PEM,"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_76b41f34","line":134,"range":{"start_line":134,"start_character":12,"end_line":134,"end_character":42},"in_reply_to":"3a57f1b5_a0601102","updated":"2016-02-12 17:22:45.000000000","message":"You can parenthesize it. However it\u0027s your call. Its a suggestion.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":144,"context_line":"                    provides\u003dconstants.COMPUTE_ID))"},{"line_number":145,"context_line":"        else:"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"            if role_flag and anti_affinity:"},{"line_number":148,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.ComputeCreate("},{"line_number":149,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.COMPUTE_CREATE,"},{"line_number":150,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_GROUP_ID),"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_8c976b47","line":147,"range":{"start_line":147,"start_character":12,"end_line":147,"end_character":42},"updated":"2016-02-12 10:45:42.000000000","message":"Same suggestion as above.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":144,"context_line":"                    provides\u003dconstants.COMPUTE_ID))"},{"line_number":145,"context_line":"        else:"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"            if role_flag and anti_affinity:"},{"line_number":148,"context_line":"                create_amp_for_lb_subflow.add(compute_tasks.ComputeCreate("},{"line_number":149,"context_line":"                    name\u003dsf_name + \u0027-\u0027 + constants.COMPUTE_CREATE,"},{"line_number":150,"context_line":"                    requires\u003d(constants.AMPHORA_ID, constants.SERVER_GROUP_ID),"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_80539538","line":147,"range":{"start_line":147,"start_character":12,"end_line":147,"end_character":42},"in_reply_to":"3a57f1b5_8c976b47","updated":"2016-02-12 17:00:52.000000000","message":"same above.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"}],"octavia/controller/worker/flows/load_balancer_flows.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"b2388cfda13027f6c25d8dfeba05b893d1865a4a","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        sg_flow_name \u003d lf_name + \u0027-\u0027 + constants.UPDATE_LB_SERVERGROUPID_INDB"},{"line_number":66,"context_line":"        create_lb_flow_wrapper.add("},{"line_number":67,"context_line":"            database_tasks.UpdateLBServerGroupInDB("},{"line_number":68,"context_line":"                name\u003dsg_flow_name, requires\u003dconstants.LOADBALANCER))"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        f_name \u003d constants.CREATE_LOADBALANCER_FLOW"},{"line_number":71,"context_line":"        lb_create_flow \u003d unordered_flow.Flow(f_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_693a93e9","line":68,"updated":"2016-01-27 00:33:44.000000000","message":"LOADBALANCER does not exist yet.\nYou probably only need LOADBALANCER_ID which does exist","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"600c6033d420d64fd5df52a4f641395630475997","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        sg_flow_name \u003d lf_name + \u0027-\u0027 + constants.UPDATE_LB_SERVERGROUPID_INDB"},{"line_number":66,"context_line":"        create_lb_flow_wrapper.add("},{"line_number":67,"context_line":"            database_tasks.UpdateLBServerGroupInDB("},{"line_number":68,"context_line":"                name\u003dsg_flow_name, requires\u003dconstants.LOADBALANCER))"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        f_name \u003d constants.CREATE_LOADBALANCER_FLOW"},{"line_number":71,"context_line":"        lb_create_flow \u003d unordered_flow.Flow(f_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_c4c046e3","line":68,"in_reply_to":"9a68dd71_693a93e9","updated":"2016-01-27 01:00:49.000000000","message":"agree!","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":140,"context_line":"            requires\u003dconstants.LOADBALANCER))"},{"line_number":141,"context_line":"        return vrrp_subflow"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def get_delete_load_balancer_flow(self):"},{"line_number":144,"context_line":"        \"\"\"Creates a flow to delete a load balancer."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        :returns: The flow for deleting a load balancer"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_4075b6f7","line":143,"updated":"2016-01-30 01:17:36.000000000","message":"We need to remove the server group here.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":140,"context_line":"            requires\u003dconstants.LOADBALANCER))"},{"line_number":141,"context_line":"        return vrrp_subflow"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"    def get_delete_load_balancer_flow(self):"},{"line_number":144,"context_line":"        \"\"\"Creates a flow to delete a load balancer."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        :returns: The flow for deleting a load balancer"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_48b91fcb","line":143,"in_reply_to":"7a5de9d1_4075b6f7","updated":"2016-02-01 18:33:18.000000000","message":"make sense, will add the delete method in the next patch.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":59,"context_line":"            # to place the amphora on different hosts, also we need to check"},{"line_number":60,"context_line":"            # if anti-affinity-flag is enabled or not:"},{"line_number":61,"context_line":"            anti_affinity \u003d CONF.controller_worker.enable_nova_anti_affinity"},{"line_number":62,"context_line":"            if anti_affinity is True:"},{"line_number":63,"context_line":"                # we need to create a server group first"},{"line_number":64,"context_line":"                create_lb_flow_wrapper.add("},{"line_number":65,"context_line":"                    compute_tasks.NovaServerGroupCreate("}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_75acbd8c","line":62,"range":{"start_line":62,"start_character":15,"end_line":62,"end_character":36},"updated":"2016-02-09 09:56:57.000000000","message":"Same as previous comment..","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        :raises InvalidTopology: Invalid topology specified"},{"line_number":47,"context_line":"        :return: The graph flow for creating an active_standby loadbalancer."},{"line_number":48,"context_line":"        \"\"\""},{"line_number":49,"context_line":"        # create a liner flow as a wrapper"},{"line_number":50,"context_line":"        lf_name \u003d constants.PRE_CREATE_LOADBALANCER_FLOW"},{"line_number":51,"context_line":"        create_lb_flow_wrapper \u003d linear_flow.Flow(lf_name)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_87dd04e2","line":49,"range":{"start_line":49,"start_character":19,"end_line":49,"end_character":24},"updated":"2016-02-12 10:45:42.000000000","message":"liner --\u003e linear","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        :raises InvalidTopology: Invalid topology specified"},{"line_number":47,"context_line":"        :return: The graph flow for creating an active_standby loadbalancer."},{"line_number":48,"context_line":"        \"\"\""},{"line_number":49,"context_line":"        # create a liner flow as a wrapper"},{"line_number":50,"context_line":"        lf_name \u003d constants.PRE_CREATE_LOADBALANCER_FLOW"},{"line_number":51,"context_line":"        create_lb_flow_wrapper \u003d linear_flow.Flow(lf_name)"},{"line_number":52,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_40383def","line":49,"range":{"start_line":49,"start_character":19,"end_line":49,"end_character":24},"in_reply_to":"3a57f1b5_87dd04e2","updated":"2016-02-12 17:00:52.000000000","message":"good catch.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        lb_create_flow \u003d unordered_flow.Flow(f_name)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        if topology \u003d\u003d constants.TOPOLOGY_ACTIVE_STANDBY:"},{"line_number":57,"context_line":"            # When we boot up amphora for an actiave/standby topology,"},{"line_number":58,"context_line":"            # we should leverage the Nova anti-affinity capabilities"},{"line_number":59,"context_line":"            # to place the amphora on different hosts, also we need to check"},{"line_number":60,"context_line":"            # if anti-affinity-flag is enabled or not:"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_ccb32399","line":57,"range":{"start_line":57,"start_character":45,"end_line":57,"end_character":52},"updated":"2016-02-12 10:45:42.000000000","message":"actiave -\u003e active","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":54,"context_line":"        lb_create_flow \u003d unordered_flow.Flow(f_name)"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"        if topology \u003d\u003d constants.TOPOLOGY_ACTIVE_STANDBY:"},{"line_number":57,"context_line":"            # When we boot up amphora for an actiave/standby topology,"},{"line_number":58,"context_line":"            # we should leverage the Nova anti-affinity capabilities"},{"line_number":59,"context_line":"            # to place the amphora on different hosts, also we need to check"},{"line_number":60,"context_line":"            # if anti-affinity-flag is enabled or not:"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_003ec5d9","line":57,"range":{"start_line":57,"start_character":45,"end_line":57,"end_character":52},"in_reply_to":"3a57f1b5_ccb32399","updated":"2016-02-12 17:00:52.000000000","message":"same here.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        two spare amphorae."},{"line_number":46,"context_line":"        :raises InvalidTopology: Invalid topology specified"},{"line_number":47,"context_line":"        :return: The graph flow for creating an active_standby loadbalancer."},{"line_number":48,"context_line":"        \"\"\""},{"line_number":49,"context_line":"        # create a linear flow as a wrapper"},{"line_number":50,"context_line":"        lf_name \u003d constants.PRE_CREATE_LOADBALANCER_FLOW"}],"source_content_type":"text/x-python","patch_set":22,"id":"bae84128_b27da8b3","line":47,"range":{"start_line":47,"start_character":48,"end_line":47,"end_character":62},"updated":"2016-02-21 01:06:14.000000000","message":"Actually, this creates flows for loadbalancers of all topologies, not just active_standby","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"3abed4e76f3c12174ee3f6dcfb3f2c1a59af005a","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"        two spare amphorae."},{"line_number":47,"context_line":"        :raises InvalidTopology: Invalid topology specified"},{"line_number":48,"context_line":"        :return: The graph flow for creating an active_standby loadbalancer."},{"line_number":49,"context_line":"        \"\"\""},{"line_number":50,"context_line":"        # create a linear flow as a wrapper"},{"line_number":51,"context_line":"        lf_name \u003d constants.PRE_CREATE_LOADBALANCER_FLOW"}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_d00e213a","line":48,"range":{"start_line":48,"start_character":48,"end_line":48,"end_character":62},"updated":"2016-02-23 00:21:22.000000000","message":"Stephan\u0027s comment on previous patch is right. This method is valid for all topologies.","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/controller/worker/tasks/compute_tasks.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"b2388cfda13027f6c25d8dfeba05b893d1865a4a","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :returns: server group\u0027s id"},{"line_number":172,"context_line":"        \"\"\""},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        kwargs \u003d {\u0027name\u0027: \u0027server_group_id-\u0027 + loadbalancer_id,"},{"line_number":175,"context_line":"                  \u0027policies\u0027: [\u0027anti-affinity\u0027]}"},{"line_number":176,"context_line":"        server_group \u003d self.nova_sg_obj.create(**kwargs)"},{"line_number":177,"context_line":"        return server_group.uuid"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_295edb45","line":174,"range":{"start_line":174,"start_character":27,"end_line":174,"end_character":43},"updated":"2016-01-27 00:33:44.000000000","message":"This is redundant.  Can we put \u0027octavia-lb-\u0027?","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"600c6033d420d64fd5df52a4f641395630475997","unresolved":false,"context_lines":[{"line_number":171,"context_line":"        :returns: server group\u0027s id"},{"line_number":172,"context_line":"        \"\"\""},{"line_number":173,"context_line":""},{"line_number":174,"context_line":"        kwargs \u003d {\u0027name\u0027: \u0027server_group_id-\u0027 + loadbalancer_id,"},{"line_number":175,"context_line":"                  \u0027policies\u0027: [\u0027anti-affinity\u0027]}"},{"line_number":176,"context_line":"        server_group \u003d self.nova_sg_obj.create(**kwargs)"},{"line_number":177,"context_line":"        return server_group.uuid"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_04a73e50","line":174,"range":{"start_line":174,"start_character":27,"end_line":174,"end_character":43},"in_reply_to":"9a68dd71_295edb45","updated":"2016-01-27 01:00:49.000000000","message":"sure we can, will update in the next patch.","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"b2388cfda13027f6c25d8dfeba05b893d1865a4a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9a68dd71_e9576324","line":178,"updated":"2016-01-27 00:33:44.000000000","message":"Needs a revert method that deletes the server group","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"600c6033d420d64fd5df52a4f641395630475997","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9a68dd71_2477e2d5","line":178,"in_reply_to":"9a68dd71_e9576324","updated":"2016-01-27 01:00:49.000000000","message":"ok, will try to add it in  the next patch.","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"66ce3dbfe344e848e51e8194e32dc7754ffbd4e1","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            invoke_on_load\u003dTrue,"},{"line_number":44,"context_line":"            invoke_kwds\u003d{\u0027region\u0027: CONF.os_region_name}"},{"line_number":45,"context_line":"        ).driver"},{"line_number":46,"context_line":"        self.server_group_obj \u003d nova_common.VirtualMachineManager()"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class ComputeCreate(BaseComputeTask):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_6e1b03cb","line":46,"updated":"2016-01-30 03:49:09.000000000","message":"is there a reason we can\u0027t use the compute driver? This creates a tight coupling on the VirtualMachineManager -- it is quite conceivable that containers might support server groups as well","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            invoke_on_load\u003dTrue,"},{"line_number":44,"context_line":"            invoke_kwds\u003d{\u0027region\u0027: CONF.os_region_name}"},{"line_number":45,"context_line":"        ).driver"},{"line_number":46,"context_line":"        self.server_group_obj \u003d nova_common.VirtualMachineManager()"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"class ComputeCreate(BaseComputeTask):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_ab99ad7a","line":46,"in_reply_to":"7a5de9d1_6e1b03cb","updated":"2016-02-01 18:33:18.000000000","message":"This is a good point, i will try to test it in the next patch.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    def execute(self, loadbalancer_id):"},{"line_number":173,"context_line":"        \"\"\"Create a server group by nova client api"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        :returns: server group\u0027s id"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        policy \u003d \u0027anti-affinity\u0027"},{"line_number":178,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_4047f6bb","line":175,"updated":"2016-01-30 01:17:36.000000000","message":"Missing a param","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":172,"context_line":"    def execute(self, loadbalancer_id):"},{"line_number":173,"context_line":"        \"\"\"Create a server group by nova client api"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        :returns: server group\u0027s id"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        policy \u003d \u0027anti-affinity\u0027"},{"line_number":178,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e8cfab53","line":175,"in_reply_to":"7a5de9d1_4047f6bb","updated":"2016-02-01 18:33:18.000000000","message":"will do.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        :returns: server group\u0027s id"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        policy \u003d \u0027anti-affinity\u0027"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"        try:"},{"line_number":180,"context_line":"            server_group \u003d self.server_group_obj.create_server_group("}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_604472b6","line":177,"updated":"2016-01-30 01:17:36.000000000","message":"Should be in constants","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        :returns: server group\u0027s id"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        policy \u003d \u0027anti-affinity\u0027"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"        try:"},{"line_number":180,"context_line":"            server_group \u003d self.server_group_obj.create_server_group("}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_884dd7c5","line":177,"in_reply_to":"7a5de9d1_604472b6","updated":"2016-02-01 18:33:18.000000000","message":"in that case, should we declare a constant var something like\ngroup_policy\u003d[\u0027anti-affinity\u0027,\u0027affinity\u0027 ] in that case, the policy can be more flexible.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"5ee78bbb26ac65c2e6bf89fd3125fabccbe2a5cf","unresolved":false,"context_lines":[{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        :returns: server group\u0027s id"},{"line_number":176,"context_line":"        \"\"\""},{"line_number":177,"context_line":"        policy \u003d \u0027anti-affinity\u0027"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"        try:"},{"line_number":180,"context_line":"            server_group \u003d self.server_group_obj.create_server_group("}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e20d7fe8","line":177,"in_reply_to":"7a5de9d1_884dd7c5","updated":"2016-02-01 21:53:47.000000000","message":"never mind, i got the idea.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":184,"context_line":"                      \"id: %s\", server_group.id, loadbalancer_id)"},{"line_number":185,"context_line":"            return server_group.id"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        except Exception:"},{"line_number":188,"context_line":"            LOG.exception(_LE(\"Server Group create for load balancer id: %s \""},{"line_number":189,"context_line":"                              \"failed\"), loadbalancer_id)"},{"line_number":190,"context_line":"            raise"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e0a14247","line":187,"updated":"2016-01-30 01:17:36.000000000","message":"Unit test missing","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":184,"context_line":"                      \"id: %s\", server_group.id, loadbalancer_id)"},{"line_number":185,"context_line":"            return server_group.id"},{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        except Exception:"},{"line_number":188,"context_line":"            LOG.exception(_LE(\"Server Group create for load balancer id: %s \""},{"line_number":189,"context_line":"                              \"failed\"), loadbalancer_id)"},{"line_number":190,"context_line":"            raise"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_88e4f7ab","line":187,"in_reply_to":"7a5de9d1_e0a14247","updated":"2016-02-01 18:33:18.000000000","message":"will add","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        server group. So it will just delete it in this flow"},{"line_number":196,"context_line":"        \"\"\""},{"line_number":197,"context_line":"        if isinstance(result, failure.Failure):"},{"line_number":198,"context_line":"            return"},{"line_number":199,"context_line":"        server_group_id \u003d result"},{"line_number":200,"context_line":"        LOG.warn(_LW(\"Reverting server group create with id:%s\"),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_409136f0","line":197,"updated":"2016-01-30 01:17:36.000000000","message":"Unit test missing.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        server group. So it will just delete it in this flow"},{"line_number":196,"context_line":"        \"\"\""},{"line_number":197,"context_line":"        if isinstance(result, failure.Failure):"},{"line_number":198,"context_line":"            return"},{"line_number":199,"context_line":"        server_group_id \u003d result"},{"line_number":200,"context_line":"        LOG.warn(_LW(\"Reverting server group create with id:%s\"),"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_28a14346","line":197,"in_reply_to":"7a5de9d1_409136f0","updated":"2016-02-01 18:33:18.000000000","message":"will do.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                 server_group_id)"},{"line_number":202,"context_line":"        try:"},{"line_number":203,"context_line":"            self.server_group_obj.delete_server_group(server_group_id)"},{"line_number":204,"context_line":"        except Exception:"},{"line_number":205,"context_line":"            LOG.exception(_LE(\"Reverting server group create failed\"))"},{"line_number":206,"context_line":"            raise"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_a0882ac6","line":204,"updated":"2016-01-30 01:17:36.000000000","message":"Unit test missing.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                 server_group_id)"},{"line_number":202,"context_line":"        try:"},{"line_number":203,"context_line":"            self.server_group_obj.delete_server_group(server_group_id)"},{"line_number":204,"context_line":"        except Exception:"},{"line_number":205,"context_line":"            LOG.exception(_LE(\"Reverting server group create failed\"))"},{"line_number":206,"context_line":"            raise"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e887abb2","line":204,"in_reply_to":"7a5de9d1_a0882ac6","updated":"2016-02-01 18:33:18.000000000","message":"will do.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"7256b5f2fec3918ce43f2e870d9076aef0b124bc","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"        :param result: here it refers to server group id"},{"line_number":197,"context_line":"        :raises: Generic exception if the server group is not deleted"},{"line_number":198,"context_line":"        server group. So it will just delete it in this flow"},{"line_number":199,"context_line":"        \"\"\""},{"line_number":200,"context_line":"        server_group_id \u003d result"},{"line_number":201,"context_line":"        LOG.warn(_LW(\"Reverting server group create with id:%s\"),"}],"source_content_type":"text/x-python","patch_set":15,"id":"5a5ae5dd_95a61952","line":198,"range":{"start_line":198,"start_character":8,"end_line":198,"end_character":60},"updated":"2016-02-09 09:56:57.000000000","message":"Shouldn\u0027t this line be before :param ?","commit_id":"6d4379869390b60a717411cf58da44200158e36a"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def revert(self, result, *args, **kwargs):"},{"line_number":205,"context_line":"        \"\"\"This method will revert the creation of the"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        :param result: here it refers to server group id"},{"line_number":208,"context_line":"        \"\"\""},{"line_number":209,"context_line":"        server_group_id \u003d result"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_dbb67bf8","line":206,"updated":"2016-02-12 10:45:42.000000000","message":"Incomplete docstring ?","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"f630496c3ec74ae74425ab6e8d31537aa4f3287e","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def revert(self, result, *args, **kwargs):"},{"line_number":205,"context_line":"        \"\"\"This method will revert the creation of the"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        :param result: here it refers to server group id"},{"line_number":208,"context_line":"        \"\"\""},{"line_number":209,"context_line":"        server_group_id \u003d result"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_566a4382","line":206,"in_reply_to":"3a57f1b5_00156547","updated":"2016-02-12 17:22:45.000000000","message":"Gotcha..","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def revert(self, result, *args, **kwargs):"},{"line_number":205,"context_line":"        \"\"\"This method will revert the creation of the"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        :param result: here it refers to server group id"},{"line_number":208,"context_line":"        \"\"\""},{"line_number":209,"context_line":"        server_group_id \u003d result"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_00156547","line":206,"in_reply_to":"3a57f1b5_dbb67bf8","updated":"2016-02-12 17:00:52.000000000","message":"need to work a bit on the blank lines.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"81b3b61b74467e3f6f1c43226d4aff8dd8cf8dd9","unresolved":false,"context_lines":[{"line_number":197,"context_line":"        server_group \u003d self.compute.create_server_group("},{"line_number":198,"context_line":"            name, server_group_policy)"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"        LOG.debug(\"Server Group created with id: %s for load balancer id \""},{"line_number":201,"context_line":"                  \"%s:\", server_group.id, loadbalancer_id)"},{"line_number":202,"context_line":"        return server_group.id"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"    def revert(self, result, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_eb7ae675","line":201,"range":{"start_line":200,"start_character":70,"end_line":201,"end_character":22},"updated":"2016-02-18 21:51:21.000000000","message":"nit: id %s:  --\u003e id: %s","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"3abed4e76f3c12174ee3f6dcfb3f2c1a59af005a","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF \u003d cfg.CONF"},{"line_number":32,"context_line":"CONF.import_group(\u0027controller_worker\u0027, \u0027octavia.common.config\u0027)"},{"line_number":33,"context_line":"CONF.import_group(\u0027nova\u0027, \u0027octavia.common.config\u0027)"},{"line_number":34,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_70a2b54c","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":50},"updated":"2016-02-23 00:21:22.000000000","message":"This is not used anywhere in the file. Do we need it ?","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/controller/worker/tasks/database_tasks.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"b2388cfda13027f6c25d8dfeba05b893d1865a4a","unresolved":false,"context_lines":[{"line_number":590,"context_line":"class UpdateLBServerGroupInDB(BaseDatabaseTask):"},{"line_number":591,"context_line":"    \"\"\"Update the sever group id info for load balancer in DB.\"\"\""},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"    def execute(self, loadbalancer):"},{"line_number":594,"context_line":"        \"\"\"Mark the load balancer as active in DB.\"\"\""},{"line_number":595,"context_line":""},{"line_number":596,"context_line":"        LOG.info(_LI(\"Update sever group id info in DB for load balancer id: \""}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_c91cdf79","line":593,"range":{"start_line":593,"start_character":22,"end_line":593,"end_character":34},"updated":"2016-01-27 00:33:44.000000000","message":"Since you only need the id, why not use pull in loadbalancer_id?","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"1ad79c5ce581f167d44c61acd064f0a47986673e","unresolved":false,"context_lines":[{"line_number":590,"context_line":"class UpdateLBServerGroupInDB(BaseDatabaseTask):"},{"line_number":591,"context_line":"    \"\"\"Update the sever group id info for load balancer in DB.\"\"\""},{"line_number":592,"context_line":""},{"line_number":593,"context_line":"    def execute(self, loadbalancer):"},{"line_number":594,"context_line":"        \"\"\"Mark the load balancer as active in DB.\"\"\""},{"line_number":595,"context_line":""},{"line_number":596,"context_line":"        LOG.info(_LI(\"Update sever group id info in DB for load balancer id: \""}],"source_content_type":"text/x-python","patch_set":2,"id":"9a68dd71_24f922c9","line":593,"range":{"start_line":593,"start_character":22,"end_line":593,"end_character":34},"in_reply_to":"9a68dd71_c91cdf79","updated":"2016-01-27 00:43:21.000000000","message":"yes, this is a good point.","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":621,"context_line":"    \"\"\"Update the sever group id info for load balancer in DB.\"\"\""},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"    def execute(self, loadbalancer_id, server_group_id):"},{"line_number":624,"context_line":"        LOG.info(_LI(\"Update sever group id info in DB for load balancer id: \""},{"line_number":625,"context_line":"                     \"%s\"), loadbalancer_id)"},{"line_number":626,"context_line":"        self.loadbalancer_repo.update(db_apis.get_session(),"},{"line_number":627,"context_line":"                                      id\u003dloadbalancer_id,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_401e16bc","line":624,"updated":"2016-01-30 01:17:36.000000000","message":"debug log level, maybe include the server_group_id too","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":621,"context_line":"    \"\"\"Update the sever group id info for load balancer in DB.\"\"\""},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"    def execute(self, loadbalancer_id, server_group_id):"},{"line_number":624,"context_line":"        LOG.info(_LI(\"Update sever group id info in DB for load balancer id: \""},{"line_number":625,"context_line":"                     \"%s\"), loadbalancer_id)"},{"line_number":626,"context_line":"        self.loadbalancer_repo.update(db_apis.get_session(),"},{"line_number":627,"context_line":"                                      id\u003dloadbalancer_id,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_68697bf8","line":624,"in_reply_to":"7a5de9d1_401e16bc","updated":"2016-02-01 18:33:18.000000000","message":"will do.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"61e4ae7269c5d58cf0457343d95f9cbf412e131a","unresolved":false,"context_lines":[{"line_number":648,"context_line":"                                      server_group_id\u003dserver_group_id)"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def revert(self, loadbalancer_id, *args, **kwargs):"},{"line_number":651,"context_line":"        LOG.info(_LI(\"Reverting sever group id update in DB for load \""},{"line_number":652,"context_line":"                     \"balancer id: %s\"), loadbalancer_id)"},{"line_number":653,"context_line":"        self.loadbalancer_repo.update(db_apis.get_session(),"},{"line_number":654,"context_line":"                                      id\u003dloadbalancer_id,"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_95941d37","line":651,"updated":"2016-02-18 21:10:30.000000000","message":"I think this should be warning or error.  It would also be nice to include the server_group_id in the log.","commit_id":"ff6bf11a679c421997baacf1336947c15ca3b04d"},{"author":{"_account_id":12999,"name":"James Arendt","email":"james.arendt@hpe.com","username":"jwarendt"},"change_message_id":"4e1859c7d0fe7d942f2a459f553571a22bdc653b","unresolved":false,"context_lines":[{"line_number":638,"context_line":""},{"line_number":639,"context_line":""},{"line_number":640,"context_line":"class UpdateLBServerGroupInDB(BaseDatabaseTask):"},{"line_number":641,"context_line":"    \"\"\"Update the sever group id info for load balancer in DB.\"\"\""},{"line_number":642,"context_line":""},{"line_number":643,"context_line":"    def execute(self, loadbalancer_id, server_group_id):"},{"line_number":644,"context_line":"        LOG.debug(\"Server Group updated with id: %s for load balancer id: %s:\","}],"source_content_type":"text/x-python","patch_set":23,"id":"bae84128_8b446e1b","line":641,"updated":"2016-02-23 00:28:47.000000000","message":"Nit: \"server\" not sever","commit_id":"f275c51a1e7592b47b5e105f0418533bae7847c7"}],"octavia/db/migration/alembic.ini":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"b2388cfda13027f6c25d8dfeba05b893d1865a4a","unresolved":false,"context_lines":[{"line_number":20,"context_line":"# versions/ directory"},{"line_number":21,"context_line":"# sourceless \u003d false"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"sqlalchemy.url \u003d mysql+pymysql://root:password@127.0.0.1:3306/octavia"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"# Logging configuration"}],"source_content_type":"text/x-properties","patch_set":2,"id":"9a68dd71_64087a29","line":23,"updated":"2016-01-27 00:33:44.000000000","message":"Please don\u0027t change this","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"600c6033d420d64fd5df52a4f641395630475997","unresolved":false,"context_lines":[{"line_number":20,"context_line":"# versions/ directory"},{"line_number":21,"context_line":"# sourceless \u003d false"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"sqlalchemy.url \u003d mysql+pymysql://root:password@127.0.0.1:3306/octavia"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"# Logging configuration"}],"source_content_type":"text/x-properties","patch_set":2,"id":"9a68dd71_c44e0696","line":23,"in_reply_to":"9a68dd71_64087a29","updated":"2016-01-27 01:00:49.000000000","message":"seems like the system changed it automatically. will change it back in the next patch.","commit_id":"423aca514015ff8f21854b7a10b588de13456458"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a35b48d7789efea58ee2944d6225f23f534ba8a5","unresolved":false,"context_lines":[{"line_number":20,"context_line":"# versions/ directory"},{"line_number":21,"context_line":"# sourceless \u003d false"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"sqlalchemy.url \u003d mysql+pymysql://root:password@127.0.0.1:3306/octavia"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"# Logging configuration"}],"source_content_type":"text/x-properties","patch_set":4,"id":"7a5de9d1_c8d7c421","line":23,"updated":"2016-01-29 01:26:44.000000000","message":"need to change back this file back, will update in the next patch.","commit_id":"c28df111ac7d524dca5c094eb9c60e108c6b6663"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":20,"context_line":"# versions/ directory"},{"line_number":21,"context_line":"# sourceless \u003d false"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"sqlalchemy.url \u003d mysql+pymysql://root:password@localhost:3306/octavia"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"# Logging configuration"}],"source_content_type":"text/x-properties","patch_set":5,"id":"7a5de9d1_c080c6c1","line":23,"updated":"2016-01-30 01:17:36.000000000","message":"Please remove this file from the patchset.\nIt should not be changed.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":20,"context_line":"# versions/ directory"},{"line_number":21,"context_line":"# sourceless \u003d false"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"sqlalchemy.url \u003d mysql+pymysql://root:password@localhost:3306/octavia"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"# Logging configuration"}],"source_content_type":"text/x-properties","patch_set":5,"id":"7a5de9d1_8880778c","line":23,"in_reply_to":"7a5de9d1_c080c6c1","updated":"2016-02-01 18:33:18.000000000","message":"somehow this one always changed automatically, but will change it back.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"}],"octavia/db/migration/alembic_migrations/versions/186509101b9b_add_server_group_id_to_loadbalancer.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2015 Hewlett-Packard Development Company, L.P."},{"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"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e085c2ce","line":1,"updated":"2016-01-30 01:17:36.000000000","message":"You need the updated copyright here.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2015 Hewlett-Packard Development Company, L.P."},{"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"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_0843276d","line":1,"in_reply_to":"7a5de9d1_e085c2ce","updated":"2016-02-01 18:33:18.000000000","message":"will correct it.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"e2095e052811be720be65c99210937a1af445b66","unresolved":false,"context_lines":[{"line_number":16,"context_line":"\"\"\"add_server_group_id_to_loadbalancer"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Revision ID: 186509101b9b"},{"line_number":19,"context_line":"Revises: 29ff921a6eb"},{"line_number":20,"context_line":"Create Date: 2016-01-25 15:12:52.489652"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"\"\"\""}],"source_content_type":"text/x-python","patch_set":25,"id":"bae84128_d951a2da","line":19,"range":{"start_line":19,"start_character":9,"end_line":19,"end_character":20},"updated":"2016-02-25 01:29:40.000000000","message":"Nit: This should be the same as down_revision variable below.","commit_id":"07a608f68152fcd843298ac3e529101d9d20cb0b"}],"octavia/tests/unit/compute/drivers/test_compute_noop_driver.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        self.user_data \u003d \"user_data\""},{"line_number":38,"context_line":"        self.amphora_id \u003d self.FAKE_UUID_1"},{"line_number":39,"context_line":"        self.loadbalancer_id \u003d self.FAKE_UUID_1"},{"line_number":40,"context_line":"        self.server_group_policy \u003d \u0027anti-affinity\u0027"},{"line_number":41,"context_line":"        self.server_group_id \u003d self.FAKE_UUID_1"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def build(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_c0576658","line":40,"updated":"2016-01-30 01:17:36.000000000","message":"Should use the same constants file","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        self.user_data \u003d \"user_data\""},{"line_number":38,"context_line":"        self.amphora_id \u003d self.FAKE_UUID_1"},{"line_number":39,"context_line":"        self.loadbalancer_id \u003d self.FAKE_UUID_1"},{"line_number":40,"context_line":"        self.server_group_policy \u003d \u0027anti-affinity\u0027"},{"line_number":41,"context_line":"        self.server_group_id \u003d self.FAKE_UUID_1"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def build(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_eb11e552","line":40,"in_reply_to":"7a5de9d1_c0576658","updated":"2016-02-01 18:33:18.000000000","message":"in test, should we use a constant file, if that is the case, on line 38, they can use constant file too, but instead they use fake uuid. so I follow the same trend here.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"}],"octavia/tests/unit/compute/drivers/test_nova_driver.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"49b6e7367e4405bd1dec68d4b33b5eb2024c1d7e","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        self.nova_network.label \u003d net_name"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        self.loadbalancer_id \u003d uuidutils.generate_uuid()"},{"line_number":52,"context_line":"        self.server_group_policy \u003d \u0027anti-affinity\u0027"},{"line_number":53,"context_line":"        self.server_group_id \u003d uuidutils.generate_uuid()"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        self.manager \u003d nova_common.VirtualMachineManager()"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_e05ce27e","line":52,"updated":"2016-01-30 01:17:36.000000000","message":"Constants file","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"a9758d0c942d6d04161c242d898c4ff8a81ddc31","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        self.nova_network.label \u003d net_name"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"        self.loadbalancer_id \u003d uuidutils.generate_uuid()"},{"line_number":52,"context_line":"        self.server_group_policy \u003d \u0027anti-affinity\u0027"},{"line_number":53,"context_line":"        self.server_group_id \u003d uuidutils.generate_uuid()"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"        self.manager \u003d nova_common.VirtualMachineManager()"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a5de9d1_6b2c1599","line":52,"in_reply_to":"7a5de9d1_e05ce27e","updated":"2016-02-01 18:33:18.000000000","message":"same as the previous comment.","commit_id":"23c9afbe3aa3ce79625c367c52f9e20c6235b040"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        self.manager._nova_client.networks.get.called_with(self.net_name)"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"    def test_create_server_group(self):"},{"line_number":156,"context_line":"        name \u003d \u0027octavia-lb-\u0027 + self.loadbalancer_id"},{"line_number":157,"context_line":"        kwargs \u003d {\u0027name\u0027: name,"},{"line_number":158,"context_line":"                  \u0027policies\u0027: [self.server_group_policy]}"},{"line_number":159,"context_line":"        sg \u003d self.manager.create_server_group(name, self.server_group_policy)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.assertEqual(sg, self.manager.server_groups.create.return_value)"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_f214b44d","line":158,"range":{"start_line":156,"start_character":8,"end_line":158,"end_character":57},"updated":"2016-02-12 10:45:42.000000000","message":"I would define in Setup method, like server_group_id, so you can reuse in the below method.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        self.manager._nova_client.networks.get.called_with(self.net_name)"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"    def test_create_server_group(self):"},{"line_number":156,"context_line":"        name \u003d \u0027octavia-lb-\u0027 + self.loadbalancer_id"},{"line_number":157,"context_line":"        kwargs \u003d {\u0027name\u0027: name,"},{"line_number":158,"context_line":"                  \u0027policies\u0027: [self.server_group_policy]}"},{"line_number":159,"context_line":"        sg \u003d self.manager.create_server_group(name, self.server_group_policy)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.assertEqual(sg, self.manager.server_groups.create.return_value)"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_1b287685","line":158,"range":{"start_line":156,"start_character":8,"end_line":158,"end_character":57},"in_reply_to":"3a57f1b5_f214b44d","updated":"2016-02-12 17:00:52.000000000","message":"can try that.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":158,"context_line":"                  \u0027policies\u0027: [self.server_group_policy]}"},{"line_number":159,"context_line":"        sg \u003d self.manager.create_server_group(name, self.server_group_policy)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.assertEqual(sg, self.manager.server_groups.create.return_value)"},{"line_number":162,"context_line":"        self.manager.server_groups.create.called_with(**kwargs)"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    def test_bad_create_server_group(self):"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_d2e5f8a3","line":161,"range":{"start_line":161,"start_character":8,"end_line":161,"end_character":76},"updated":"2016-02-12 10:45:42.000000000","message":"This is comparing a mock object to a mock object.. Rather set the return_value to some fake_uuid in setup() above and check assertEqual on that.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":158,"context_line":"                  \u0027policies\u0027: [self.server_group_policy]}"},{"line_number":159,"context_line":"        sg \u003d self.manager.create_server_group(name, self.server_group_policy)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"        self.assertEqual(sg, self.manager.server_groups.create.return_value)"},{"line_number":162,"context_line":"        self.manager.server_groups.create.called_with(**kwargs)"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"    def test_bad_create_server_group(self):"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_3b5452fd","line":161,"range":{"start_line":161,"start_character":8,"end_line":161,"end_character":76},"in_reply_to":"3a57f1b5_d2e5f8a3","updated":"2016-02-12 17:00:52.000000000","message":"can give a try.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        self.assertRaises(exceptions.ServerGroupObjectCreateException,"},{"line_number":168,"context_line":"                          self.manager.create_server_group,"},{"line_number":169,"context_line":"                          name, self.server_group_policy)"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"    def test_delete_server_group(self):"},{"line_number":172,"context_line":"        self.manager.delete_server_group(self.server_group_id)"},{"line_number":173,"context_line":"        self.manager.server_groups.delete.called_with(self.server_group_id)"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_722a0492","line":170,"updated":"2016-02-12 10:45:42.000000000","message":"You can also add,\nself.manager.server_groups.create.called_with(**kwargs)","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":167,"context_line":"        self.assertRaises(exceptions.ServerGroupObjectCreateException,"},{"line_number":168,"context_line":"                          self.manager.create_server_group,"},{"line_number":169,"context_line":"                          name, self.server_group_policy)"},{"line_number":170,"context_line":""},{"line_number":171,"context_line":"    def test_delete_server_group(self):"},{"line_number":172,"context_line":"        self.manager.delete_server_group(self.server_group_id)"},{"line_number":173,"context_line":"        self.manager.server_groups.delete.called_with(self.server_group_id)"}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_7b2f2a88","line":170,"in_reply_to":"3a57f1b5_722a0492","updated":"2016-02-12 17:00:52.000000000","message":"good idea.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"}],"octavia/tests/unit/controller/worker/flows/test_amphora_flows.py":[{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def test_get_cert_ssh_anti_affinity_create_amphora_for_lb_flow("},{"line_number":88,"context_line":"            self):"},{"line_number":89,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_ssh_driver\u0027,"},{"line_number":90,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":91,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, True,"},{"line_number":92,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_2d899175","line":90,"range":{"start_line":89,"start_character":8,"end_line":90,"end_character":56},"updated":"2016-02-12 10:45:42.000000000","message":"Isnt this redundant as it\u0027s already overridden under setup() ?","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def test_get_cert_ssh_anti_affinity_create_amphora_for_lb_flow("},{"line_number":88,"context_line":"            self):"},{"line_number":89,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_ssh_driver\u0027,"},{"line_number":90,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":91,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, True,"},{"line_number":92,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_dba2defb","line":90,"range":{"start_line":89,"start_character":8,"end_line":90,"end_character":56},"in_reply_to":"3a57f1b5_2d899175","updated":"2016-02-12 17:00:52.000000000","message":"this we need to make sure it is using ssh driver, check the test case above, using the similar style.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"f630496c3ec74ae74425ab6e8d31537aa4f3287e","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    def test_get_cert_ssh_anti_affinity_create_amphora_for_lb_flow("},{"line_number":88,"context_line":"            self):"},{"line_number":89,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_ssh_driver\u0027,"},{"line_number":90,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":91,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, True,"},{"line_number":92,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":93,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_b67b7727","line":90,"range":{"start_line":89,"start_character":8,"end_line":90,"end_character":56},"in_reply_to":"3a57f1b5_dba2defb","updated":"2016-02-12 17:22:45.000000000","message":"I may be wrong here but I thought each testcase runs standalone thus defaulting the vars according to setup() method.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":15226,"name":"Bharath M","email":"bharath.stacker@gmail.com","username":"bharath"},"change_message_id":"b94736c89ac52c8634ff3fbcbe7952e65bb18e22","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def test_get_cert_backup_ssh_anti_affinity_create_amphora_for_lb_flow("},{"line_number":108,"context_line":"            self):"},{"line_number":109,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_ssh_driver\u0027,"},{"line_number":110,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":111,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, True,"},{"line_number":112,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_8d98c5c1","line":110,"range":{"start_line":109,"start_character":8,"end_line":110,"end_character":56},"updated":"2016-02-12 10:45:42.000000000","message":"Same as above.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":10477,"name":"min wang","email":"swiftwangster@gmail.com","username":"minwang"},"change_message_id":"ce76638589c0cac8a0f3f16bc89e958990be7e92","unresolved":false,"context_lines":[{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def test_get_cert_backup_ssh_anti_affinity_create_amphora_for_lb_flow("},{"line_number":108,"context_line":"            self):"},{"line_number":109,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_ssh_driver\u0027,"},{"line_number":110,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":111,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, True,"},{"line_number":112,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":113,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"3a57f1b5_dbc73e96","line":110,"range":{"start_line":109,"start_character":8,"end_line":110,"end_character":56},"in_reply_to":"3a57f1b5_8d98c5c1","updated":"2016-02-12 17:00:52.000000000","message":"same here.","commit_id":"a54f7e0b8c72618cdddd41395ef4e2f8f65711b3"},{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        cfg.CONF.set_override(\u0027amphora_driver\u0027, \u0027amphora_haproxy_rest_driver\u0027,"},{"line_number":32,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":33,"context_line":"        cfg.CONF.set_override(\u0027enable_nova_anti_affinity\u0027, False,"},{"line_number":34,"context_line":"                              group\u003d\u0027controller_worker\u0027)"},{"line_number":35,"context_line":"        self.AmpFlow \u003d amphora_flows.AmphoraFlows()"},{"line_number":36,"context_line":"        conf \u003d oslo_fixture.Config(cfg.CONF)"},{"line_number":37,"context_line":"        conf.config(group\u003d\"keystone_authtoken\", auth_version\u003dAUTH_VERSION)"}],"source_content_type":"text/x-python","patch_set":22,"id":"bae84128_920d0441","line":34,"range":{"start_line":34,"start_character":37,"end_line":34,"end_character":54},"updated":"2016-02-21 01:06:14.000000000","message":"Shouldn\u0027t we put this in the config section specifically for the nova driver? (And probably call it \u0027enable_anti_affinity\u0027 since putting \u0027nova\u0027 in the name would be redundant at that point?)","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"}],"octavia/tests/unit/controller/worker/flows/test_load_balancer_flows.py":[{"author":{"_account_id":11685,"name":"Stephen Balukoff","email":"stephen@balukoff.com","username":"sbalukoff"},"change_message_id":"445d0a0ab4bd2c5b6e1e682e44f5b3ce417539b9","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def setUp(self):"},{"line_number":28,"context_line":"        self.LBFlow \u003d load_balancer_flows.LoadBalancerFlows()"},{"line_number":29,"context_line":"        conf \u003d oslo_fixture.Config(cfg.CONF)"},{"line_number":30,"context_line":"        conf.config(group\u003d\"controller_worker\", enable_nova_anti_affinity\u003dFalse)"},{"line_number":31,"context_line":"        super(TestLoadBalancerFlows, self).setUp()"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    def test_get_create_load_balancer_flow(self):"}],"source_content_type":"text/x-python","patch_set":22,"id":"bae84128_4d0ac122","line":30,"range":{"start_line":30,"start_character":27,"end_line":30,"end_character":44},"updated":"2016-02-21 01:06:14.000000000","message":"Same concern about the config group for this.","commit_id":"9c1e2ee97c8af7a841ccde1e7f687e928f23defd"}]}
