)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"032c6be249f6dc842354d11c7d7b4f224329cbbd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"020bcdec_674795ce","updated":"2023-12-19 03:03:32.000000000","message":"recheck","commit_id":"22588c8666910abed746e4c99e8b30b4e6171244"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"11b50e45d5ff5c4953058c96dfd9facf659406d2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9943c108_c77b1203","updated":"2024-03-05 21:40:39.000000000","message":"eharney@redhat.com \n\n0:0:0:0:0:0:0:1 (“::1” in compressed form) represents loopback address for IPv6, equivalent of IPv4 (127.0.0.1)","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"4f95e0568795cfda0bf3cd1eeef5df6fb75a1fa8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"89a34b70_ffe00833","updated":"2024-01-02 22:18:47.000000000","message":"recheck","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"d64f72c62e28eb593e73f8ce54ee7754e1c7b912","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"fda0c99c_5107afae","updated":"2024-01-02 22:17:52.000000000","message":"recheck","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":9236,"name":"Jon Bernard","email":"jobernar@redhat.com","username":"jbernard"},"change_message_id":"9512fd7737a3933024e16a1728e697e2a5d8ce0f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"105de4f9_03f95456","updated":"2024-08-01 18:15:51.000000000","message":"This looks good to me, isolated and very clean.  I\u0027m surprised there isn\u0027t a stdlib call for fetching ips, but that\u0027s no reason to hold this up (IMO).","commit_id":"0533df4831419661e551ea59acf3a44eea6e7935"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"b6ebdb8f620bbe5e77a68824c457a702828a076b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c355a6d7_a375ce6d","updated":"2024-08-05 13:57:30.000000000","message":"netifaces is no longer maintained, see https://lists.openstack.org/pipermail/openstack-discuss/2023-April/033261.html, projects should try to remove its usage, not add new ones","commit_id":"0533df4831419661e551ea59acf3a44eea6e7935"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"6fc1814ad76f26ef98d30e9ad3ccaa2ec2610661","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"9beb7aa5_ace02e67","updated":"2024-08-08 10:36:51.000000000","message":"updated Code with comments fix","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"eec5b46be1f440cf6a99fd1e8e7e098c07db18b3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"a3ac446f_6bef5a9a","updated":"2024-08-08 20:58:19.000000000","message":"Since this is isolated to the lightos connector, the change should be fine. Not sure if there is a bug for this issue or it requires a releasenote mentioning what we\u0027ve fixed. but i won\u0027t block it for that. LGTM.","commit_id":"837bd7188faa13668c25e40e17085ac9f6168222"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"b7d9bdf9230c108994f8c884cdafe2991a558bfc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"21978c40_c4d9d087","updated":"2024-08-13 08:41:10.000000000","message":"recheck","commit_id":"837bd7188faa13668c25e40e17085ac9f6168222"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"3bc671c5bb47499c2fbf7958b55f5e990fb1b3f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d79b7e59_21c10d6b","updated":"2024-08-12 18:05:49.000000000","message":"recheck","commit_id":"837bd7188faa13668c25e40e17085ac9f6168222"}],"os_brick/initiator/connectors/lightos.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"60ace4ea6b316073eedcf4a28cbdfe8032e79e76","unresolved":true,"context_lines":[{"line_number":68,"context_line":"        self.DISCOVERY_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"}],"source_content_type":"text/x-python","patch_set":3,"id":"40d7231d_80a514a6","line":71,"updated":"2024-02-14 13:31:56.000000000","message":"Could this just call oslo_utils.netutils get_my_ipv4() and get_my_ipv6() rather than parsing this info here manually?","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"c781156f70e27975a30ecc80352a2b46538bacc7","unresolved":true,"context_lines":[{"line_number":68,"context_line":"        self.DISCOVERY_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"}],"source_content_type":"text/x-python","patch_set":3,"id":"a2b24fd3_d349a814","line":71,"in_reply_to":"40d7231d_80a514a6","updated":"2024-02-15 21:15:06.000000000","message":"I\u0027ve tried to use get_my_ipv4() and get_my_ipv6() from oslo_utils.netutils package but these functions return a single IP. In case of a host with multiple NICs configured will have multiple IP address(es), and the returned IP maybe different than the IP used for datapath from host target.\n\nThank you for the feedback, and appreciate any suggestions.","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"2725db35ed7b356ad8d02bf7d10972c15cbaac05","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        self.DISCOVERY_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"}],"source_content_type":"text/x-python","patch_set":3,"id":"d1f5d48d_30f75fc8","line":71,"in_reply_to":"a2b24fd3_d349a814","updated":"2024-07-22 07:54:48.000000000","message":"Done","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"1cba04f0e0a9377be82211fc116e94de78f017c7","unresolved":true,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"c4414499_56c3dbbd","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"updated":"2024-03-05 21:22:34.000000000","message":"What is this second address for?","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"442cea070ff7c4f2f2135f4bc5849d73cd52c7fb","unresolved":true,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"675c352b_467236bc","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"in_reply_to":"4454965b_db92ee25","updated":"2024-04-17 14:37:45.000000000","message":"But ::1 is also listed here?","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"44118cc216f85c69d718e79587ec312755b68b95","unresolved":true,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"f6421ec1_3e5df5a0","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"in_reply_to":"675c352b_467236bc","updated":"2024-04-20 00:14:28.000000000","message":"In many cases but not in all cases, operating system uses a shorthand method for IPv6 addresses abbreviated by cutting off any leading 0s in front of hexadecimal numbers and replacing multiple consecutive 0s with a double colon (::) \n\nIPv6 loopback address are available in two shapes from the underlying operating system, full address (\u00270:0:0:0:0:0:0:1\u0027) or compressed address (\u0027::1\u0027)  so i wanted to filter and discard whichever shapes the loopback address is available.","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":36569,"name":"Rahman Muhammad","display_name":"Rahman Muhammad","email":"rahman@lightbitslabs.com","username":"rahman-lb","status":"Lightbits delivers NVMe/TCP based storage products."},"change_message_id":"42c28e9eb10b21027731b1b334cc5d12035765bb","unresolved":true,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"4454965b_db92ee25","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"in_reply_to":"c4414499_56c3dbbd","updated":"2024-03-06 03:49:10.000000000","message":"0:0:0:0:0:0:0:1 (“::1” in compressed form) represents loopback address for IPv6, equivalent of IPv4 (127.0.0.1)","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"2725db35ed7b356ad8d02bf7d10972c15cbaac05","unresolved":false,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"a5497752_02803d8e","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"in_reply_to":"ca3303ec_d035bbc7","updated":"2024-07-22 07:54:48.000000000","message":"Done","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"114ca607b26250f6960a10fbef346ac52fd40cc8","unresolved":true,"context_lines":[{"line_number":70,"context_line":"    @staticmethod"},{"line_number":71,"context_line":"    def get_ip_addresses():"},{"line_number":72,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":73,"context_line":"        loop_back_ips \u003d [\u0027127.0.0.1\u0027, \u00270:0:0:0:0:0:0:1\u0027, \u0027::1\u0027]"},{"line_number":74,"context_line":"        ips \u003d []"},{"line_number":75,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":76,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ca3303ec_d035bbc7","line":73,"range":{"start_line":73,"start_character":38,"end_line":73,"end_character":55},"in_reply_to":"f6421ec1_3e5df5a0","updated":"2024-07-10 07:20:38.000000000","message":"Eric Harney - anything else is not clear regarding the patch? can you revoke the \"-1\"?","commit_id":"af0ee63ac1d2f8f5cec24fe21f5d0fc487c06f7e"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"e16ee75818b3564cf5fd04755876775103857a3a","unresolved":true,"context_lines":[{"line_number":68,"context_line":"    def get_ip_addresses():"},{"line_number":69,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":70,"context_line":"        def get_ip_addresses_psutil():"},{"line_number":71,"context_line":"            ip_addresses \u003d []  # Initialize an empty list to store the results"},{"line_number":72,"context_line":"            for interface, snics in psutil.net_if_addrs().items():"},{"line_number":73,"context_line":"                for snic in snics:"},{"line_number":74,"context_line":"                    ip_addresses.append((interface, snic.address))  # Collect each (interface, address) tuple"}],"source_content_type":"text/x-python","patch_set":7,"id":"2f104d08_698b85c1","line":71,"range":{"start_line":71,"start_character":31,"end_line":71,"end_character":78},"updated":"2024-08-07 14:43:20.000000000","message":"nit: it\u0027s better to add comment on a line before this line, like this\n\n    # Initialize an empty list to store the results\n    ip_addresses \u003d []","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"6fc1814ad76f26ef98d30e9ad3ccaa2ec2610661","unresolved":false,"context_lines":[{"line_number":68,"context_line":"    def get_ip_addresses():"},{"line_number":69,"context_line":"        \"\"\"Find all IPs for the host machine, return list of IP addresses.\"\"\""},{"line_number":70,"context_line":"        def get_ip_addresses_psutil():"},{"line_number":71,"context_line":"            ip_addresses \u003d []  # Initialize an empty list to store the results"},{"line_number":72,"context_line":"            for interface, snics in psutil.net_if_addrs().items():"},{"line_number":73,"context_line":"                for snic in snics:"},{"line_number":74,"context_line":"                    ip_addresses.append((interface, snic.address))  # Collect each (interface, address) tuple"}],"source_content_type":"text/x-python","patch_set":7,"id":"22f06c86_6525aef1","line":71,"range":{"start_line":71,"start_character":31,"end_line":71,"end_character":78},"in_reply_to":"2f104d08_698b85c1","updated":"2024-08-08 10:36:51.000000000","message":"Done","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"e16ee75818b3564cf5fd04755876775103857a3a","unresolved":true,"context_lines":[{"line_number":71,"context_line":"            ip_addresses \u003d []  # Initialize an empty list to store the results"},{"line_number":72,"context_line":"            for interface, snics in psutil.net_if_addrs().items():"},{"line_number":73,"context_line":"                for snic in snics:"},{"line_number":74,"context_line":"                    ip_addresses.append((interface, snic.address))  # Collect each (interface, address) tuple"},{"line_number":75,"context_line":"            return ip_addresses  # Return the list of tuples"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        loop_back \u003d [\u0027lo\u0027]"},{"line_number":78,"context_line":"        ips \u003d []"}],"source_content_type":"text/x-python","patch_set":7,"id":"f5ff4ae1_253685ef","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":60},"updated":"2024-08-07 14:43:20.000000000","message":"same for comment","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"4aa50e25959bf104f75573cd2a202c14fdc1eab7","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            ip_addresses \u003d []  # Initialize an empty list to store the results"},{"line_number":72,"context_line":"            for interface, snics in psutil.net_if_addrs().items():"},{"line_number":73,"context_line":"                for snic in snics:"},{"line_number":74,"context_line":"                    ip_addresses.append((interface, snic.address))  # Collect each (interface, address) tuple"},{"line_number":75,"context_line":"            return ip_addresses  # Return the list of tuples"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"        loop_back \u003d [\u0027lo\u0027]"},{"line_number":78,"context_line":"        ips \u003d []"}],"source_content_type":"text/x-python","patch_set":7,"id":"190cf51f_416b3991","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":60},"in_reply_to":"f5ff4ae1_253685ef","updated":"2024-08-08 10:37:10.000000000","message":"Done","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"e16ee75818b3564cf5fd04755876775103857a3a","unresolved":true,"context_lines":[{"line_number":115,"context_line":"                      hostnqn, found_dsc)"},{"line_number":116,"context_line":"            props[\u0027nqn\u0027] \u003d hostnqn"},{"line_number":117,"context_line":"            props[\u0027found_dsc\u0027] \u003d found_dsc"},{"line_number":118,"context_line":"            props[\u0027host_ips\u0027] \u003d host_ips"},{"line_number":119,"context_line":"        else:"},{"line_number":120,"context_line":"            LOG.debug(\u0027LIGHTOS: no hostnqn found.\u0027)"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"fc869bff_4bedbb87","line":118,"range":{"start_line":118,"start_character":12,"end_line":118,"end_character":40},"updated":"2024-08-07 14:43:20.000000000","message":"we are returning all the IPs here which seems pretty broad, os-brick already includes the host IP[1] (which should be ideal for connection) which is provided from the consumer (nova or glance). can you provide more explanation on why that IP is not enough and we require passing all IPs belonging to the host?\n\n[1] https://github.com/openstack/os-brick/blob/master/os_brick/initiator/connector.py#L223","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"eec5b46be1f440cf6a99fd1e8e7e098c07db18b3","unresolved":false,"context_lines":[{"line_number":115,"context_line":"                      hostnqn, found_dsc)"},{"line_number":116,"context_line":"            props[\u0027nqn\u0027] \u003d hostnqn"},{"line_number":117,"context_line":"            props[\u0027found_dsc\u0027] \u003d found_dsc"},{"line_number":118,"context_line":"            props[\u0027host_ips\u0027] \u003d host_ips"},{"line_number":119,"context_line":"        else:"},{"line_number":120,"context_line":"            LOG.debug(\u0027LIGHTOS: no hostnqn found.\u0027)"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3dd21382_093ed7d1","line":118,"range":{"start_line":118,"start_character":12,"end_line":118,"end_character":40},"in_reply_to":"4920982c_f83e2899","updated":"2024-08-08 20:58:19.000000000","message":"Acknowledged","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"6fc1814ad76f26ef98d30e9ad3ccaa2ec2610661","unresolved":true,"context_lines":[{"line_number":115,"context_line":"                      hostnqn, found_dsc)"},{"line_number":116,"context_line":"            props[\u0027nqn\u0027] \u003d hostnqn"},{"line_number":117,"context_line":"            props[\u0027found_dsc\u0027] \u003d found_dsc"},{"line_number":118,"context_line":"            props[\u0027host_ips\u0027] \u003d host_ips"},{"line_number":119,"context_line":"        else:"},{"line_number":120,"context_line":"            LOG.debug(\u0027LIGHTOS: no hostnqn found.\u0027)"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"4920982c_f83e2899","line":118,"range":{"start_line":118,"start_character":12,"end_line":118,"end_character":40},"in_reply_to":"fc869bff_4bedbb87","updated":"2024-08-08 10:36:51.000000000","message":"Hey Rajart, Thanks for the review.\n\nThe issue is that a machine can have multiple Nic\u0027s which can connect to the lightos cluster.\n\nWe dont know which interface and which ip(v4/v6) will do the connection. thats why just 1 host IP is not enough.","commit_id":"5a51c2da72f7c9114249238aad86dbe1c9f768f5"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"66458f4cf8c3131d3886014ac4fa5b80431d7915","unresolved":true,"context_lines":[{"line_number":75,"context_line":"                    ip_addresses.append((interface, snic.address))"},{"line_number":76,"context_line":"            return ip_addresses"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        loop_back \u003d [\u0027lo\u0027]"},{"line_number":79,"context_line":"        ips \u003d []"},{"line_number":80,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":81,"context_line":"        iface_with_ips \u003d get_ip_addresses_psutil()"}],"source_content_type":"text/x-python","patch_set":8,"id":"485f1997_34a69e04","line":78,"updated":"2024-08-12 13:35:10.000000000","message":"It looks like loop_back doesn\u0027t really need to be a list.  Maybe something to consider in a follow-up.","commit_id":"837bd7188faa13668c25e40e17085ac9f6168222"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"cdc10b71e6c67b81fceadac98e383a8227a5feff","unresolved":false,"context_lines":[{"line_number":75,"context_line":"                    ip_addresses.append((interface, snic.address))"},{"line_number":76,"context_line":"            return ip_addresses"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        loop_back \u003d [\u0027lo\u0027]"},{"line_number":79,"context_line":"        ips \u003d []"},{"line_number":80,"context_line":"        is_ipv6_enabled \u003d netutils.is_ipv6_enabled()"},{"line_number":81,"context_line":"        iface_with_ips \u003d get_ip_addresses_psutil()"}],"source_content_type":"text/x-python","patch_set":8,"id":"8fa675ee_b0a54ace","line":78,"in_reply_to":"485f1997_34a69e04","updated":"2024-08-12 15:04:11.000000000","message":"Thanks for not blocking the patch for that. If interface will stay just \"lo\" in the future that would be correct to fix.","commit_id":"837bd7188faa13668c25e40e17085ac9f6168222"}]}
