)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"d3584bd90281731bbf867b43d9c6811a861f0a52","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Rocky \u003cshi.yan@unimelb.edu.au\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-06-15 22:58:24 +1000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Support to specify the target host for tempest cold/live migration tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I7dc06929ac2f3f22883435624752b7bbabf1dc82"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9fb8cfa7_c73c7e32","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":72},"updated":"2019-06-17 01:50:11.000000000","message":"Would you please add details for why we need to specify the target host in migrating?","commit_id":"624fa4870bd6c797ec1a5c21ab933a77be574e48"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"2b13faf573760dadb607465f60b299511206f680","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The dest_host could be left blank and once it is used, the src host"},{"line_number":16,"context_line":"([compute]/availability_zone \u003d AZ:SRC-HOST) should also be specified in"},{"line_number":17,"context_line":"tempest configuration in order to aviod the src and dest"},{"line_number":18,"context_line":"to be the same, which could fail some test cases."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Change-Id: I7dc06929ac2f3f22883435624752b7bbabf1dc82"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9fb8cfa7_db7453d3","line":17,"updated":"2019-06-17 07:15:12.000000000","message":"very nit: s/aviod/avoid","commit_id":"240310f31bb2860befc65dd2df5b66da85aa80c0"}],"tempest/api/compute/admin/test_live_migration.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"916ef37b766d352bea42f45df4c1744584b32461","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        server_id \u003d self.create_test_server(wait_until\u003d\"ACTIVE\","},{"line_number":108,"context_line":"                                            volume_backed\u003dvolume_backed)[\u0027id\u0027]"},{"line_number":109,"context_line":"        source_host \u003d self.get_host_for_server(server_id)"},{"line_number":110,"context_line":"        destination_host \u003d CONF.compute.target_host or \\"},{"line_number":111,"context_line":"            self.get_host_other_than(server_id)"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"        if state \u003d\u003d \u0027PAUSED\u0027:"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_58fff233","line":110,"range":{"start_line":110,"start_character":8,"end_line":110,"end_character":51},"updated":"2019-06-18 07:51:14.000000000","message":"Sorry I\u0027m still confused about what if the server is created on CONF.compute.target_host initially? In this case migrating to same host may fail.","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"},{"author":{"_account_id":26721,"name":"Rocky","display_name":"Shi Yan","email":"yanshi.403@gmail.com","username":"Rocky"},"change_message_id":"6e8e401ad8d4c6dbdacf58c5c79ce85cf0875f0f","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        server_id \u003d self.create_test_server(wait_until\u003d\"ACTIVE\","},{"line_number":108,"context_line":"                                            volume_backed\u003dvolume_backed)[\u0027id\u0027]"},{"line_number":109,"context_line":"        source_host \u003d self.get_host_for_server(server_id)"},{"line_number":110,"context_line":"        destination_host \u003d CONF.compute.target_host or \\"},{"line_number":111,"context_line":"            self.get_host_other_than(server_id)"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"        if state \u003d\u003d \u0027PAUSED\u0027:"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_47794f2d","line":110,"range":{"start_line":110,"start_character":8,"end_line":110,"end_character":51},"in_reply_to":"9fb8cfa7_58fff233","updated":"2019-06-18 11:56:14.000000000","message":"The idea is if the operator only wants to test migration and he is fine with the schedule selecting the candidate src or target host.  They can just ignore this config option.\n\nBut if the operator wants to test specific migration path, when he specifies the target_host, it is making sense that he also specify the source_host which could be implemented by setting [compute]/availability_zone:host. That means the operator who configures the tempest will ensure they don\u0027t misconfigure the same host.","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"}],"tempest/api/compute/admin/test_migrations.py":[{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"d3584bd90281731bbf867b43d9c6811a861f0a52","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":117,"context_line":"        src_host \u003d self.get_host_for_server(server[\u0027id\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        dest_host \u003d CONF.compute.dest_host"},{"line_number":120,"context_line":"        self.admin_servers_client.migrate_server(server[\u0027id\u0027], host\u003ddest_host)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        waiters.wait_for_server_status(self.servers_client,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_874686c0","line":119,"range":{"start_line":119,"start_character":8,"end_line":119,"end_character":42},"updated":"2019-06-17 01:50:11.000000000","message":"How to assure the server won\u0027t be created on dest_host initially?\nIf the server is created on dest_host, and allow_resize_to_same_host in nova.conf is False the testcase will fail","commit_id":"624fa4870bd6c797ec1a5c21ab933a77be574e48"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"2b13faf573760dadb607465f60b299511206f680","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        server \u003d self.create_test_server(wait_until\u003d\"ACTIVE\")"},{"line_number":117,"context_line":"        src_host \u003d self.get_host_for_server(server[\u0027id\u0027])"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        dest_host \u003d CONF.compute.dest_host"},{"line_number":120,"context_line":"        self.admin_servers_client.migrate_server(server[\u0027id\u0027], host\u003ddest_host)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        waiters.wait_for_server_status(self.servers_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_fb7117e0","line":119,"updated":"2019-06-17 07:15:12.000000000","message":"How about changing the name to \u0027target_host\u0027 or \u0027target_dest_host\u0027 or something?\nI feel this is a bit tricky naming. Looking at 137, it\u0027s hard to understand a difference between \u0027dst_host\u0027 and \u0027dest_host\u0027 from the naming..","commit_id":"240310f31bb2860befc65dd2df5b66da85aa80c0"}],"tempest/config.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"2b13faf573760dadb607465f60b299511206f680","unresolved":false,"context_lines":[{"line_number":331,"context_line":"                     \u0027you are testing with.\u0027)),"},{"line_number":332,"context_line":"    cfg.StrOpt(\u0027dest_host\u0027,"},{"line_number":333,"context_line":"               default\u003dNone,"},{"line_number":334,"context_line":"               help\u003d(\u0027The taget host in migration testing\u0027)),"},{"line_number":335,"context_line":"    cfg.StrOpt(\u0027hypervisor_type\u0027,"},{"line_number":336,"context_line":"               default\u003dNone,"},{"line_number":337,"context_line":"               help\u003d\"Hypervisor type of the test target on heterogeneous \""}],"source_content_type":"text/x-python","patch_set":3,"id":"9fb8cfa7_9b7edbad","line":334,"updated":"2019-06-17 07:15:12.000000000","message":"It would be good to have more help description. For example, what\u0027s happening if the value is None which is default at least.","commit_id":"240310f31bb2860befc65dd2df5b66da85aa80c0"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"df67bcd9eecbbe7aa495b4b216baf0e4116dbd7f","unresolved":false,"context_lines":[{"line_number":334,"context_line":"               help\u003d(\"The taget host used in migration tests. If empty, \""},{"line_number":335,"context_line":"                     \"scheduler will decide which target host to migrate. \""},{"line_number":336,"context_line":"                     \"In order to avoid the case that source and target \""},{"line_number":337,"context_line":"                     \"host are the same one, use config \""},{"line_number":338,"context_line":"                     \"availability_zone:host to specify the source host \""},{"line_number":339,"context_line":"                     \"as well when this option is used\")),"},{"line_number":340,"context_line":"    cfg.StrOpt(\u0027hypervisor_type\u0027,"},{"line_number":341,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_be910d49","line":338,"range":{"start_line":337,"start_character":49,"end_line":338,"end_character":47},"updated":"2019-06-20 02:03:02.000000000","message":"where is this config?","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"},{"author":{"_account_id":20190,"name":"zhufl","email":"zhu.fanglei@zte.com.cn","username":"zhufl"},"change_message_id":"c8db08075c1529bd3ca4818d950dd72643dfdece","unresolved":false,"context_lines":[{"line_number":334,"context_line":"               help\u003d(\"The taget host used in migration tests. If empty, \""},{"line_number":335,"context_line":"                     \"scheduler will decide which target host to migrate. \""},{"line_number":336,"context_line":"                     \"In order to avoid the case that source and target \""},{"line_number":337,"context_line":"                     \"host are the same one, use config \""},{"line_number":338,"context_line":"                     \"availability_zone:host to specify the source host \""},{"line_number":339,"context_line":"                     \"as well when this option is used\")),"},{"line_number":340,"context_line":"    cfg.StrOpt(\u0027hypervisor_type\u0027,"},{"line_number":341,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_493b7dc7","line":338,"range":{"start_line":337,"start_character":49,"end_line":338,"end_character":47},"in_reply_to":"9fb8cfa7_1ed059f7","updated":"2019-06-20 03:02:35.000000000","message":"oh,\n1. in tempest.conf, there seems no compute.availability_zone config item.\n2. if we set az:host for the \"availability_zone\" config item, then admin credential is needed, so testcases that do not have admin credential will fail?","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"ce5963d359f61785009d26b2d774dce68b009d92","unresolved":false,"context_lines":[{"line_number":334,"context_line":"               help\u003d(\"The taget host used in migration tests. If empty, \""},{"line_number":335,"context_line":"                     \"scheduler will decide which target host to migrate. \""},{"line_number":336,"context_line":"                     \"In order to avoid the case that source and target \""},{"line_number":337,"context_line":"                     \"host are the same one, use config \""},{"line_number":338,"context_line":"                     \"availability_zone:host to specify the source host \""},{"line_number":339,"context_line":"                     \"as well when this option is used\")),"},{"line_number":340,"context_line":"    cfg.StrOpt(\u0027hypervisor_type\u0027,"},{"line_number":341,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_ed534a38","line":338,"range":{"start_line":337,"start_character":49,"end_line":338,"end_character":47},"in_reply_to":"9fb8cfa7_493b7dc7","updated":"2019-06-20 22:37:53.000000000","message":"Yeah, zhufl is right here.\nActually the tested server is created with self.create_test_server() call and the test parts which are added with this option are not specifying the source host.\nSo it is not possible to specify safe host here as target_host because the source host is selected by the scheduler then we cannot know that in advance.","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"},{"author":{"_account_id":26721,"name":"Rocky","display_name":"Shi Yan","email":"yanshi.403@gmail.com","username":"Rocky"},"change_message_id":"d34ad3f3402e0dd5cee5d20adfc982ae006576d2","unresolved":false,"context_lines":[{"line_number":334,"context_line":"               help\u003d(\"The taget host used in migration tests. If empty, \""},{"line_number":335,"context_line":"                     \"scheduler will decide which target host to migrate. \""},{"line_number":336,"context_line":"                     \"In order to avoid the case that source and target \""},{"line_number":337,"context_line":"                     \"host are the same one, use config \""},{"line_number":338,"context_line":"                     \"availability_zone:host to specify the source host \""},{"line_number":339,"context_line":"                     \"as well when this option is used\")),"},{"line_number":340,"context_line":"    cfg.StrOpt(\u0027hypervisor_type\u0027,"},{"line_number":341,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9fb8cfa7_1ed059f7","line":338,"range":{"start_line":337,"start_character":49,"end_line":338,"end_character":47},"in_reply_to":"9fb8cfa7_be910d49","updated":"2019-06-20 02:24:50.000000000","message":"ah, sorry, now I see what confused you. In nova \"create server\" api, --availability-zone parameter can be passed with \"az\" name, or \"az:host\" name. In the later case, the force host selection will apply. So in the tempest.conf file, under the section of \"compute\", availability_zone config option could be set as \u003caz\u003e:\u003chost\u003e to forcibly spin up an instance on the specific host.","commit_id":"c089737d9e0303dbd8d3902d68d83498e7ceb479"}]}
