)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Default TripleO deployments utilize compute domain names when looking up"},{"line_number":10,"context_line":"nova service binaries, this lookup does not work when using a compute\u0027s"},{"line_number":11,"context_line":"IP address though. To allow the recent change [1] to run downstream,"},{"line_number":12,"context_line":"this commit updates how parameters are passed to the init of"},{"line_number":13,"context_line":"NovaServiceManager. The hostname is passed to NovaServiceManager instead"},{"line_number":14,"context_line":"of the IP address.  During the init the compute\u0027s control plane IP"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9f560f44_e14b2c84","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":10},"updated":"2020-08-19 17:49:54.000000000","message":"nit: ah, this everpresent discrepancy in terms ;) In the code, we call it \u0027ctlplane_address\u0027","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Default TripleO deployments utilize compute domain names when looking up"},{"line_number":10,"context_line":"nova service binaries, this lookup does not work when using a compute\u0027s"},{"line_number":11,"context_line":"IP address though. To allow the recent change [1] to run downstream,"},{"line_number":12,"context_line":"this commit updates how parameters are passed to the init of"},{"line_number":13,"context_line":"NovaServiceManager. The hostname is passed to NovaServiceManager instead"},{"line_number":14,"context_line":"of the IP address.  During the init the compute\u0027s control plane IP"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9f560f44_dc788bf9","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":10},"in_reply_to":"9f560f44_e14b2c84","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"}],"whitebox_tempest_plugin/api/compute/test_cpu_pinning.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":491,"context_line":"    @decorators.skip_because(bug\u003d\u00272007395\u0027, bug_type\u003d\u0027storyboard\u0027)"},{"line_number":492,"context_line":"    def test_cpu_pinning(self):"},{"line_number":493,"context_line":"        hostname1, hostname2 \u003d self.list_compute_hosts()"},{"line_number":494,"context_line":"        host1, host2 \u003d [whitebox_utils.get_ctlplane_address(host) for host in"},{"line_number":495,"context_line":"                        [hostname1, hostname2]]"},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"        numaclient_1 \u003d clients.NUMAClient(host1)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_a12e54a2","line":494,"updated":"2020-08-19 17:49:54.000000000","message":"nit: I\u0027d prefer we differentiate the variable names a bit more, so maybe keep host1, host2 on L493, and have ctlplane1, ctlplane2 on L494","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":491,"context_line":"    @decorators.skip_because(bug\u003d\u00272007395\u0027, bug_type\u003d\u0027storyboard\u0027)"},{"line_number":492,"context_line":"    def test_cpu_pinning(self):"},{"line_number":493,"context_line":"        hostname1, hostname2 \u003d self.list_compute_hosts()"},{"line_number":494,"context_line":"        host1, host2 \u003d [whitebox_utils.get_ctlplane_address(host) for host in"},{"line_number":495,"context_line":"                        [hostname1, hostname2]]"},{"line_number":496,"context_line":""},{"line_number":497,"context_line":"        numaclient_1 \u003d clients.NUMAClient(host1)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_1cab2389","line":494,"in_reply_to":"9f560f44_a12e54a2","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":603,"context_line":"    def test_emulator_threads(self):"},{"line_number":604,"context_line":"        # Need 4 CPUs on each host"},{"line_number":605,"context_line":"        hostname1, hostname2 \u003d self.list_compute_hosts()"},{"line_number":606,"context_line":"        host1, host2 \u003d [whitebox_utils.get_ctlplane_address(host) for host in"},{"line_number":607,"context_line":"                        [hostname1, hostname2]]"},{"line_number":608,"context_line":""},{"line_number":609,"context_line":"        for host in [host1, host2]:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_dcfecb03","line":606,"updated":"2020-08-19 17:49:54.000000000","message":"Ditto, re: variable differentiation","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"}],"whitebox_tempest_plugin/services/clients.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":36,"context_line":"class SSHClient(object):"},{"line_number":37,"context_line":"    \"\"\"A client to execute remote commands, based on tempest.lib.common.ssh.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def __init__(self, hostname):"},{"line_number":40,"context_line":"        self.ssh_key \u003d CONF.whitebox.ctlplane_ssh_private_key_path"},{"line_number":41,"context_line":"        self.ssh_user \u003d CONF.whitebox.ctlplane_ssh_username"},{"line_number":42,"context_line":"        self.hostname \u003d hostname"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_dc27ebb5","line":39,"range":{"start_line":39,"start_character":23,"end_line":39,"end_character":31},"updated":"2020-08-19 17:49:54.000000000","message":"Hrmm, so can we use this patch to improve our variable names? This here is a ctlplane_address.","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":36,"context_line":"class SSHClient(object):"},{"line_number":37,"context_line":"    \"\"\"A client to execute remote commands, based on tempest.lib.common.ssh.\"\"\""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def __init__(self, hostname):"},{"line_number":40,"context_line":"        self.ssh_key \u003d CONF.whitebox.ctlplane_ssh_private_key_path"},{"line_number":41,"context_line":"        self.ssh_user \u003d CONF.whitebox.ctlplane_ssh_username"},{"line_number":42,"context_line":"        self.hostname \u003d hostname"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_fcad8f9b","line":39,"range":{"start_line":39,"start_character":23,"end_line":39,"end_character":31},"in_reply_to":"9f560f44_dc27ebb5","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self, hostname):"},{"line_number":40,"context_line":"        self.ssh_key \u003d CONF.whitebox.ctlplane_ssh_private_key_path"},{"line_number":41,"context_line":"        self.ssh_user \u003d CONF.whitebox.ctlplane_ssh_username"},{"line_number":42,"context_line":"        self.hostname \u003d hostname"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def execute(self, command, container_name\u003dNone, sudo\u003dFalse):"},{"line_number":45,"context_line":"        ssh_client \u003d ssh.Client(self.hostname, self.ssh_user,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_bc4f9768","line":42,"range":{"start_line":42,"start_character":13,"end_line":42,"end_character":21},"updated":"2020-08-19 17:49:54.000000000","message":"So then this would become ctlplane_address","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self, hostname):"},{"line_number":40,"context_line":"        self.ssh_key \u003d CONF.whitebox.ctlplane_ssh_private_key_path"},{"line_number":41,"context_line":"        self.ssh_user \u003d CONF.whitebox.ctlplane_ssh_username"},{"line_number":42,"context_line":"        self.hostname \u003d hostname"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    def execute(self, command, container_name\u003dNone, sudo\u003dFalse):"},{"line_number":45,"context_line":"        ssh_client \u003d ssh.Client(self.hostname, self.ssh_user,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_5c947b44","line":42,"range":{"start_line":42,"start_character":13,"end_line":42,"end_character":21},"in_reply_to":"9f560f44_bc4f9768","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":175,"context_line":"    \"\"\""},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    def __init__(self, host, service, services_client):"},{"line_number":178,"context_line":"        self.ctlplane_addr \u003d whitebox_utils.get_ctlplane_address(host)"},{"line_number":179,"context_line":"        super(NovaServiceManager, self).__init__(self.ctlplane_addr, service)"},{"line_number":180,"context_line":"        self.services_client \u003d services_client"},{"line_number":181,"context_line":"        self.service_hostname \u003d host"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_bc78378f","line":178,"updated":"2020-08-19 17:49:54.000000000","message":"And we would no longer need this line","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"22b8a7db01367d3694af0bbbbbcac474e90793fb","unresolved":false,"context_lines":[{"line_number":175,"context_line":"    \"\"\""},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    def __init__(self, host, service, services_client):"},{"line_number":178,"context_line":"        self.ctlplane_addr \u003d whitebox_utils.get_ctlplane_address(host)"},{"line_number":179,"context_line":"        super(NovaServiceManager, self).__init__(self.ctlplane_addr, service)"},{"line_number":180,"context_line":"        self.services_client \u003d services_client"},{"line_number":181,"context_line":"        self.service_hostname \u003d host"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_62a27a9c","line":178,"in_reply_to":"9f560f44_3c226702","updated":"2020-08-19 20:12:17.000000000","message":"Right, but the ctlplane would be set by SSHClient\u0027s __init__ on L42, and NSM can just have the service_host/host.","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":175,"context_line":"    \"\"\""},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    def __init__(self, host, service, services_client):"},{"line_number":178,"context_line":"        self.ctlplane_addr \u003d whitebox_utils.get_ctlplane_address(host)"},{"line_number":179,"context_line":"        super(NovaServiceManager, self).__init__(self.ctlplane_addr, service)"},{"line_number":180,"context_line":"        self.services_client \u003d services_client"},{"line_number":181,"context_line":"        self.service_hostname \u003d host"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_3c226702","line":178,"in_reply_to":"9f560f44_bc78378f","updated":"2020-08-19 18:16:37.000000000","message":"Downstream, the NSM still needs a way of holding both hostname and control plane address. If it only gets the control plane address it will not have any knowledge of the hostname it needs to use when accessing the compute service status and will fail to get the service information.  Passing the hostname to the NSM init and then doing the control plane IP lookup allows downstream to pass the control plane IP to the SSHClient while still using the hostname when accessing compute services.","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":178,"context_line":"        self.ctlplane_addr \u003d whitebox_utils.get_ctlplane_address(host)"},{"line_number":179,"context_line":"        super(NovaServiceManager, self).__init__(self.ctlplane_addr, service)"},{"line_number":180,"context_line":"        self.services_client \u003d services_client"},{"line_number":181,"context_line":"        self.service_hostname \u003d host"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    def start(self):"},{"line_number":184,"context_line":"        result \u003d self.execute(self.start_command, sudo\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_9cb8d32a","line":181,"range":{"start_line":181,"start_character":13,"end_line":181,"end_character":29},"updated":"2020-08-19 17:49:54.000000000","message":"nit: just \u0027host\u0027, no?","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":178,"context_line":"        self.ctlplane_addr \u003d whitebox_utils.get_ctlplane_address(host)"},{"line_number":179,"context_line":"        super(NovaServiceManager, self).__init__(self.ctlplane_addr, service)"},{"line_number":180,"context_line":"        self.services_client \u003d services_client"},{"line_number":181,"context_line":"        self.service_hostname \u003d host"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"    def start(self):"},{"line_number":184,"context_line":"        result \u003d self.execute(self.start_command, sudo\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_fce90fb7","line":181,"range":{"start_line":181,"start_character":13,"end_line":181,"end_character":29},"in_reply_to":"9f560f44_9cb8d32a","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"}],"whitebox_tempest_plugin/utils.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b2b15515e4000a4d08d685fb524d073ae6ed35a9","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    :param compute_hostname: str the compute hostname"},{"line_number":62,"context_line":"    :return: The address to be used to access the compute host. For"},{"line_number":63,"context_line":"                devstack deployments, this is compute_host itself. For"},{"line_number":64,"context_line":"                TripleO, it needs to be looked up in the configuration."},{"line_number":65,"context_line":"    \"\"\""},{"line_number":66,"context_line":"    if not CONF.whitebox.ctlplane_addresses:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_1c7e836a","line":63,"updated":"2020-08-19 17:49:54.000000000","message":"nit: alignment","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"fda2a94d777b98528184cc2390bf70b4ed97e67f","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    :param compute_hostname: str the compute hostname"},{"line_number":62,"context_line":"    :return: The address to be used to access the compute host. For"},{"line_number":63,"context_line":"                devstack deployments, this is compute_host itself. For"},{"line_number":64,"context_line":"                TripleO, it needs to be looked up in the configuration."},{"line_number":65,"context_line":"    \"\"\""},{"line_number":66,"context_line":"    if not CONF.whitebox.ctlplane_addresses:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_5c7d9b1a","line":63,"in_reply_to":"9f560f44_1c7e836a","updated":"2020-08-19 18:16:37.000000000","message":"Done","commit_id":"14363afff6a3455c922dfdeebe72cb84929ac01a"}]}
