)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"1a793a6f64b523e430472044d7f05840ebfef6ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"10c1f936_77b5c1e0","updated":"2025-08-18 17:44:16.000000000","message":"Since this patch is introducing new config options, it needs to be documented in a release notes \"upgrade\" section","commit_id":"30b4f60ec7bb7ec42540f87a3e646bc669e9bb81"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"3caa11d3b03896b919682461476402de871f866a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ea21d693_7395267d","in_reply_to":"10c1f936_77b5c1e0","updated":"2025-08-20 05:31:08.000000000","message":"Done","commit_id":"30b4f60ec7bb7ec42540f87a3e646bc669e9bb81"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"fdcf02966177766d844e6b0c1d533242c561fabb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d3ef2c83_ff1f6e9f","updated":"2025-08-20 14:14:43.000000000","message":"Hi Yuval, without reading through, is there any way these could be made driver config?  As a library, os-brick has very few config opts.  I don\u0027t think any of the other connectors have custom configuration properties?\n\nAlso, it would be good to prefix the opts with \u0027lightos_\u0027 to make it clear that these are specific to your connector.","commit_id":"ff57dd5049d8b8629bb0eb564e4151a3ca5520b6"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"d6cc6e2c45da1e200f2ed43f27bbc1c448a272ed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d78fa64d_52f55abb","in_reply_to":"9899dd46_be0f96f1","updated":"2025-10-12 06:36:22.000000000","message":"Done\n\nAnything else preventing merge?","commit_id":"ff57dd5049d8b8629bb0eb564e4151a3ca5520b6"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"9b6ddd79ccd2aa438a4df1abb2b6dfa5fd5e6ff9","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"9899dd46_be0f96f1","in_reply_to":"d3ef2c83_ff1f6e9f","updated":"2025-08-21 09:03:23.000000000","message":"Hey,\nwill update the prefix for sure.\n\nI prefer leave it as is, changing the configuration will create a big refactor in the code the will cause us to miss the current merge window. why do we care if the config is under [defaults] or [lightbits] or [os-brick]\nanyway it will have to be in the nova.conf and cinder.conf.","commit_id":"ff57dd5049d8b8629bb0eb564e4151a3ca5520b6"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"475b7451a7b74b3b0031f2cfdfa2260bd464a644","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"ff7aeef0_35320631","updated":"2026-01-14 21:33:22.000000000","message":"We discussed this patch in today\u0027s cinder project meeting [0] and agreed that the config opts are not a problem; Yuval agreed to revise the commit message to explain why it makes sense to define them in os-brick and not the cinder driver.  Once he pushes the change, this should be good to go.\n\n[0] https://meetings.opendev.org/meetings/cinder/2026/cinder.2026-01-14-14.04.log.html#l-39","commit_id":"223f434a7feb8edd34fd35537235008732d7eca4"},{"author":{"_account_id":10058,"name":"Erlon R. Cruz","email":"erlon.rodrigues.cruz@canonical.com","username":"sombrafam"},"change_message_id":"fc5d266445f05e3c7fb73cfcf5a2dedfea4b6ec6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"10c47e95_6472932a","updated":"2026-01-21 14:38:39.000000000","message":"As per our discussion in the Cinder meeting[1], this presents a valid scenario that justifies adding the option in os-brick. Additionally, this change is localized to the connector and has no possibility of affecting other parts of the code.\n\n________________\n[1] https://meetings.opendev.org/meetings/cinder/2026/cinder.2026-01-14-14.04.html","commit_id":"a93df41abd00d32c69e46fd0482f9c289c7775a1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2bffb64df75181f74cbf03ecd2e3ea5c1c92bf21","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"6fd5ca55_8179f41b","updated":"2026-02-04 14:28:29.000000000","message":"Revisions LGTM.","commit_id":"e7d2cd0ad3a9d37132103cacd1fb1a5d5acec52a"}],"os_brick/initiator/connectors/lightos.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"58a00d05b33b33bd3398ef1837fe8782afeb1b30","unresolved":true,"context_lines":[{"line_number":35,"context_line":"from os_brick import utils"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"DEVICE_SCAN_ATTEMPTS_DEFAULT \u003d 5"},{"line_number":39,"context_line":"DISCOVERY_CLIENT_PORT \u003d 6060"},{"line_number":40,"context_line":"DISCOVERY_CLIENT_ADDRESS \u003d \"localhost\""},{"line_number":41,"context_line":"DISCOVERY_CLIENT_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":42,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"nvmec_pattern \u003d \".*nvme[0-9]+[cp][0-9]+.*\""}],"source_content_type":"text/x-python","patch_set":2,"id":"ab5bb16e_21db74a9","line":41,"range":{"start_line":38,"start_character":32,"end_line":41,"end_character":64},"updated":"2025-08-18 13:42:47.000000000","message":"I wonder if these constants are really useful now. Unless these are used anywhere else you can use raw values when setting default\u003d .","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"907ae39302ea596b9f7dae7c7ade5de1aa18c19d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"from os_brick import utils"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"DEVICE_SCAN_ATTEMPTS_DEFAULT \u003d 5"},{"line_number":39,"context_line":"DISCOVERY_CLIENT_PORT \u003d 6060"},{"line_number":40,"context_line":"DISCOVERY_CLIENT_ADDRESS \u003d \"localhost\""},{"line_number":41,"context_line":"DISCOVERY_CLIENT_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":42,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"nvmec_pattern \u003d \".*nvme[0-9]+[cp][0-9]+.*\""}],"source_content_type":"text/x-python","patch_set":2,"id":"1a5cd651_50c1363c","line":41,"range":{"start_line":38,"start_character":32,"end_line":41,"end_character":64},"in_reply_to":"6a783a9a_3f742f92","updated":"2025-08-18 14:45:45.000000000","message":"fixed","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"93d804306bdf7a0a12e6c5cf46398d2fabde4ddb","unresolved":true,"context_lines":[{"line_number":35,"context_line":"from os_brick import utils"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"DEVICE_SCAN_ATTEMPTS_DEFAULT \u003d 5"},{"line_number":39,"context_line":"DISCOVERY_CLIENT_PORT \u003d 6060"},{"line_number":40,"context_line":"DISCOVERY_CLIENT_ADDRESS \u003d \"localhost\""},{"line_number":41,"context_line":"DISCOVERY_CLIENT_DIR_PATH \u003d \u0027/etc/discovery-client/discovery.d/\u0027"},{"line_number":42,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"nvmec_pattern \u003d \".*nvme[0-9]+[cp][0-9]+.*\""}],"source_content_type":"text/x-python","patch_set":2,"id":"6a783a9a_3f742f92","line":41,"range":{"start_line":38,"start_character":32,"end_line":41,"end_character":64},"in_reply_to":"ab5bb16e_21db74a9","updated":"2025-08-18 13:44:28.000000000","message":"OK I noticed these are used in parameter descriptions as well but I think these explicit descriptions can be removed. See my comments below.","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"58a00d05b33b33bd3398ef1837fe8782afeb1b30","unresolved":true,"context_lines":[{"line_number":45,"context_line":"nvmec_match \u003d re.compile(nvmec_pattern)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"94e13054_af4800e0","line":48,"range":{"start_line":48,"start_character":8,"end_line":48,"end_character":14},"updated":"2025-08-18 13:42:47.000000000","message":"You can use HostAddressOpt","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"cc6f1b3a3fadecfcaf1ca094ffc72e4db704c928","unresolved":false,"context_lines":[{"line_number":45,"context_line":"nvmec_match \u003d re.compile(nvmec_pattern)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"00c5e05c_90dd0018","line":48,"range":{"start_line":48,"start_character":8,"end_line":48,"end_character":14},"in_reply_to":"94e13054_af4800e0","updated":"2025-08-18 15:06:21.000000000","message":"Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"93d804306bdf7a0a12e6c5cf46398d2fabde4ddb","unresolved":true,"context_lines":[{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"4fd1a8d2_c2d76c82","line":51,"range":{"start_line":50,"start_character":62,"end_line":51,"end_character":49},"updated":"2025-08-18 13:44:28.000000000","message":"Default value is added to sample config file automatically so this explanation might be redundant.","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"36416f66b81d28281098031178aa87872b1af788","unresolved":false,"context_lines":[{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a3641a2_0f26b096","line":51,"range":{"start_line":50,"start_character":62,"end_line":51,"end_character":49},"in_reply_to":"0630294e_8cc757b5","updated":"2025-08-18 15:26:38.000000000","message":"Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"40f7a6d972b04a69d2dfc21f24d3885922013199","unresolved":true,"context_lines":[{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"5d37b262_4bf0e15f","line":51,"range":{"start_line":50,"start_character":62,"end_line":51,"end_character":49},"in_reply_to":"4fd1a8d2_c2d76c82","updated":"2025-08-18 14:21:01.000000000","message":"can you explain this claim? where I can see the sample config?","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"6d554d3987102fe7d29ba4d510ea061acfc0b0ae","unresolved":true,"context_lines":[{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"b28af861_b8e35d99","line":51,"range":{"start_line":50,"start_character":62,"end_line":51,"end_character":49},"in_reply_to":"5d37b262_4bf0e15f","updated":"2025-08-18 15:01:45.000000000","message":"The sample file can be generated by the tool named oslo-config-generator. For example you can run `tox -e genconfig` in cinder repo and then a sample file is generated at etc/ (note that we likely have to adjust the input file, so you may not see these new options right now).\n\nAlso, I didn\u0027t mean you can remove the whole description but you can remove only the part explaining the default value. See https://review.opendev.org/c/openstack/os-brick/+/957708 as a reference.","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"d06b2dcc4e1d257cd4966afcd9200be551323131","unresolved":true,"context_lines":[{"line_number":47,"context_line":"_opts \u003d ["},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027discovery_client_address\u0027,"},{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"0630294e_8cc757b5","line":51,"range":{"start_line":50,"start_character":62,"end_line":51,"end_character":49},"in_reply_to":"b28af861_b8e35d99","updated":"2025-08-18 15:20:57.000000000","message":"I see, ok I misunderstood, I saw you brought it back, thanks! missed there one \"help\" I uploaded a patch","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"58a00d05b33b33bd3398ef1837fe8782afeb1b30","unresolved":true,"context_lines":[{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"},{"line_number":55,"context_line":"                    f\u0027{DISCOVERY_CLIENT_PORT}.\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"2e00eae7_05aea6a9","line":52,"range":{"start_line":52,"start_character":8,"end_line":52,"end_character":14},"updated":"2025-08-18 13:42:47.000000000","message":"Use PortOpt","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"cc6f1b3a3fadecfcaf1ca094ffc72e4db704c928","unresolved":false,"context_lines":[{"line_number":49,"context_line":"               default\u003dDISCOVERY_CLIENT_ADDRESS,"},{"line_number":50,"context_line":"               help\u003d\u0027Address of the LightOS discovery client. Default is \u0027"},{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"},{"line_number":55,"context_line":"                    f\u0027{DISCOVERY_CLIENT_PORT}.\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"22f1d9ac_7f13f2dc","line":52,"range":{"start_line":52,"start_character":8,"end_line":52,"end_character":14},"in_reply_to":"2e00eae7_05aea6a9","updated":"2025-08-18 15:06:21.000000000","message":"Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"93d804306bdf7a0a12e6c5cf46398d2fabde4ddb","unresolved":true,"context_lines":[{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"},{"line_number":55,"context_line":"                    f\u0027{DISCOVERY_CLIENT_PORT}.\u0027),"},{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"b2d6c67c_2f75a26c","line":55,"range":{"start_line":54,"start_character":59,"end_line":55,"end_character":47},"updated":"2025-08-18 13:44:28.000000000","message":"ditto","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"907ae39302ea596b9f7dae7c7ade5de1aa18c19d","unresolved":false,"context_lines":[{"line_number":51,"context_line":"                    f\u0027{DISCOVERY_CLIENT_ADDRESS}.\u0027),"},{"line_number":52,"context_line":"    cfg.IntOpt(\u0027discovery_client_port\u0027,"},{"line_number":53,"context_line":"               default\u003dDISCOVERY_CLIENT_PORT,"},{"line_number":54,"context_line":"               help\u003d\u0027Port of the LightOS discovery client. Default is \u0027"},{"line_number":55,"context_line":"                    f\u0027{DISCOVERY_CLIENT_PORT}.\u0027),"},{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"dd117966_2e86871f","line":55,"range":{"start_line":54,"start_character":59,"end_line":55,"end_character":47},"in_reply_to":"b2d6c67c_2f75a26c","updated":"2025-08-18 14:45:45.000000000","message":"fixed","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"93d804306bdf7a0a12e6c5cf46398d2fabde4ddb","unresolved":true,"context_lines":[{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"},{"line_number":59,"context_line":"                    f\u0027Default is {DISCOVERY_CLIENT_DIR_PATH}.\u0027)"},{"line_number":60,"context_line":"]"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"cfg.CONF.register_opts(_opts, group\u003d\u0027os_brick\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"065e0bfa_f601beae","line":59,"range":{"start_line":59,"start_character":22,"end_line":59,"end_character":62},"updated":"2025-08-18 13:44:28.000000000","message":"ditto","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"907ae39302ea596b9f7dae7c7ade5de1aa18c19d","unresolved":true,"context_lines":[{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"},{"line_number":59,"context_line":"                    f\u0027Default is {DISCOVERY_CLIENT_DIR_PATH}.\u0027)"},{"line_number":60,"context_line":"]"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"cfg.CONF.register_opts(_opts, group\u003d\u0027os_brick\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"86afbcdd_a4428eee","line":59,"range":{"start_line":59,"start_character":22,"end_line":59,"end_character":62},"in_reply_to":"065e0bfa_f601beae","updated":"2025-08-18 14:45:45.000000000","message":"I dont understand the ditto here - I didnt find DitOpt","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"6d554d3987102fe7d29ba4d510ea061acfc0b0ae","unresolved":true,"context_lines":[{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"},{"line_number":59,"context_line":"                    f\u0027Default is {DISCOVERY_CLIENT_DIR_PATH}.\u0027)"},{"line_number":60,"context_line":"]"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"cfg.CONF.register_opts(_opts, group\u003d\u0027os_brick\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"d4686ebe_c85349bf","line":59,"range":{"start_line":59,"start_character":22,"end_line":59,"end_character":62},"in_reply_to":"86afbcdd_a4428eee","updated":"2025-08-18 15:01:45.000000000","message":"I meant that you can also remove description about the default value.","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"5954ed20b8309e060934a8fce2c9b9ab474597e0","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    cfg.StrOpt(\u0027discovery_client_dir_path\u0027,"},{"line_number":57,"context_line":"               default\u003dDISCOVERY_CLIENT_DIR_PATH,"},{"line_number":58,"context_line":"               help\u003d\u0027Directory path for the LightOS discovery client files. \u0027"},{"line_number":59,"context_line":"                    f\u0027Default is {DISCOVERY_CLIENT_DIR_PATH}.\u0027)"},{"line_number":60,"context_line":"]"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"cfg.CONF.register_opts(_opts, group\u003d\u0027os_brick\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ff409519_a174f8b2","line":59,"range":{"start_line":59,"start_character":22,"end_line":59,"end_character":62},"in_reply_to":"d4686ebe_c85349bf","updated":"2025-08-18 15:05:56.000000000","message":"Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"58a00d05b33b33bd3398ef1837fe8782afeb1b30","unresolved":true,"context_lines":[{"line_number":82,"context_line":"            device_scan_attempts\u003ddevice_scan_attempts,"},{"line_number":83,"context_line":"            *args, **kwargs)"},{"line_number":84,"context_line":"        self.message_queue \u003d message_queue"},{"line_number":85,"context_line":"        self.DISCOVERY_DIR_PATH \u003d cfg.CONF.os_brick.discovery_client_dir_path"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    @staticmethod"},{"line_number":88,"context_line":"    def get_ip_addresses():"}],"source_content_type":"text/x-python","patch_set":2,"id":"b941b9cd_f1725e13","line":85,"range":{"start_line":85,"start_character":13,"end_line":85,"end_character":31},"updated":"2025-08-18 13:42:47.000000000","message":"Because this is no longer a constant, using lower case letters may be better","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"cc6f1b3a3fadecfcaf1ca094ffc72e4db704c928","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            device_scan_attempts\u003ddevice_scan_attempts,"},{"line_number":83,"context_line":"            *args, **kwargs)"},{"line_number":84,"context_line":"        self.message_queue \u003d message_queue"},{"line_number":85,"context_line":"        self.DISCOVERY_DIR_PATH \u003d cfg.CONF.os_brick.discovery_client_dir_path"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    @staticmethod"},{"line_number":88,"context_line":"    def get_ip_addresses():"}],"source_content_type":"text/x-python","patch_set":2,"id":"0b03731f_dcc64832","line":85,"range":{"start_line":85,"start_character":13,"end_line":85,"end_character":31},"in_reply_to":"b941b9cd_f1725e13","updated":"2025-08-18 15:06:21.000000000","message":"Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"58a00d05b33b33bd3398ef1837fe8782afeb1b30","unresolved":true,"context_lines":[{"line_number":146,"context_line":"        return os.path.join(self.DISCOVERY_DIR_PATH, \"%s.conf\" % uuid)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    def find_dsc(self):"},{"line_number":149,"context_line":"        conn \u003d http.client.HTTPConnection("},{"line_number":150,"context_line":"            cfg.CONF.os_brick.discovery_client_address,"},{"line_number":151,"context_line":"            cfg.CONF.os_brick.discovery_client_port)"},{"line_number":152,"context_line":"        try:"},{"line_number":153,"context_line":"            conn.request(\"HEAD\", \"/metrics\")"},{"line_number":154,"context_line":"            resp \u003d conn.getresponse()"}],"source_content_type":"text/x-python","patch_set":2,"id":"294d8506_b5e5ac9c","line":151,"range":{"start_line":149,"start_character":42,"end_line":151,"end_character":52},"updated":"2025-08-18 13:42:47.000000000","message":"Maybe set these to class attributes right after L85 to make all config option access consistent ?","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"6d554d3987102fe7d29ba4d510ea061acfc0b0ae","unresolved":true,"context_lines":[{"line_number":146,"context_line":"        return os.path.join(self.DISCOVERY_DIR_PATH, \"%s.conf\" % uuid)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    def find_dsc(self):"},{"line_number":149,"context_line":"        conn \u003d http.client.HTTPConnection("},{"line_number":150,"context_line":"            cfg.CONF.os_brick.discovery_client_address,"},{"line_number":151,"context_line":"            cfg.CONF.os_brick.discovery_client_port)"},{"line_number":152,"context_line":"        try:"},{"line_number":153,"context_line":"            conn.request(\"HEAD\", \"/metrics\")"},{"line_number":154,"context_line":"            resp \u003d conn.getresponse()"}],"source_content_type":"text/x-python","patch_set":2,"id":"9403a0ac_fb58cbaf","line":151,"range":{"start_line":149,"start_character":42,"end_line":151,"end_character":52},"in_reply_to":"294d8506_b5e5ac9c","updated":"2025-08-18 15:01:45.000000000","message":"I meant that you can also remove description about the default value.","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"5954ed20b8309e060934a8fce2c9b9ab474597e0","unresolved":false,"context_lines":[{"line_number":146,"context_line":"        return os.path.join(self.DISCOVERY_DIR_PATH, \"%s.conf\" % uuid)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"    def find_dsc(self):"},{"line_number":149,"context_line":"        conn \u003d http.client.HTTPConnection("},{"line_number":150,"context_line":"            cfg.CONF.os_brick.discovery_client_address,"},{"line_number":151,"context_line":"            cfg.CONF.os_brick.discovery_client_port)"},{"line_number":152,"context_line":"        try:"},{"line_number":153,"context_line":"            conn.request(\"HEAD\", \"/metrics\")"},{"line_number":154,"context_line":"            resp \u003d conn.getresponse()"}],"source_content_type":"text/x-python","patch_set":2,"id":"0d40c094_54cc0165","line":151,"range":{"start_line":149,"start_character":42,"end_line":151,"end_character":52},"in_reply_to":"9403a0ac_fb58cbaf","updated":"2025-08-18 15:05:56.000000000","message":"Oops. I replied to the wrong comment. Done","commit_id":"b27a8e2b1731c9862cf05999d605e506940829e4"}]}
