)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":15,"context_line":"there is no need to modify the configuration of Load Balancer."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Because the input parameter of scale is limited, the type of"},{"line_number":18,"context_line":"this parameter is also modified."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"},{"line_number":21,"context_line":"Change-Id: Ib5e009c53dd834624d91ea38c9facba832d65d2b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"d1973931_c56a76df","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":14},"updated":"2021-09-01 08:06:38.000000000","message":"Looks ambiguous statement, could you please mention parameter.","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":15,"context_line":"there is no need to modify the configuration of Load Balancer."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Because the input parameter of scale is limited, the type of"},{"line_number":18,"context_line":"this parameter is also modified."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"},{"line_number":21,"context_line":"Change-Id: Ib5e009c53dd834624d91ea38c9facba832d65d2b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"d5f05128_d0444ae5","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":14},"in_reply_to":"d1973931_c56a76df","updated":"2021-09-09 06:42:41.000000000","message":"I added a detailed description of this parameter in the latest commit message.","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"9fd7490f409ed51fb2cfa42fab600c5f9eb08fa9","unresolved":true,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"090d4879_aa7b30d9","line":20,"range":{"start_line":20,"start_character":12,"end_line":20,"end_character":19},"updated":"2021-09-10 09:45:53.000000000","message":"typo: adapt","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"9fd7490f409ed51fb2cfa42fab600c5f9eb08fa9","unresolved":true,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"e87d7003_e6839c68","line":20,"range":{"start_line":20,"start_character":48,"end_line":20,"end_character":65},"updated":"2021-09-10 09:45:53.000000000","message":"typo: additionalParams","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"eb96f67e_b74d37f8","line":20,"range":{"start_line":20,"start_character":12,"end_line":20,"end_character":19},"in_reply_to":"090d4879_aa7b30d9","updated":"2021-09-17 02:31:06.000000000","message":"I fixed it in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"f4aa51e3_6f9840bb","line":20,"range":{"start_line":20,"start_character":48,"end_line":20,"end_character":65},"in_reply_to":"e87d7003_e6839c68","updated":"2021-09-17 02:31:06.000000000","message":"ditto","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"785136f5c1cadff48cc2ef8bd90388d055698473","unresolved":false,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"3e4f49ca_f7ab4012","line":20,"range":{"start_line":20,"start_character":12,"end_line":20,"end_character":19},"in_reply_to":"eb96f67e_b74d37f8","updated":"2021-09-17 03:09:14.000000000","message":"I\u0027ve confirmed.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"785136f5c1cadff48cc2ef8bd90388d055698473","unresolved":false,"context_lines":[{"line_number":17,"context_line":"The type of input parameter `additionalParams` of"},{"line_number":18,"context_line":"ScaleVnfRequest is `DictOfStringsField`. The type of Kubernetes"},{"line_number":19,"context_line":"cluster parameters used in MgmtDriver is dict, `DictOfStringsField`"},{"line_number":20,"context_line":"type cannot adapte it. So we modify the type of additionalParmas to"},{"line_number":21,"context_line":"`DictOfNullableField`."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Implements: blueprint k8s-mgmtdriver-kubespray"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"73dd5b48_c819d361","line":20,"range":{"start_line":20,"start_character":48,"end_line":20,"end_character":65},"in_reply_to":"f4aa51e3_6f9840bb","updated":"2021-09-17 03:09:14.000000000","message":"I\u0027ve confirmed.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"}],"samples/mgmt_driver/kubespary/kubespary_mgmt.py":[{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":806,"context_line":"            trans.auth_password(username\u003dansible.get(\u0027username\u0027),"},{"line_number":807,"context_line":"                                password\u003dansible.get(\u0027password\u0027))"},{"line_number":808,"context_line":"            channel \u003d trans.open_session()"},{"line_number":809,"context_line":"            channel.settimeout(900)"},{"line_number":810,"context_line":"            channel.get_pty()"},{"line_number":811,"context_line":"            buff \u003d \u0027\u0027"},{"line_number":812,"context_line":"            channel.invoke_shell()"}],"source_content_type":"text/x-python","patch_set":7,"id":"873383b7_ec9718bd","line":809,"range":{"start_line":809,"start_character":31,"end_line":809,"end_character":34},"updated":"2021-09-01 08:06:38.000000000","message":"If possible please use constants instead of hardcode values.","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":806,"context_line":"            trans.auth_password(username\u003dansible.get(\u0027username\u0027),"},{"line_number":807,"context_line":"                                password\u003dansible.get(\u0027password\u0027))"},{"line_number":808,"context_line":"            channel \u003d trans.open_session()"},{"line_number":809,"context_line":"            channel.settimeout(900)"},{"line_number":810,"context_line":"            channel.get_pty()"},{"line_number":811,"context_line":"            buff \u003d \u0027\u0027"},{"line_number":812,"context_line":"            channel.invoke_shell()"}],"source_content_type":"text/x-python","patch_set":7,"id":"c6ece5c2_5e2933cf","line":809,"range":{"start_line":809,"start_character":31,"end_line":809,"end_character":34},"in_reply_to":"873383b7_ec9718bd","updated":"2021-09-09 06:42:41.000000000","message":"I have added constants at the beginning of the file in PS 9.","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":812,"context_line":"            channel.invoke_shell()"},{"line_number":813,"context_line":"            channel.send(ssh_command + \u0027\\n\u0027)"},{"line_number":814,"context_line":"            while True:"},{"line_number":815,"context_line":"                time.sleep(0.2)"},{"line_number":816,"context_line":"                resp \u003d channel.recv(1024)"},{"line_number":817,"context_line":"                resp \u003d resp.decode(\u0027utf-8\u0027)"},{"line_number":818,"context_line":"                buff +\u003d resp"}],"source_content_type":"text/x-python","patch_set":7,"id":"6103283d_d6c13737","line":815,"range":{"start_line":815,"start_character":26,"end_line":815,"end_character":31},"updated":"2021-09-01 08:06:38.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":812,"context_line":"            channel.invoke_shell()"},{"line_number":813,"context_line":"            channel.send(ssh_command + \u0027\\n\u0027)"},{"line_number":814,"context_line":"            while True:"},{"line_number":815,"context_line":"                time.sleep(0.2)"},{"line_number":816,"context_line":"                resp \u003d channel.recv(1024)"},{"line_number":817,"context_line":"                resp \u003d resp.decode(\u0027utf-8\u0027)"},{"line_number":818,"context_line":"                buff +\u003d resp"}],"source_content_type":"text/x-python","patch_set":7,"id":"18f74c9c_93257701","line":815,"range":{"start_line":815,"start_character":26,"end_line":815,"end_character":31},"in_reply_to":"6103283d_d6c13737","updated":"2021-09-09 06:42:41.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":818,"context_line":"                buff +\u003d resp"},{"line_number":819,"context_line":"                if \"Type \u0027yes\u0027 to delete nodes\" in resp:"},{"line_number":820,"context_line":"                    channel.send(\u0027yes\\n\u0027)"},{"line_number":821,"context_line":"                    time.sleep(0.5)"},{"line_number":822,"context_line":"                    resp \u003d channel.recv(1024)"},{"line_number":823,"context_line":"                    resp \u003d resp.decode(\u0027utf-8\u0027)"},{"line_number":824,"context_line":"                    buff +\u003d resp"}],"source_content_type":"text/x-python","patch_set":7,"id":"1e0ea653_3845da0c","line":821,"range":{"start_line":821,"start_character":31,"end_line":821,"end_character":34},"updated":"2021-09-01 08:06:38.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":818,"context_line":"                buff +\u003d resp"},{"line_number":819,"context_line":"                if \"Type \u0027yes\u0027 to delete nodes\" in resp:"},{"line_number":820,"context_line":"                    channel.send(\u0027yes\\n\u0027)"},{"line_number":821,"context_line":"                    time.sleep(0.5)"},{"line_number":822,"context_line":"                    resp \u003d channel.recv(1024)"},{"line_number":823,"context_line":"                    resp \u003d resp.decode(\u0027utf-8\u0027)"},{"line_number":824,"context_line":"                    buff +\u003d resp"}],"source_content_type":"text/x-python","patch_set":7,"id":"caf1721c_2944c5cf","line":821,"range":{"start_line":821,"start_character":31,"end_line":821,"end_character":34},"in_reply_to":"1e0ea653_3845da0c","updated":"2021-09-09 06:42:41.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":1068,"context_line":"    def evacuate_wait(self, commander, daemonset_content):"},{"line_number":1069,"context_line":"        # scale: evacuate wait"},{"line_number":1070,"context_line":"        wait_flag \u003d True"},{"line_number":1071,"context_line":"        retry_count \u003d 20"},{"line_number":1072,"context_line":"        while wait_flag and retry_count \u003e 0:"},{"line_number":1073,"context_line":"            if daemonset_content.get(\u0027items\u0027):"},{"line_number":1074,"context_line":"                ssh_command \u003d \"kubectl get pods --all-namespaces -o json\""}],"source_content_type":"text/x-python","patch_set":7,"id":"89bfbce0_7a85f5d9","line":1071,"range":{"start_line":1071,"start_character":22,"end_line":1071,"end_character":24},"updated":"2021-09-01 08:06:38.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":1068,"context_line":"    def evacuate_wait(self, commander, daemonset_content):"},{"line_number":1069,"context_line":"        # scale: evacuate wait"},{"line_number":1070,"context_line":"        wait_flag \u003d True"},{"line_number":1071,"context_line":"        retry_count \u003d 20"},{"line_number":1072,"context_line":"        while wait_flag and retry_count \u003e 0:"},{"line_number":1073,"context_line":"            if daemonset_content.get(\u0027items\u0027):"},{"line_number":1074,"context_line":"                ssh_command \u003d \"kubectl get pods --all-namespaces -o json\""}],"source_content_type":"text/x-python","patch_set":7,"id":"3604575b_c62ba9b6","line":1071,"range":{"start_line":1071,"start_character":22,"end_line":1071,"end_character":24},"in_reply_to":"89bfbce0_7a85f5d9","updated":"2021-09-09 06:42:41.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":32102,"name":"Manpreet Kaur","email":"kaurmanpreet2620@gmail.com","username":"manpreet"},"change_message_id":"2df85c2a8109357b668e179b7eeda094fe647f49","unresolved":true,"context_lines":[{"line_number":1089,"context_line":"                break"},{"line_number":1090,"context_line":"            if not wait_flag:"},{"line_number":1091,"context_line":"                break"},{"line_number":1092,"context_line":"            time.sleep(15)"},{"line_number":1093,"context_line":"            retry_count -\u003d 1"},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":"    def _get_lb_or_worker_ssh_ip(self, resource_info, is_lb):"}],"source_content_type":"text/x-python","patch_set":7,"id":"227ed16b_625c1e43","line":1092,"range":{"start_line":1092,"start_character":23,"end_line":1092,"end_character":25},"updated":"2021-09-01 08:06:38.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"2bdde66bc4c8c71fd518e7db04ff6f0046351e46","unresolved":true,"context_lines":[{"line_number":1089,"context_line":"                break"},{"line_number":1090,"context_line":"            if not wait_flag:"},{"line_number":1091,"context_line":"                break"},{"line_number":1092,"context_line":"            time.sleep(15)"},{"line_number":1093,"context_line":"            retry_count -\u003d 1"},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":"    def _get_lb_or_worker_ssh_ip(self, resource_info, is_lb):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7219b666_946cb9d7","line":1092,"range":{"start_line":1092,"start_character":23,"end_line":1092,"end_character":25},"in_reply_to":"227ed16b_625c1e43","updated":"2021-09-09 06:42:41.000000000","message":"ditto","commit_id":"96c30ccdb9ed74f021e1657184ac8082e5a33a1b"}],"samples/mgmt_driver/kubespray/kubespray_mgmt.py":[{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":360,"context_line":""},{"line_number":361,"context_line":"    def _create_hosts_yaml(self, master_node, master_vm_dict_list,"},{"line_number":362,"context_line":"                           worker_node, worker_vm_dict_list):"},{"line_number":363,"context_line":"        hosts_yaml_content \u003d {}"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"        hosts_yaml_content[\u0027all\u0027] \u003d {"},{"line_number":366,"context_line":"            \u0027hosts\u0027: {},"},{"line_number":367,"context_line":"            \u0027children\u0027: {"},{"line_number":368,"context_line":"                \u0027kube_control_plane\u0027: {\u0027hosts\u0027: {}},"},{"line_number":369,"context_line":"                \u0027kube_node\u0027: {\u0027hosts\u0027: {}},"},{"line_number":370,"context_line":"                \u0027etcd\u0027: {\u0027hosts\u0027: {}},"},{"line_number":371,"context_line":"                \u0027k8s_cluster\u0027: {"},{"line_number":372,"context_line":"                    \u0027children\u0027: {\u0027kube_control_plane\u0027: None,"},{"line_number":373,"context_line":"                                 \u0027kube_node\u0027: None}},"},{"line_number":374,"context_line":"                \u0027calico_rr\u0027: {\u0027hosts\u0027: {}}}}"},{"line_number":375,"context_line":"        for master_vm in master_vm_dict_list:"},{"line_number":376,"context_line":"            key \u003d \u0027master\u0027 + master_vm.get(\u0027nic_ip\u0027).split(\u0027.\u0027)[-1]"},{"line_number":377,"context_line":"            hosts_yaml_content[\u0027all\u0027][\u0027hosts\u0027][key] \u003d {"}],"source_content_type":"text/x-python","patch_set":10,"id":"4ce26151_cd56f251","line":374,"range":{"start_line":363,"start_character":0,"end_line":374,"end_character":44},"updated":"2021-09-14 09:59:40.000000000","message":"Why don\u0027t you combine those initialization of `hosts_yaml_content`?","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":360,"context_line":""},{"line_number":361,"context_line":"    def _create_hosts_yaml(self, master_node, master_vm_dict_list,"},{"line_number":362,"context_line":"                           worker_node, worker_vm_dict_list):"},{"line_number":363,"context_line":"        hosts_yaml_content \u003d {}"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"        hosts_yaml_content[\u0027all\u0027] \u003d {"},{"line_number":366,"context_line":"            \u0027hosts\u0027: {},"},{"line_number":367,"context_line":"            \u0027children\u0027: {"},{"line_number":368,"context_line":"                \u0027kube_control_plane\u0027: {\u0027hosts\u0027: {}},"},{"line_number":369,"context_line":"                \u0027kube_node\u0027: {\u0027hosts\u0027: {}},"},{"line_number":370,"context_line":"                \u0027etcd\u0027: {\u0027hosts\u0027: {}},"},{"line_number":371,"context_line":"                \u0027k8s_cluster\u0027: {"},{"line_number":372,"context_line":"                    \u0027children\u0027: {\u0027kube_control_plane\u0027: None,"},{"line_number":373,"context_line":"                                 \u0027kube_node\u0027: None}},"},{"line_number":374,"context_line":"                \u0027calico_rr\u0027: {\u0027hosts\u0027: {}}}}"},{"line_number":375,"context_line":"        for master_vm in master_vm_dict_list:"},{"line_number":376,"context_line":"            key \u003d \u0027master\u0027 + master_vm.get(\u0027nic_ip\u0027).split(\u0027.\u0027)[-1]"},{"line_number":377,"context_line":"            hosts_yaml_content[\u0027all\u0027][\u0027hosts\u0027][key] \u003d {"}],"source_content_type":"text/x-python","patch_set":10,"id":"87760108_f6fceb59","line":374,"range":{"start_line":363,"start_character":0,"end_line":374,"end_character":44},"in_reply_to":"4ce26151_cd56f251","updated":"2021-09-17 02:31:06.000000000","message":"I fixed it in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":360,"context_line":""},{"line_number":361,"context_line":"    def _create_hosts_yaml(self, master_node, master_vm_dict_list,"},{"line_number":362,"context_line":"                           worker_node, worker_vm_dict_list):"},{"line_number":363,"context_line":"        hosts_yaml_content \u003d {}"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"        hosts_yaml_content[\u0027all\u0027] \u003d {"},{"line_number":366,"context_line":"            \u0027hosts\u0027: {},"},{"line_number":367,"context_line":"            \u0027children\u0027: {"},{"line_number":368,"context_line":"                \u0027kube_control_plane\u0027: {\u0027hosts\u0027: {}},"},{"line_number":369,"context_line":"                \u0027kube_node\u0027: {\u0027hosts\u0027: {}},"},{"line_number":370,"context_line":"                \u0027etcd\u0027: {\u0027hosts\u0027: {}},"},{"line_number":371,"context_line":"                \u0027k8s_cluster\u0027: {"},{"line_number":372,"context_line":"                    \u0027children\u0027: {\u0027kube_control_plane\u0027: None,"},{"line_number":373,"context_line":"                                 \u0027kube_node\u0027: None}},"},{"line_number":374,"context_line":"                \u0027calico_rr\u0027: {\u0027hosts\u0027: {}}}}"},{"line_number":375,"context_line":"        for master_vm in master_vm_dict_list:"},{"line_number":376,"context_line":"            key \u003d \u0027master\u0027 + master_vm.get(\u0027nic_ip\u0027).split(\u0027.\u0027)[-1]"},{"line_number":377,"context_line":"            hosts_yaml_content[\u0027all\u0027][\u0027hosts\u0027][key] \u003d {"}],"source_content_type":"text/x-python","patch_set":10,"id":"dd03993c_285cd900","line":374,"range":{"start_line":363,"start_character":0,"end_line":374,"end_character":44},"in_reply_to":"87760108_f6fceb59","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":842,"context_line":"        except (exceptions.NotAuthorized, paramiko.SSHException,"},{"line_number":843,"context_line":"                paramiko.ssh_exception.NoValidConnectionsError) as e:"},{"line_number":844,"context_line":"            LOG.debug(e)"},{"line_number":845,"context_line":"            raise paramiko.SSHException()"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"    @log.log"},{"line_number":848,"context_line":"    def scale_start(self, context, vnf_instance,"}],"source_content_type":"text/x-python","patch_set":10,"id":"24da5267_a7d2cdca","line":845,"updated":"2021-09-14 09:59:40.000000000","message":"Is raising `paramiko.SSHException` correct? This `except` clause seems to convert `exceptions.NotAuthorized` and `paramiko.ssh_exception.NoValidConnectionsError` to `paramiko.SSHException` without any rational reason.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":842,"context_line":"        except (exceptions.NotAuthorized, paramiko.SSHException,"},{"line_number":843,"context_line":"                paramiko.ssh_exception.NoValidConnectionsError) as e:"},{"line_number":844,"context_line":"            LOG.debug(e)"},{"line_number":845,"context_line":"            raise paramiko.SSHException()"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"    @log.log"},{"line_number":848,"context_line":"    def scale_start(self, context, vnf_instance,"}],"source_content_type":"text/x-python","patch_set":10,"id":"7c36648f_1cd35984","line":845,"in_reply_to":"24da5267_a7d2cdca","updated":"2021-09-17 02:31:06.000000000","message":"I fixed it in PS 11. All of them will be raised as MgmtDriverOtherError.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":842,"context_line":"        except (exceptions.NotAuthorized, paramiko.SSHException,"},{"line_number":843,"context_line":"                paramiko.ssh_exception.NoValidConnectionsError) as e:"},{"line_number":844,"context_line":"            LOG.debug(e)"},{"line_number":845,"context_line":"            raise paramiko.SSHException()"},{"line_number":846,"context_line":""},{"line_number":847,"context_line":"    @log.log"},{"line_number":848,"context_line":"    def scale_start(self, context, vnf_instance,"}],"source_content_type":"text/x-python","patch_set":10,"id":"590b64cc_1eddaf5c","line":845,"in_reply_to":"7c36648f_1cd35984","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"02e7fdba583d163d643719e1935106a9f38b75c3","unresolved":true,"context_lines":[{"line_number":852,"context_line":"        if scale_vnf_request.type \u003d\u003d \u0027SCALE_IN\u0027:"},{"line_number":853,"context_line":"            scale_name_list \u003d kwargs.get(\u0027scale_name_list\u0027)"},{"line_number":854,"context_line":"            nest_stack_id \u003d vnf_instance.instantiated_vnf_info.instance_id"},{"line_number":855,"context_line":"            resource_name \u003d scale_vnf_request.aspect_id + \u0027_group\u0027"},{"line_number":856,"context_line":"            vim_connection_info \u003d \\"},{"line_number":857,"context_line":"                self._get_vim_connection_info(context, vnf_instance)"},{"line_number":858,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"1f877022_91f7cf37","line":855,"range":{"start_line":855,"start_character":55,"end_line":855,"end_character":66},"updated":"2021-09-10 09:41:12.000000000","message":"A restriction of scaling group name has been deleted in an already merged patch [1].\n[1] https://review.opendev.org/c/openstack/tacker/+/787779\n\nDoes this code work correctly?","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":852,"context_line":"        if scale_vnf_request.type \u003d\u003d \u0027SCALE_IN\u0027:"},{"line_number":853,"context_line":"            scale_name_list \u003d kwargs.get(\u0027scale_name_list\u0027)"},{"line_number":854,"context_line":"            nest_stack_id \u003d vnf_instance.instantiated_vnf_info.instance_id"},{"line_number":855,"context_line":"            resource_name \u003d scale_vnf_request.aspect_id + \u0027_group\u0027"},{"line_number":856,"context_line":"            vim_connection_info \u003d \\"},{"line_number":857,"context_line":"                self._get_vim_connection_info(context, vnf_instance)"},{"line_number":858,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"b1ced3f4_03acab54","line":855,"range":{"start_line":855,"start_character":55,"end_line":855,"end_character":66},"in_reply_to":"1f877022_91f7cf37","updated":"2021-09-17 02:31:06.000000000","message":"I fixed it in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":31857,"name":"Ayumu Ueha","email":"ueha.ayumu@fujitsu.com","username":"ueha"},"change_message_id":"785136f5c1cadff48cc2ef8bd90388d055698473","unresolved":false,"context_lines":[{"line_number":852,"context_line":"        if scale_vnf_request.type \u003d\u003d \u0027SCALE_IN\u0027:"},{"line_number":853,"context_line":"            scale_name_list \u003d kwargs.get(\u0027scale_name_list\u0027)"},{"line_number":854,"context_line":"            nest_stack_id \u003d vnf_instance.instantiated_vnf_info.instance_id"},{"line_number":855,"context_line":"            resource_name \u003d scale_vnf_request.aspect_id + \u0027_group\u0027"},{"line_number":856,"context_line":"            vim_connection_info \u003d \\"},{"line_number":857,"context_line":"                self._get_vim_connection_info(context, vnf_instance)"},{"line_number":858,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"f36b5284_a8f2f9e8","line":855,"range":{"start_line":855,"start_character":55,"end_line":855,"end_character":66},"in_reply_to":"b1ced3f4_03acab54","updated":"2021-09-17 03:09:14.000000000","message":"I\u0027ve confirmed.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":939,"context_line":"                )"},{"line_number":940,"context_line":""},{"line_number":941,"context_line":"                # check worker_node exist in k8s-cluster"},{"line_number":942,"context_line":"                ssh_command \u003d \"kubectl get node | grep {}\".format("},{"line_number":943,"context_line":"                    worker_hostname)"},{"line_number":944,"context_line":"                result \u003d self._execute_command(external_lb_commander,"},{"line_number":945,"context_line":"                                               ssh_command,"},{"line_number":946,"context_line":"                                               K8S_CMD_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"96692716_6f786d17","line":943,"range":{"start_line":942,"start_character":0,"end_line":943,"end_character":36},"updated":"2021-09-14 09:59:40.000000000","message":"nit: It seems that `\"kubectl get node --no-headers {} 2\u003e /dev/null\".format(worker_hostname)` is equivalent, because the result of this command line is only used for checking existence of target node.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":939,"context_line":"                )"},{"line_number":940,"context_line":""},{"line_number":941,"context_line":"                # check worker_node exist in k8s-cluster"},{"line_number":942,"context_line":"                ssh_command \u003d \"kubectl get node | grep {}\".format("},{"line_number":943,"context_line":"                    worker_hostname)"},{"line_number":944,"context_line":"                result \u003d self._execute_command(external_lb_commander,"},{"line_number":945,"context_line":"                                               ssh_command,"},{"line_number":946,"context_line":"                                               K8S_CMD_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"e0734eef_0f078876","line":943,"range":{"start_line":942,"start_character":0,"end_line":943,"end_character":36},"in_reply_to":"96692716_6f786d17","updated":"2021-09-17 02:31:06.000000000","message":"I changed this command in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":939,"context_line":"                )"},{"line_number":940,"context_line":""},{"line_number":941,"context_line":"                # check worker_node exist in k8s-cluster"},{"line_number":942,"context_line":"                ssh_command \u003d \"kubectl get node | grep {}\".format("},{"line_number":943,"context_line":"                    worker_hostname)"},{"line_number":944,"context_line":"                result \u003d self._execute_command(external_lb_commander,"},{"line_number":945,"context_line":"                                               ssh_command,"},{"line_number":946,"context_line":"                                               K8S_CMD_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"388c6a6d_33d6c444","line":943,"range":{"start_line":942,"start_character":0,"end_line":943,"end_character":36},"in_reply_to":"e0734eef_0f078876","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":968,"context_line":"                    ssh_command \u003d \"kubectl drain {}\" \\"},{"line_number":969,"context_line":"                                  \" --ignore-daemonsets\" \\"},{"line_number":970,"context_line":"                                  \" --delete-emptydir-data\" \\"},{"line_number":971,"context_line":"                                  \" --timeout\u003d300s\".format(worker_hostname)"},{"line_number":972,"context_line":"                    self._execute_command(external_lb_commander,"},{"line_number":973,"context_line":"                                          ssh_command,"},{"line_number":974,"context_line":"                                          K8S_DEPLOY_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"41230022_6bf73d21","line":971,"updated":"2021-09-14 09:59:40.000000000","message":"Timeout of drain should be specified by a constant, not a direct value in CLI.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":968,"context_line":"                    ssh_command \u003d \"kubectl drain {}\" \\"},{"line_number":969,"context_line":"                                  \" --ignore-daemonsets\" \\"},{"line_number":970,"context_line":"                                  \" --delete-emptydir-data\" \\"},{"line_number":971,"context_line":"                                  \" --timeout\u003d300s\".format(worker_hostname)"},{"line_number":972,"context_line":"                    self._execute_command(external_lb_commander,"},{"line_number":973,"context_line":"                                          ssh_command,"},{"line_number":974,"context_line":"                                          K8S_DEPLOY_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"fde2dad6_d0118f91","line":971,"in_reply_to":"41230022_6bf73d21","updated":"2021-09-17 02:31:06.000000000","message":"I defined a constanta in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":968,"context_line":"                    ssh_command \u003d \"kubectl drain {}\" \\"},{"line_number":969,"context_line":"                                  \" --ignore-daemonsets\" \\"},{"line_number":970,"context_line":"                                  \" --delete-emptydir-data\" \\"},{"line_number":971,"context_line":"                                  \" --timeout\u003d300s\".format(worker_hostname)"},{"line_number":972,"context_line":"                    self._execute_command(external_lb_commander,"},{"line_number":973,"context_line":"                                          ssh_command,"},{"line_number":974,"context_line":"                                          K8S_DEPLOY_TIMEOUT,"}],"source_content_type":"text/x-python","patch_set":10,"id":"5cd57607_b340a2f9","line":971,"in_reply_to":"fde2dad6_d0118f91","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":1108,"context_line":"                LOG.error(\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1109,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1110,"context_line":"                    error_message\u003d\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1111,"context_line":"            else:"},{"line_number":1112,"context_line":"                LOG.error(\"Failed to get the Worker\u0027s ssh ip.\")"},{"line_number":1113,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1114,"context_line":"                    error_message\u003d\"Failed to get the Worker\u0027s ssh ip.\")"}],"source_content_type":"text/x-python","patch_set":10,"id":"bc58ed6d_228111eb","line":1111,"updated":"2021-09-14 09:59:40.000000000","message":"`else` is unnecessary after `raise`.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":1108,"context_line":"                LOG.error(\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1109,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1110,"context_line":"                    error_message\u003d\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1111,"context_line":"            else:"},{"line_number":1112,"context_line":"                LOG.error(\"Failed to get the Worker\u0027s ssh ip.\")"},{"line_number":1113,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1114,"context_line":"                    error_message\u003d\"Failed to get the Worker\u0027s ssh ip.\")"}],"source_content_type":"text/x-python","patch_set":10,"id":"dd20b3fe_d909f743","line":1111,"in_reply_to":"ab80c980_ac0f9bd4","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":1108,"context_line":"                LOG.error(\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1109,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1110,"context_line":"                    error_message\u003d\"Failed to get the LB\u0027s ssh ip.\")"},{"line_number":1111,"context_line":"            else:"},{"line_number":1112,"context_line":"                LOG.error(\"Failed to get the Worker\u0027s ssh ip.\")"},{"line_number":1113,"context_line":"                raise exceptions.MgmtDriverOtherError("},{"line_number":1114,"context_line":"                    error_message\u003d\"Failed to get the Worker\u0027s ssh ip.\")"}],"source_content_type":"text/x-python","patch_set":10,"id":"ab80c980_ac0f9bd4","line":1111,"in_reply_to":"bc58ed6d_228111eb","updated":"2021-09-17 02:31:06.000000000","message":"I removed \u0027else\u0027 in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":1206,"context_line":"                hosts_content[\u0027all\u0027][\u0027children\u0027][\u0027kube_node\u0027]["},{"line_number":1207,"context_line":"                    \u0027hosts\u0027][worker_host_name] \u003d None"},{"line_number":1208,"context_line":"            LOG.debug(\"get hosts_content: {}\".format(hosts_content))"},{"line_number":1209,"context_line":"            with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1210,"context_line":"                yaml.safe_dump(hosts_content, nf,"},{"line_number":1211,"context_line":"                               default_flow_style\u003dFalse)"},{"line_number":1212,"context_line":"            self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"a5fe8689_76b9e516","line":1209,"updated":"2021-09-14 09:59:40.000000000","message":"Use `open` with encoding.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":1206,"context_line":"                hosts_content[\u0027all\u0027][\u0027children\u0027][\u0027kube_node\u0027]["},{"line_number":1207,"context_line":"                    \u0027hosts\u0027][worker_host_name] \u003d None"},{"line_number":1208,"context_line":"            LOG.debug(\"get hosts_content: {}\".format(hosts_content))"},{"line_number":1209,"context_line":"            with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1210,"context_line":"                yaml.safe_dump(hosts_content, nf,"},{"line_number":1211,"context_line":"                               default_flow_style\u003dFalse)"},{"line_number":1212,"context_line":"            self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"afc141d2_dcfd8826","line":1209,"in_reply_to":"443f71c0_40a2ee43","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":1206,"context_line":"                hosts_content[\u0027all\u0027][\u0027children\u0027][\u0027kube_node\u0027]["},{"line_number":1207,"context_line":"                    \u0027hosts\u0027][worker_host_name] \u003d None"},{"line_number":1208,"context_line":"            LOG.debug(\"get hosts_content: {}\".format(hosts_content))"},{"line_number":1209,"context_line":"            with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1210,"context_line":"                yaml.safe_dump(hosts_content, nf,"},{"line_number":1211,"context_line":"                               default_flow_style\u003dFalse)"},{"line_number":1212,"context_line":"            self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"443f71c0_40a2ee43","line":1209,"in_reply_to":"a5fe8689_76b9e516","updated":"2021-09-17 02:31:06.000000000","message":"I added `enconding` in PS 11.","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"859a3b01b29239b5b7a12d8f1a0115df62f947ba","unresolved":true,"context_lines":[{"line_number":1322,"context_line":"                                worker_node.get(\u0027password\u0027)"},{"line_number":1323,"context_line":"                            need_modify \u003d True"},{"line_number":1324,"context_line":"                if need_modify:"},{"line_number":1325,"context_line":"                    with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1326,"context_line":"                        yaml.safe_dump(hosts_content, nf,"},{"line_number":1327,"context_line":"                                       default_flow_style\u003dFalse)"},{"line_number":1328,"context_line":"                    self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"d46b7b8e_e95ea431","line":1325,"updated":"2021-09-14 09:59:40.000000000","message":"ditto","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33492,"name":"Yi Feng","email":"fengyi@fujitsu.com","username":"YiFeng"},"change_message_id":"1e5142969e135dbbbfadb015fbc1b38000078ec4","unresolved":true,"context_lines":[{"line_number":1322,"context_line":"                                worker_node.get(\u0027password\u0027)"},{"line_number":1323,"context_line":"                            need_modify \u003d True"},{"line_number":1324,"context_line":"                if need_modify:"},{"line_number":1325,"context_line":"                    with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1326,"context_line":"                        yaml.safe_dump(hosts_content, nf,"},{"line_number":1327,"context_line":"                                       default_flow_style\u003dFalse)"},{"line_number":1328,"context_line":"                    self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"fe433eeb_ee2de301","line":1325,"in_reply_to":"d46b7b8e_e95ea431","updated":"2021-09-17 02:31:06.000000000","message":"ditto","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"},{"author":{"_account_id":33292,"name":"Masaki UENO","email":"masaki.ueno.up@hco.ntt.co.jp","username":"masaki-ueno"},"change_message_id":"78ea4da7b129aca10db5eee402993c9f41ea0ed5","unresolved":false,"context_lines":[{"line_number":1322,"context_line":"                                worker_node.get(\u0027password\u0027)"},{"line_number":1323,"context_line":"                            need_modify \u003d True"},{"line_number":1324,"context_line":"                if need_modify:"},{"line_number":1325,"context_line":"                    with open(local_hosts_yaml_path, \u0027w\u0027) as nf:"},{"line_number":1326,"context_line":"                        yaml.safe_dump(hosts_content, nf,"},{"line_number":1327,"context_line":"                                       default_flow_style\u003dFalse)"},{"line_number":1328,"context_line":"                    self._send_or_receive_file("}],"source_content_type":"text/x-python","patch_set":10,"id":"af0322b4_aaf33ac1","line":1325,"in_reply_to":"fe433eeb_ee2de301","updated":"2021-09-17 03:23:52.000000000","message":"Ack","commit_id":"f4c3c5fc1bad7e35e50000a6252f5acb5ebca39e"}]}
