)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"ad2b184858ca1d99b96464570f5549cbac7f591b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"0e73f83d_5d3faa6b","updated":"2025-05-29 05:28:59.000000000","message":"check-rdo","commit_id":"b8500d7de8137f57fb60d65a3f72dba430ae856a"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"638ce87d92791cdf10b2798cb6effe63a22a9cea","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"61f9a71e_d0a50921","updated":"2025-05-22 11:33:49.000000000","message":"recheck","commit_id":"b8500d7de8137f57fb60d65a3f72dba430ae856a"},{"author":{"_account_id":28647,"name":"David","display_name":"morenod","email":"dsanzmor@redhat.com","username":"morenod"},"change_message_id":"a78ae4f95da0d0de7a77f807f88733be2f21c598","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"26ab319a_29d96d1b","updated":"2025-06-04 10:20:10.000000000","message":"lgtm","commit_id":"9dea1b81d2a9cd030c12e1adffe53c4c8f3946e1"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"c1619ab0db0f578765b558d6a84d48469348b0c8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"6afc6d80_c479a9f8","updated":"2025-05-30 18:17:59.000000000","message":"lgtm","commit_id":"9dea1b81d2a9cd030c12e1adffe53c4c8f3946e1"}],"watcher_tempest_plugin/tests/scenario/base.py":[{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"c1619ab0db0f578765b558d6a84d48469348b0c8","unresolved":true,"context_lines":[{"line_number":138,"context_line":"            if CONF.compute.target_hosts_to_avoid in svc[\u0027host\u0027]:"},{"line_number":139,"context_line":"                continue"},{"line_number":140,"context_line":"            if svc[\u0027state\u0027] \u003d\u003d \u0027up\u0027 and svc[\u0027status\u0027] \u003d\u003d \u0027enabled\u0027:"},{"line_number":141,"context_line":"                if CONF.compute.compute_volume_common_az:"},{"line_number":142,"context_line":"                    if svc[\u0027zone\u0027] \u003d\u003d CONF.compute.compute_volume_common_az:"},{"line_number":143,"context_line":"                        hosts.append(svc[\u0027host\u0027])"},{"line_number":144,"context_line":"                else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3336b0cd_26307695","line":141,"range":{"start_line":141,"start_character":32,"end_line":141,"end_character":56},"updated":"2025-05-30 18:17:59.000000000","message":"interesting, first time that I see this option from tempest","commit_id":"9dea1b81d2a9cd030c12e1adffe53c4c8f3946e1"}],"watcher_tempest_plugin/tests/scenario/test_execute_host_maintenance.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a25615161b5fabf79264f3b2945be322c467466e","unresolved":true,"context_lines":[{"line_number":67,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":68,"context_line":"            inject\u003dINJECT_METRICS"},{"line_number":69,"context_line":"        )"},{"line_number":70,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":71,"context_line":"        audit_parameters \u003d {\"maintenance_node\": hostname}"},{"line_number":72,"context_line":"        # wait for compute model updates"},{"line_number":73,"context_line":"        self.wait_for_instances_in_model(instances)"}],"source_content_type":"text/x-python","patch_set":3,"id":"b3a14296_338ef597","line":70,"range":{"start_line":70,"start_character":8,"end_line":70,"end_character":16},"updated":"2025-05-16 11:43:05.000000000","message":"nit: we should avoid the term hostname for clarity","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a9bec6096ed88d131df89b25f78aa0a0e21686f0","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":68,"context_line":"            inject\u003dINJECT_METRICS"},{"line_number":69,"context_line":"        )"},{"line_number":70,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":71,"context_line":"        audit_parameters \u003d {\"maintenance_node\": hostname}"},{"line_number":72,"context_line":"        # wait for compute model updates"},{"line_number":73,"context_line":"        self.wait_for_instances_in_model(instances)"}],"source_content_type":"text/x-python","patch_set":3,"id":"d6de5906_dbdd9f8b","line":70,"range":{"start_line":70,"start_character":8,"end_line":70,"end_character":16},"in_reply_to":"b3a14296_338ef597","updated":"2025-06-04 12:45:32.000000000","message":"Done","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"}],"watcher_tempest_plugin/tests/scenario/test_execute_strategies.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a25615161b5fabf79264f3b2945be322c467466e","unresolved":true,"context_lines":[{"line_number":93,"context_line":"        self.addCleanup(self.wait_delete_instances_from_model)"},{"line_number":94,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":95,"context_line":"            inject\u003dINJECT_METRICS)"},{"line_number":96,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":97,"context_line":"        # wait for compute model updates"},{"line_number":98,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"4df61891_482c3260","line":96,"updated":"2025-05-16 11:43:05.000000000","message":"same here","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a9bec6096ed88d131df89b25f78aa0a0e21686f0","unresolved":false,"context_lines":[{"line_number":93,"context_line":"        self.addCleanup(self.wait_delete_instances_from_model)"},{"line_number":94,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":95,"context_line":"            inject\u003dINJECT_METRICS)"},{"line_number":96,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":97,"context_line":"        # wait for compute model updates"},{"line_number":98,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":99,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"f0259dc8_f12de693","line":96,"in_reply_to":"4df61891_482c3260","updated":"2025-06-04 12:45:32.000000000","message":"Done","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a25615161b5fabf79264f3b2945be322c467466e","unresolved":true,"context_lines":[{"line_number":116,"context_line":"        self.addCleanup(self.wait_delete_instances_from_model)"},{"line_number":117,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":118,"context_line":"            inject\u003dINJECT_METRICS)"},{"line_number":119,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":120,"context_line":"        # wait for compute model updates"},{"line_number":121,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":122,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"4394fd65_9d25ccb9","line":119,"updated":"2025-05-16 11:43:05.000000000","message":"and here","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a9bec6096ed88d131df89b25f78aa0a0e21686f0","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        self.addCleanup(self.wait_delete_instances_from_model)"},{"line_number":117,"context_line":"        instances \u003d self._create_one_instance_per_host_with_statistic("},{"line_number":118,"context_line":"            inject\u003dINJECT_METRICS)"},{"line_number":119,"context_line":"        hostname \u003d self.get_host_for_server(instances[0][\u0027id\u0027])"},{"line_number":120,"context_line":"        # wait for compute model updates"},{"line_number":121,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":122,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"fb15759e_650f8c29","line":119,"in_reply_to":"4394fd65_9d25ccb9","updated":"2025-06-04 12:45:32.000000000","message":"Done","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a25615161b5fabf79264f3b2945be322c467466e","unresolved":true,"context_lines":[{"line_number":227,"context_line":"        # wait for compute model updates"},{"line_number":228,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":231,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":232,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":233,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        audit_parameters \u003d {"},{"line_number":236,"context_line":"            \"compute_nodes\": [{\"src_node\": node, \"dst_node\": vacant_node}],"}],"source_content_type":"text/x-python","patch_set":3,"id":"c2fe814f_b2cfcfad","line":233,"range":{"start_line":230,"start_character":8,"end_line":233,"end_character":65},"updated":"2025-05-16 11:43:05.000000000","message":"this logic is also questionable\nor at least confusing but perhaps we should address that seperatly","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"c5058d061af05bb98c2f6861fbcc79f0cd0b75d5","unresolved":true,"context_lines":[{"line_number":227,"context_line":"        # wait for compute model updates"},{"line_number":228,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":231,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":232,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":233,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        audit_parameters \u003d {"},{"line_number":236,"context_line":"            \"compute_nodes\": [{\"src_node\": node, \"dst_node\": vacant_node}],"}],"source_content_type":"text/x-python","patch_set":3,"id":"ff6b3144_893a71fa","line":233,"range":{"start_line":230,"start_character":8,"end_line":233,"end_character":65},"in_reply_to":"c2fe814f_b2cfcfad","updated":"2025-05-16 12:22:12.000000000","message":"I am thinking to replace this piece of code with something like this https://github.com/openstack/tempest/blob/7cb807a324c9f2bac47030c590ed488229bc113b/tempest/api/compute/base.py#L716 \n```\ndef get_host_other_than(self, server_id):\n        source_host \u003d self.get_host_for_server(server_id)\n\n        svcs \u003d self.os_admin.services_client.list_services(\n            binary\u003d\u0027nova-compute\u0027)[\u0027services\u0027]\n        hosts \u003d []\n        for svc in svcs:\n            if CONF.compute.target_hosts_to_avoid in svc[\u0027host\u0027]:\n                continue\n            if svc[\u0027state\u0027] \u003d\u003d \u0027up\u0027 and svc[\u0027status\u0027] \u003d\u003d \u0027enabled\u0027:\n                if CONF.compute.compute_volume_common_az:\n                    if svc[\u0027zone\u0027] \u003d\u003d CONF.compute.compute_volume_common_az:\n                        hosts.append(svc[\u0027host\u0027])\n                else:\n                    hosts.append(svc[\u0027host\u0027])\n\n        for target_host in hosts:\n            if source_host !\u003d target_host:\n                return target_host\n```\nAdd this method in watcher_tempest_plugin.tests.scenario. base\nWhat do you think?","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"ad2b184858ca1d99b96464570f5549cbac7f591b","unresolved":false,"context_lines":[{"line_number":227,"context_line":"        # wait for compute model updates"},{"line_number":228,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":231,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":232,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":233,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        audit_parameters \u003d {"},{"line_number":236,"context_line":"            \"compute_nodes\": [{\"src_node\": node, \"dst_node\": vacant_node}],"}],"source_content_type":"text/x-python","patch_set":3,"id":"eb3cdf54_70eab3f0","line":233,"range":{"start_line":230,"start_character":8,"end_line":233,"end_character":65},"in_reply_to":"c8822197_e7b6af19","updated":"2025-05-29 05:28:59.000000000","message":"Done","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"581f1702bf11c1ccd1eafdf3c6f4af007dcdc3ca","unresolved":true,"context_lines":[{"line_number":227,"context_line":"        # wait for compute model updates"},{"line_number":228,"context_line":"        self.wait_for_instances_in_model(instances)"},{"line_number":229,"context_line":""},{"line_number":230,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":231,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":232,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":233,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"        audit_parameters \u003d {"},{"line_number":236,"context_line":"            \"compute_nodes\": [{\"src_node\": node, \"dst_node\": vacant_node}],"}],"source_content_type":"text/x-python","patch_set":3,"id":"c8822197_e7b6af19","line":233,"range":{"start_line":230,"start_character":8,"end_line":233,"end_character":65},"in_reply_to":"ff6b3144_893a71fa","updated":"2025-05-16 16:37:24.000000000","message":"I\u0027m not against putting everything in this patch, while it is a XS change... but up to you","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"}],"watcher_tempest_plugin/tests/scenario/test_execute_zone_migration.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a25615161b5fabf79264f3b2945be322c467466e","unresolved":true,"context_lines":[{"line_number":69,"context_line":"        # Wait for the instance to be added in compute model"},{"line_number":70,"context_line":"        self.wait_for_instances_in_model([instance])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":73,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":74,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":75,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"}],"source_content_type":"text/x-python","patch_set":3,"id":"423184ee_f5601dcb","line":72,"updated":"2025-05-16 11:43:05.000000000","message":"same here.","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"ad2b184858ca1d99b96464570f5549cbac7f591b","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        # Wait for the instance to be added in compute model"},{"line_number":70,"context_line":"        self.wait_for_instances_in_model([instance])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        vacant_node \u003d [hyp[\u0027hypervisor_hostname\u0027] for hyp"},{"line_number":73,"context_line":"                       in self.get_hypervisors_setup()"},{"line_number":74,"context_line":"                       if hyp[\u0027state\u0027] \u003d\u003d \u0027up\u0027"},{"line_number":75,"context_line":"                       and hyp[\u0027hypervisor_hostname\u0027] !\u003d node][0]"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a1a7073_8f81db6b","line":72,"in_reply_to":"423184ee_f5601dcb","updated":"2025-05-29 05:28:59.000000000","message":"Done","commit_id":"f763a201047777c9255c27fc8484d5fc1f16909f"}]}
