)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Vanou Ishii \u003cishii.vanou@fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-12-05 18:09:06 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Handle HTTP connection incompatibility in iRMC S6 2.x"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP"},{"line_number":10,"context_line":"connection to REST API."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"aa7f3da0_a014c81e","line":7,"updated":"2022-12-07 21:31:29.000000000","message":"The title of the change is little misleading. \"[iRMC] identify BMC version\" seems more in-line with the code and the comments on line 12-14.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Vanou Ishii \u003cishii.vanou@fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-12-05 18:09:06 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Handle HTTP connection incompatibility in iRMC S6 2.x"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP"},{"line_number":10,"context_line":"connection to REST API."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"565e2b28_68b79142","line":7,"in_reply_to":"aa7f3da0_a014c81e","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"25ca8fb04f9e4d2d515d096a31341fdc05a9778a","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Vanou Ishii \u003cishii.vanou@fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-12-12 12:32:45 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[iRMC] indentify BMC firmware version"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP"},{"line_number":10,"context_line":"connection to REST API."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ae169400_ccaf3ce9","line":7,"updated":"2022-12-12 23:15:09.000000000","message":"spelling: identify","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"85187bb652f7994952635ec47f765d962a552eb1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Vanou Ishii \u003cishii.vanou@fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2022-12-12 12:32:45 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[iRMC] indentify BMC firmware version"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP"},{"line_number":10,"context_line":"connection to REST API."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"91b904c0_e75a03c7","line":7,"in_reply_to":"ae169400_ccaf3ce9","updated":"2022-12-13 05:52:51.000000000","message":"Ack","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"5ceb8b67_a30de674","updated":"2022-12-08 07:01:32.000000000","message":"Thanks Julia.\nRegarding your concern on periodic task, another approach is to implement vendor passthru method.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"85187bb652f7994952635ec47f765d962a552eb1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4169ddf5_40a998cf","updated":"2022-12-13 05:52:51.000000000","message":"Thanks for review!","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"25ca8fb04f9e4d2d515d096a31341fdc05a9778a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d535b715_c0607bd2","updated":"2022-12-12 23:15:09.000000000","message":"This patch seems to do two things:\n- Add a vendor passthru for getting firmware version\n- Some kind of test to see if you can get to the REST API on port 443 or 80\n\nI\u0027m not sure I fully understand what\u0027s going on; can we ensure both pieces are mentioned in the release note?\n","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"85187bb652f7994952635ec47f765d962a552eb1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3d1e088b_8de0fbc0","in_reply_to":"d535b715_c0607bd2","updated":"2022-12-13 05:52:51.000000000","message":"Thanks for review. I updated release note to mention what functionality is added.","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"c035e04565971de4ba12101f3e0d236164b6a289","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"48da976d_054aabd4","updated":"2023-01-18 02:59:28.000000000","message":"fujitsu-irmc-recheck","commit_id":"eae33a0acbfdbe30b5d79360e76668737866e371"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"af4a17114b440bfb9fea3c59ff0b9ad600300d3b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ede0330b_f48dc37e","updated":"2023-01-18 01:25:32.000000000","message":"fujitsu-irmc-recheck","commit_id":"eae33a0acbfdbe30b5d79360e76668737866e371"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d433914115bfd81674eb50cdc71520adb367a3f0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2dacaa86_d05e41c9","updated":"2023-01-17 00:35:04.000000000","message":"recheck","commit_id":"eae33a0acbfdbe30b5d79360e76668737866e371"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"72ba37bd93917181b6392a055f65d11f4392532a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"3e7f5191_0d419da3","updated":"2023-01-17 11:24:00.000000000","message":"recheck","commit_id":"eae33a0acbfdbe30b5d79360e76668737866e371"}],"doc/source/admin/drivers/irmc.rst":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":204,"context_line":"       Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP connection to"},{"line_number":205,"context_line":"       REST API. If you deploy server with iRMS S6 2.00 and later, please"},{"line_number":206,"context_line":"       set ``port`` to 443."},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"  - ``auth_method``: Authentication method for iRMC operations;"},{"line_number":209,"context_line":"    either ``basic`` or ``digest``. The default value is ``basic``. Optional."},{"line_number":210,"context_line":"  - ``client_timeout``: Timeout (in seconds) for iRMC"}],"source_content_type":"text/x-rst","patch_set":1,"id":"4d97f3f2_37a1de04","line":207,"updated":"2022-11-21 23:57:20.000000000","message":"This change is also adding a verify step... you may want to be a bit more verbose in the documentation.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":204,"context_line":"       Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP connection to"},{"line_number":205,"context_line":"       REST API. If you deploy server with iRMS S6 2.00 and later, please"},{"line_number":206,"context_line":"       set ``port`` to 443."},{"line_number":207,"context_line":""},{"line_number":208,"context_line":"  - ``auth_method``: Authentication method for iRMC operations;"},{"line_number":209,"context_line":"    either ``basic`` or ``digest``. The default value is ``basic``. Optional."},{"line_number":210,"context_line":"  - ``client_timeout``: Timeout (in seconds) for iRMC"}],"source_content_type":"text/x-rst","patch_set":1,"id":"c3d8118e_89f27e02","line":207,"in_reply_to":"4d97f3f2_37a1de04","updated":"2022-12-02 07:06:06.000000000","message":"Done","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"feb9b05d9dd579f441d05f3906af91a0a540d422","unresolved":true,"context_lines":[{"line_number":212,"context_line":"    or 443. The default value is 443. Optional."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"    .. note::"},{"line_number":215,"context_line":"       Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP connection to"},{"line_number":216,"context_line":"       REST API. If you deploy server with iRMS S6 2.00 and later, please"},{"line_number":217,"context_line":"       set ``port`` to 443."},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"       ``irmc`` hardware type provides ``verify_step`` named"},{"line_number":220,"context_line":"       ``verify_http_https_connection_and_fw_version`` to check HTTP(S)"}],"source_content_type":"text/x-rst","patch_set":5,"id":"69caac7a_176970fb","line":217,"range":{"start_line":215,"start_character":0,"end_line":217,"end_character":27},"updated":"2023-01-11 13:49:18.000000000","message":"Please add an \"upgrade\" note to the release notes to this effect, as we don\u0027t want to inadvertently break anyone upon upgrade and we ultimately want operators to be able to be aware and discover things they need to be aware of as quickly as possible when upgrading.\n\nBut don\u0027t remove the note from here, as keeping it in documentation itself is also important. These documents get rendered in different places and are referenced at different times by operators.\n\nAdditionally, ``port`` should be ``irmc_port``","commit_id":"ea2a5d12aa552a63665f9f04fb78a21608a79bb2"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"ef4971014358ee8b49629d8a8df7fb072d5d9473","unresolved":false,"context_lines":[{"line_number":212,"context_line":"    or 443. The default value is 443. Optional."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"    .. note::"},{"line_number":215,"context_line":"       Since iRMC S6 2.00, iRMC firmware doesn\u0027t support HTTP connection to"},{"line_number":216,"context_line":"       REST API. If you deploy server with iRMS S6 2.00 and later, please"},{"line_number":217,"context_line":"       set ``port`` to 443."},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"       ``irmc`` hardware type provides ``verify_step`` named"},{"line_number":220,"context_line":"       ``verify_http_https_connection_and_fw_version`` to check HTTP(S)"}],"source_content_type":"text/x-rst","patch_set":5,"id":"410167b1_408b654b","line":217,"range":{"start_line":215,"start_character":0,"end_line":217,"end_character":27},"in_reply_to":"69caac7a_176970fb","updated":"2023-01-16 09:38:32.000000000","message":"Thanks. I added upgrade note to release note.\nThis Ironic doc mentions [irmc] section parameters in ironic.conf. So ``port`` is correct (corresponding driver_info parameter is irmc_port as you point out).","commit_id":"ea2a5d12aa552a63665f9f04fb78a21608a79bb2"}],"ironic/conf/irmc.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":140,"context_line":"                      \u0027overridden by `instance_info/kernel_append_params` \u0027"},{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor\u0027)),"}],"source_content_type":"text/x-python","patch_set":1,"id":"6bdd0317_3e5cc81a","line":143,"updated":"2022-11-21 23:57:20.000000000","message":"So every sixty seconds is concerning.\n\nAs if you have say 1000 nodes, and it takes 3 seconds per node to check each node, and you have three conductors.\n\n333.3 nodes per conductor\n3 seconds per node\n1000 seconds for each conductor to complete it\u0027s responsible list of nodes\n\nAnd then it repeats.\n\nMeanwhile, ~334 database queries per conductor before considering locks, writes, etc.\n\nCould we instead take a path of \"check, and cache it when we know we need to\" ? I think the verify step makes much more sense.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                      \u0027overridden by `instance_info/kernel_append_params` \u0027"},{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor\u0027)),"}],"source_content_type":"text/x-python","patch_set":1,"id":"4d8b6bfb_09ec7735","line":143,"in_reply_to":"6bdd0317_3e5cc81a","updated":"2022-12-02 07:06:06.000000000","message":"Thanks valuable advice. I modify periodic task and \u0027set_irmc_version\u0027 to try to get lock only when it needs.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":140,"context_line":"                      \u0027overridden by `instance_info/kernel_append_params` \u0027"},{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"98b0fbca_33e75ad5","line":143,"updated":"2022-12-07 21:31:29.000000000","message":"60 seconds is alarmingly too frequent.\n\nFor example, if you have 1000 nodes, and this step is to execute every sixty seconds, the odds of getting through nodes every sixty seconds is kind of unrealistic.\n\nSo essentially we\u0027ll end up constantly looping polling the firmware version, and most operators only change the version of the firmware maybe a couple times per year.\n\nCould a better strategy be to check before and update the value if it is older than some period of time?","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"df5ef4dff4dd40ed4bf26098f01b4d894e1730d4","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                      \u0027overridden by `instance_info/kernel_append_params` \u0027"},{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"681e089a_1e8ece10","line":143,"in_reply_to":"24722e52_aab4e72b","updated":"2022-12-12 01:55:53.000000000","message":"I decided to implement vendor passthru method which runs irmc_common.set_irmc_version. Now there is no concern regarding periodic task.\nAnd I remove periodic task.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":true,"context_lines":[{"line_number":140,"context_line":"                      \u0027overridden by `instance_info/kernel_append_params` \u0027"},{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor. \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"24722e52_aab4e72b","line":143,"in_reply_to":"98b0fbca_33e75ad5","updated":"2022-12-08 07:01:32.000000000","message":"There is 2 options regarding this. One is to implement periodic task as current patch does. Second is to implement vendor passthru method through which user can trigger fetching iRMC firmware version.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor. \u0027"},{"line_number":147,"context_line":"                      \u0027If set to 0, Ironic conductor stops periodic check of \u0027"},{"line_number":148,"context_line":"                      \u0027iRMC firmware version.\u0027)),"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"]"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"731b43e2_faeace6d","line":148,"range":{"start_line":144,"start_character":0,"end_line":148,"end_character":49},"updated":"2022-12-07 21:31:29.000000000","message":"Please note the interval unit type. i.e. seconds.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":141,"context_line":"                      \u0027property.\u0027)),"},{"line_number":142,"context_line":"    cfg.IntOpt(\u0027irmc_version_caching_interval\u0027,"},{"line_number":143,"context_line":"               default\u003d60,"},{"line_number":144,"context_line":"               help\u003d_(\u0027Interval between Ironic conductor tries to check iRMC \u0027"},{"line_number":145,"context_line":"                      \u0027firmware version of each nodes whose driver is irmc \u0027"},{"line_number":146,"context_line":"                      \u0027and belongs to that conductor. \u0027"},{"line_number":147,"context_line":"                      \u0027If set to 0, Ironic conductor stops periodic check of \u0027"},{"line_number":148,"context_line":"                      \u0027iRMC firmware version.\u0027)),"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"]"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"6dada2ff_b9820f45","line":148,"range":{"start_line":144,"start_character":0,"end_line":148,"end_character":49},"in_reply_to":"731b43e2_faeace6d","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"}],"ironic/drivers/modules/irmc/common.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":528,"context_line":"    \"\"\""},{"line_number":529,"context_line":""},{"line_number":530,"context_line":"    try:"},{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"2d26872c_a01ea0fe","line":531,"updated":"2022-11-21 23:57:20.000000000","message":"keep in mind, your in this method with a shared lock.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":528,"context_line":"    \"\"\""},{"line_number":529,"context_line":""},{"line_number":530,"context_line":"    try:"},{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"fc43c872_02471887","line":531,"in_reply_to":"2d26872c_a01ea0fe","updated":"2022-12-02 07:06:06.000000000","message":"Done","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":530,"context_line":"    try:"},{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":535,"context_line":"                                      f\"{irmc_os}/{fw_version}\")"},{"line_number":536,"context_line":"        node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"4baf9129_c220fc44","line":533,"updated":"2022-11-21 23:57:20.000000000","message":"So, lets not lock the node if nothing has changed.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":530,"context_line":"    try:"},{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":535,"context_line":"                                      f\"{irmc_os}/{fw_version}\")"},{"line_number":536,"context_line":"        node.save()"}],"source_content_type":"text/x-python","patch_set":1,"id":"804aa21e_9eeea20d","line":533,"in_reply_to":"4baf9129_c220fc44","updated":"2022-12-02 07:06:06.000000000","message":"Done","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":535,"context_line":"                                      f\"{irmc_os}/{fw_version}\")"},{"line_number":536,"context_line":"        node.save()"},{"line_number":537,"context_line":"        LOG.debug(f\"Fetch iRMC FW version of node {node.uuid}: \""},{"line_number":538,"context_line":"                  f\"{irmc_os}/{fw_version}\")"},{"line_number":539,"context_line":"    except scci.SCCIError as irmc_exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"970feb43_9ae18975","line":536,"range":{"start_line":534,"start_character":0,"end_line":536,"end_character":19},"updated":"2022-11-21 23:57:20.000000000","message":"You need to upgrade your lock before doing this.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":531,"context_line":"        report \u003d get_irmc_report(node)"},{"line_number":532,"context_line":"        irmc_os, fw_version \u003d scci.get_irmc_version_str(report)"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":"        node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":535,"context_line":"                                      f\"{irmc_os}/{fw_version}\")"},{"line_number":536,"context_line":"        node.save()"},{"line_number":537,"context_line":"        LOG.debug(f\"Fetch iRMC FW version of node {node.uuid}: \""},{"line_number":538,"context_line":"                  f\"{irmc_os}/{fw_version}\")"},{"line_number":539,"context_line":"    except scci.SCCIError as irmc_exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ad82dc6a_320e33a2","line":536,"range":{"start_line":534,"start_character":0,"end_line":536,"end_character":19},"in_reply_to":"970feb43_9ae18975","updated":"2022-12-02 07:06:06.000000000","message":"Done","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":538,"context_line":"            node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":539,"context_line":"                                          f\"{irmc_os}/{fw_version}\")"},{"line_number":540,"context_line":"            node.save()"},{"line_number":541,"context_line":"        LOG.debug(f\"Fetch iRMC FW version of node {node.uuid}: \""},{"line_number":542,"context_line":"                  f\"{irmc_os}/{fw_version}\")"},{"line_number":543,"context_line":"    except scci.SCCIError as irmc_exception:"},{"line_number":544,"context_line":"        LOG.error(\"Failed to fetch iRMC FW version for node %s\","},{"line_number":545,"context_line":"                  node.uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"a9c8dce0_01943990","line":542,"range":{"start_line":541,"start_character":0,"end_line":542,"end_character":44},"updated":"2022-12-07 21:31:29.000000000","message":"This seems un-needed as it will be logged whenever called, as opposed to when changed.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":538,"context_line":"            node.set_driver_internal_info(\u0027irmc_fw_version\u0027,"},{"line_number":539,"context_line":"                                          f\"{irmc_os}/{fw_version}\")"},{"line_number":540,"context_line":"            node.save()"},{"line_number":541,"context_line":"        LOG.debug(f\"Fetch iRMC FW version of node {node.uuid}: \""},{"line_number":542,"context_line":"                  f\"{irmc_os}/{fw_version}\")"},{"line_number":543,"context_line":"    except scci.SCCIError as irmc_exception:"},{"line_number":544,"context_line":"        LOG.error(\"Failed to fetch iRMC FW version for node %s\","},{"line_number":545,"context_line":"                  node.uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"d8cc1834_a3f22d37","line":542,"range":{"start_line":541,"start_character":0,"end_line":542,"end_character":44},"in_reply_to":"a9c8dce0_01943990","updated":"2022-12-08 07:01:32.000000000","message":"Done","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"}],"ironic/drivers/modules/irmc/management.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":405,"context_line":"        return irmc_common.set_secure_boot_mode(task.node, state)"},{"line_number":406,"context_line":""},{"line_number":407,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":408,"context_line":"    def verify_http_https_connection_and_fw_version(self, task):"},{"line_number":409,"context_line":"        \"\"\"Check http(s) connection to iRMC and save fw version"},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"        :param task\u0027 A task from TaskManager"}],"source_content_type":"text/x-python","patch_set":1,"id":"648fa58f_7a5e51db","line":408,"updated":"2022-11-21 23:57:20.000000000","message":"so it makes sense to have a verify step...","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":405,"context_line":"        return irmc_common.set_secure_boot_mode(task.node, state)"},{"line_number":406,"context_line":""},{"line_number":407,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":408,"context_line":"    def verify_http_https_connection_and_fw_version(self, task):"},{"line_number":409,"context_line":"        \"\"\"Check http(s) connection to iRMC and save fw version"},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"        :param task\u0027 A task from TaskManager"}],"source_content_type":"text/x-python","patch_set":1,"id":"488b9edf_c3c60468","line":408,"in_reply_to":"648fa58f_7a5e51db","updated":"2022-12-02 07:06:06.000000000","message":"Ack","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":445,"context_line":""},{"line_number":446,"context_line":"    @periodics.node_periodic(purpose\u003d\u0027check and cache iRMC firmware version\u0027,"},{"line_number":447,"context_line":"                             spacing\u003dCONF.irmc.irmc_version_caching_interval,"},{"line_number":448,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027})"},{"line_number":449,"context_line":"    def cache_irmc_firmware_version(self, task, manager, context):"},{"line_number":450,"context_line":"        try:"},{"line_number":451,"context_line":"            if not (task.node.provision_state in"}],"source_content_type":"text/x-python","patch_set":1,"id":"bcf24722_f57c47b7","line":448,"updated":"2022-11-21 23:57:20.000000000","message":"set it up so it can also be disabled if the value is set to 0. i.e. Support the enabled parameter.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":445,"context_line":""},{"line_number":446,"context_line":"    @periodics.node_periodic(purpose\u003d\u0027check and cache iRMC firmware version\u0027,"},{"line_number":447,"context_line":"                             spacing\u003dCONF.irmc.irmc_version_caching_interval,"},{"line_number":448,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027})"},{"line_number":449,"context_line":"    def cache_irmc_firmware_version(self, task, manager, context):"},{"line_number":450,"context_line":"        try:"},{"line_number":451,"context_line":"            if not (task.node.provision_state in"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ef4dafe_9579ac88","line":448,"in_reply_to":"bcf24722_f57c47b7","updated":"2022-12-02 07:06:06.000000000","message":"I think \u0027periodic\u0027 called in \u0027node_periodic\u0027 disables this periodic task when spacing\u003d\u003d0. So no need to another work.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":448,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027})"},{"line_number":449,"context_line":"    def cache_irmc_firmware_version(self, task, manager, context):"},{"line_number":450,"context_line":"        try:"},{"line_number":451,"context_line":"            if not (task.node.provision_state in"},{"line_number":452,"context_line":"                    conductor_manager.SYNC_EXCLUDED_STATES"},{"line_number":453,"context_line":"                    or task.node.maintenance"},{"line_number":454,"context_line":"                    or task.node.reservation):"}],"source_content_type":"text/x-python","patch_set":1,"id":"b061a37c_358c0f4d","line":451,"updated":"2022-11-21 23:57:20.000000000","message":"you may want to exclude nodes with current reservations to head off conflicts.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":448,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027})"},{"line_number":449,"context_line":"    def cache_irmc_firmware_version(self, task, manager, context):"},{"line_number":450,"context_line":"        try:"},{"line_number":451,"context_line":"            if not (task.node.provision_state in"},{"line_number":452,"context_line":"                    conductor_manager.SYNC_EXCLUDED_STATES"},{"line_number":453,"context_line":"                    or task.node.maintenance"},{"line_number":454,"context_line":"                    or task.node.reservation):"}],"source_content_type":"text/x-python","patch_set":1,"id":"d9397573_1b5f9ccd","line":451,"in_reply_to":"b061a37c_358c0f4d","updated":"2022-12-02 07:06:06.000000000","message":"I change argument to \u0027node_periodic\u0027 to exclude reserved node without TaskManager.__enter__.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"1920a1394f52208cbaa6f6e671439f3d7ebaba01","unresolved":true,"context_lines":[{"line_number":452,"context_line":"                    conductor_manager.SYNC_EXCLUDED_STATES"},{"line_number":453,"context_line":"                    or task.node.maintenance"},{"line_number":454,"context_line":"                    or task.node.reservation):"},{"line_number":455,"context_line":"                node \u003d task.node"},{"line_number":456,"context_line":"                irmc_common.set_irmc_version(node)"},{"line_number":457,"context_line":"        except (exception.IRMCOperationError,"},{"line_number":458,"context_line":"                exception.InvalidParameterValue,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a6f352a_c54d2912","line":455,"range":{"start_line":455,"start_character":16,"end_line":455,"end_character":32},"updated":"2022-11-21 23:57:20.000000000","message":"I would do this earlier up around line 450.","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"d51203b5f6b2071b000be224b479b8682e0e48f6","unresolved":false,"context_lines":[{"line_number":452,"context_line":"                    conductor_manager.SYNC_EXCLUDED_STATES"},{"line_number":453,"context_line":"                    or task.node.maintenance"},{"line_number":454,"context_line":"                    or task.node.reservation):"},{"line_number":455,"context_line":"                node \u003d task.node"},{"line_number":456,"context_line":"                irmc_common.set_irmc_version(node)"},{"line_number":457,"context_line":"        except (exception.IRMCOperationError,"},{"line_number":458,"context_line":"                exception.InvalidParameterValue,"}],"source_content_type":"text/x-python","patch_set":1,"id":"8ad0a861_f47f9b82","line":455,"range":{"start_line":455,"start_character":16,"end_line":455,"end_character":32},"in_reply_to":"3a6f352a_c54d2912","updated":"2022-12-02 07:06:06.000000000","message":"Done","commit_id":"9b598b77094aca4b70892031f3ef30a23728a49c"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":442,"context_line":"                operation\u003d\u0027configuration validation\u0027,"},{"line_number":443,"context_line":"                error\u003dirmc_exception)"},{"line_number":444,"context_line":""},{"line_number":445,"context_line":"    @periodics.node_periodic(purpose\u003d\u0027check and cache iRMC firmware version\u0027,"},{"line_number":446,"context_line":"                             spacing\u003dCONF.irmc.irmc_version_caching_interval,"},{"line_number":447,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027},"},{"line_number":448,"context_line":"                             predicate\u003dlambda n: n.reservation is None,"}],"source_content_type":"text/x-python","patch_set":2,"id":"0583c533_d66d3daa","line":445,"updated":"2022-12-07 21:31:29.000000000","message":"Is a periodic task *really* needed?","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":true,"context_lines":[{"line_number":442,"context_line":"                operation\u003d\u0027configuration validation\u0027,"},{"line_number":443,"context_line":"                error\u003dirmc_exception)"},{"line_number":444,"context_line":""},{"line_number":445,"context_line":"    @periodics.node_periodic(purpose\u003d\u0027check and cache iRMC firmware version\u0027,"},{"line_number":446,"context_line":"                             spacing\u003dCONF.irmc.irmc_version_caching_interval,"},{"line_number":447,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027},"},{"line_number":448,"context_line":"                             predicate\u003dlambda n: n.reservation is None,"}],"source_content_type":"text/x-python","patch_set":2,"id":"77f778e6_2130d06d","line":445,"in_reply_to":"0583c533_d66d3daa","updated":"2022-12-08 07:01:32.000000000","message":"I expect the situation in which user update iRMC firmware of deployed baremetal. Firmware update is necessary to handle firmware bug. In this case, fetching iRMC firmware version only at verifying is not enough. So I think periodic task needs to be.\n\nOr implement vendor_passthru method through which user trigger fetching iRMC firmware version.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"df5ef4dff4dd40ed4bf26098f01b4d894e1730d4","unresolved":false,"context_lines":[{"line_number":442,"context_line":"                operation\u003d\u0027configuration validation\u0027,"},{"line_number":443,"context_line":"                error\u003dirmc_exception)"},{"line_number":444,"context_line":""},{"line_number":445,"context_line":"    @periodics.node_periodic(purpose\u003d\u0027check and cache iRMC firmware version\u0027,"},{"line_number":446,"context_line":"                             spacing\u003dCONF.irmc.irmc_version_caching_interval,"},{"line_number":447,"context_line":"                             filters\u003d{\u0027driver\u0027: \u0027irmc\u0027},"},{"line_number":448,"context_line":"                             predicate\u003dlambda n: n.reservation is None,"}],"source_content_type":"text/x-python","patch_set":2,"id":"71b74c9a_6d0c6e3e","line":445,"in_reply_to":"77f778e6_2130d06d","updated":"2022-12-12 01:55:53.000000000","message":"I implemented vendor passthru method which runs irmc_common.set_irmc_version. And remove this periodic task.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"25ca8fb04f9e4d2d515d096a31341fdc05a9778a","unresolved":true,"context_lines":[{"line_number":422,"context_line":"            elcm_license \u003d irmc_common.check_elcm_license(task.node)"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"            # On iRMC S6 2.00, access to REST API through HTTP returns 404"},{"line_number":425,"context_line":"            if elcm_license.get(\u0027status_code\u0027) not in (200, 500):"},{"line_number":426,"context_line":"                port \u003d task.node.driver_info.get("},{"line_number":427,"context_line":"                    \u0027irmc_port\u0027, CONF.irmc.get(\u0027port\u0027))"},{"line_number":428,"context_line":"                if port \u003d\u003d 80:"}],"source_content_type":"text/x-python","patch_set":4,"id":"4ac5779b_1aed9c66","line":425,"updated":"2022-12-12 23:15:09.000000000","message":"You really only need to look for these two specific codes?","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"85187bb652f7994952635ec47f765d962a552eb1","unresolved":false,"context_lines":[{"line_number":422,"context_line":"            elcm_license \u003d irmc_common.check_elcm_license(task.node)"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"            # On iRMC S6 2.00, access to REST API through HTTP returns 404"},{"line_number":425,"context_line":"            if elcm_license.get(\u0027status_code\u0027) not in (200, 500):"},{"line_number":426,"context_line":"                port \u003d task.node.driver_info.get("},{"line_number":427,"context_line":"                    \u0027irmc_port\u0027, CONF.irmc.get(\u0027port\u0027))"},{"line_number":428,"context_line":"                if port \u003d\u003d 80:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a604ad4_260c3f40","line":425,"in_reply_to":"4ac5779b_1aed9c66","updated":"2022-12-13 05:52:51.000000000","message":"Yes. Specification of Fujitsu server REST API tells REST API returns one of 200 or 500 if authentication\u0026authorization succeed. And if authentication/authorization fail, it returns 401 but `check_elcm_license` function deals with it and raises exception.\n\nSo in this code, status code other than 200 or 500 should be treated as something going bad.","commit_id":"7e9b9ee3e9b0d85bd433e41b9af2c64c634daccd"}],"releasenotes/notes/fix-irmc-s6-2.00-http-incompatibility-61a31d12aa33fbd8.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"277e664d_bcf5c237","line":4,"range":{"start_line":4,"start_character":60,"end_line":4,"end_character":67},"updated":"2022-12-07 21:31:29.000000000","message":"Please indicate that this is a version.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fe4886ad_bde7daf2","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":9},"updated":"2022-12-07 21:31:29.000000000","message":"s/Deals with/Fixes a/","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5b1d6296_366a85af","line":4,"range":{"start_line":4,"start_character":46,"end_line":4,"end_character":54},"updated":"2022-12-07 21:31:29.000000000","message":"s/in which/with/","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"44ab78e3_b583bea9","line":4,"range":{"start_line":4,"start_character":60,"end_line":4,"end_character":67},"in_reply_to":"277e664d_bcf5c237","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"b0b60dfd_ea73246e","line":4,"range":{"start_line":4,"start_character":46,"end_line":4,"end_character":54},"in_reply_to":"5b1d6296_366a85af","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Deals with firmware incompatible behavior in which iRMC S6 2.00"},{"line_number":5,"context_line":"    and later doesn\u0027t support http connection to REST API of iRMC."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"a9e69a8f_0926fa39","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":9},"in_reply_to":"fe4886ad_bde7daf2","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"1e0cf38b_acb8b2eb","line":6,"updated":"2022-12-07 21:31:29.000000000","message":"What about:\n\nFixes a firmware incompatibility issue with iRMC versions S6 2.0.0 and later now requires  HTTPS connections by default.","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"eb766c38_8e7caa79","line":6,"in_reply_to":"1e0cf38b_acb8b2eb","updated":"2022-12-08 07:01:32.000000000","message":"Ack","commit_id":"8b083de96698b99801d5511a8223cee7de2ea58a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"feb9b05d9dd579f441d05f3906af91a0a540d422","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fixes a firmware incompatibility issue with iRMC versions S6 2.00"},{"line_number":5,"context_line":"    and later now requires HTTPS connections to REST API by default."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"d0f1b04b_2a1135f4","line":2,"updated":"2023-01-11 13:49:18.000000000","message":"This change, itself, on it\u0027s own, is not a bug fix.\n\nIt is a feature because it is adding capabilities which an operator can invoke that they could overwise just set in the course of normal day to day operations/upgrades.","commit_id":"ea2a5d12aa552a63665f9f04fb78a21608a79bb2"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"ef4971014358ee8b49629d8a8df7fb072d5d9473","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fixes a firmware incompatibility issue with iRMC versions S6 2.00"},{"line_number":5,"context_line":"    and later now requires HTTPS connections to REST API by default."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"f40f0976_3724833d","line":2,"in_reply_to":"d0f1b04b_2a1135f4","updated":"2023-01-16 09:38:32.000000000","message":"Done","commit_id":"ea2a5d12aa552a63665f9f04fb78a21608a79bb2"}],"requirements.txt":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12d7828c97cc120fdcda68b989be7594ded0e7e5","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b23e7efa_d0587255","side":"PARENT","line":51,"updated":"2022-12-07 21:31:29.000000000","message":"Is there any way for us to avoid re-introducing this dependency?","commit_id":"4d66609e95a1c7f5fb0fe0f61f95cf83d09da4d8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"df5ef4dff4dd40ed4bf26098f01b4d894e1730d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"dc614dff_dab7d823","side":"PARENT","line":51,"in_reply_to":"76dbc686_2bc211db","updated":"2022-12-12 01:55:53.000000000","message":"I wrote internal function in drivers/modules/irmc/common.py which can alternate functions from packaging.","commit_id":"4d66609e95a1c7f5fb0fe0f61f95cf83d09da4d8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"94baa79ad5aabcfa278de112825dd720c07fed8a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"76dbc686_2bc211db","side":"PARENT","line":51,"in_reply_to":"b23e7efa_d0587255","updated":"2022-12-08 07:01:32.000000000","message":"Another approach is to implement version comparison function in irmc driver code.","commit_id":"4d66609e95a1c7f5fb0fe0f61f95cf83d09da4d8"}]}
