)]}'
{"/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":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"- modify iRMC driver to use specified certification file when it"},{"line_number":12,"context_line":"  connects to iRMC via HTTPS"},{"line_number":13,"context_line":"- fix verify_step bug in Ironic which causes failure of verify_step"},{"line_number":14,"context_line":"  and causes Node to stuck at verifying state"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: If69ce1cf2789d9d60fb8e544596cf7d29eab514d"},{"line_number":17,"context_line":"Co-authored-by: Kobayashi Daisuke \u003ckobayashi.da-06@fujitsu.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"d03d7954_c56d4139","line":14,"range":{"start_line":13,"start_character":0,"end_line":14,"end_character":45},"updated":"2022-08-02 19:08:20.000000000","message":"So, verify steps changes here are unrelated features and not backportable.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"- modify iRMC driver to use specified certification file when it"},{"line_number":12,"context_line":"  connects to iRMC via HTTPS"},{"line_number":13,"context_line":"- fix verify_step bug in Ironic which causes failure of verify_step"},{"line_number":14,"context_line":"  and causes Node to stuck at verifying state"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: If69ce1cf2789d9d60fb8e544596cf7d29eab514d"},{"line_number":17,"context_line":"Co-authored-by: Kobayashi Daisuke \u003ckobayashi.da-06@fujitsu.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bd767752_d43ae351","line":14,"range":{"start_line":13,"start_character":0,"end_line":14,"end_character":45},"in_reply_to":"d03d7954_c56d4139","updated":"2022-08-03 09:12:09.000000000","message":"I created another patch which handles this problem.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":12,"context_line":"  connects to iRMC via HTTPS"},{"line_number":13,"context_line":"- fix verify_step bug in Ironic which causes failure of verify_step"},{"line_number":14,"context_line":"  and causes Node to stuck at verifying state"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: If69ce1cf2789d9d60fb8e544596cf7d29eab514d"},{"line_number":17,"context_line":"Co-authored-by: Kobayashi Daisuke \u003ckobayashi.da-06@fujitsu.com\u003e"},{"line_number":18,"context_line":"Co-authored-by: Song Shukun \u003csong.shukun@fujitsu.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"99f1e625_2ce21208","line":15,"updated":"2022-08-02 19:08:20.000000000","message":"We should reference the story/task.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":12,"context_line":"  connects to iRMC via HTTPS"},{"line_number":13,"context_line":"- fix verify_step bug in Ironic which causes failure of verify_step"},{"line_number":14,"context_line":"  and causes Node to stuck at verifying state"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: If69ce1cf2789d9d60fb8e544596cf7d29eab514d"},{"line_number":17,"context_line":"Co-authored-by: Kobayashi Daisuke \u003ckobayashi.da-06@fujitsu.com\u003e"},{"line_number":18,"context_line":"Co-authored-by: Song Shukun \u003csong.shukun@fujitsu.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"4fd115a0_7b816b2c","line":15,"in_reply_to":"99f1e625_2ce21208","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9bb1f480_f86df420","updated":"2022-08-02 19:08:20.000000000","message":"Greetings!\n\nI\u0027ve taken time to review the overall changes, and I\u0027m a little worried this is a bit over complicated as it is introducing several different options. It is attempting to use \"irmc_verify_ca\" as a strictly True/False boolean field, when the general approach which has been taken in python-requests and other places where it is used, is to have the boolean, and also allow it to be the CA certificates information source.\n\nThe code, internally also duplicates this behavior in advance of providing it through, and then adds additional validation calls, which really may not be needed if things are kept consistent with how other drivers handle CA certificate source data.\n\nHeading down the path of simplifying, would remove a lot of the added code into common.py.\n\nAdditionally, I think it would be fair/acceptable to just default the value to true for the patch to land on master branch. If you source from the [default]webserver_verify_ca option, then it would be true by default and in backport that could potentially just be switched to false for non-breaking behavior.\n\nFinally, this patch introduces two verify steps, which are not backportable, and I\u0027d prefer to see as separate patches, as we will mainly want to backport this patch in a form which requires minimal changes from version to version in the process of backporting.\n\nBased upon the path taken, the commit message, docs, and release note will also need to be adjusted accordingly.\n\nIf you have any questions, please feel free to reach out.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"147ed184_f66585ac","in_reply_to":"9bb1f480_f86df420","updated":"2022-08-03 09:12:09.000000000","message":"I appreciate you taking time to review. I followed your recommendations and modified patch.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"79b252f6_1b16e060","updated":"2022-08-03 14:32:33.000000000","message":"Much cleaner, Thanks!\n\nOne item with line wrapping in irmc/common.py as well as one suggestion.\n\nA few items regarding the release note, including some commentary on \"when we go to backport this\" as context so we can easily and quickly backport this change.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e78214df_efbb87bf","updated":"2022-08-03 09:12:09.000000000","message":"Thanks for review!","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"75c63c97_e5944413","in_reply_to":"79b252f6_1b16e060","updated":"2022-08-04 12:47:03.000000000","message":"Thanks a lot for kind recommendation.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"}],"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":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":45,"context_line":"                choices\u003d[(443, _(\u0027port 443\u0027)),"},{"line_number":46,"context_line":"                         (80, _(\u0027port 80\u0027))],"},{"line_number":47,"context_line":"                help\u003d_(\u0027Port to be used for iRMC operations\u0027)),"},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027cert_dir\u0027,"},{"line_number":49,"context_line":"               quotes\u003dTrue,"},{"line_number":50,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":51,"context_line":"               help\u003d_(\u0027Filesystem path to directory containing \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"e518aaa1_456d76b4","line":48,"updated":"2022-08-02 19:08:20.000000000","message":"I\u0027d prefer that we keep this consistent with other drivers:\n\n[ilo]verify_ca - https://github.com/openstack/ironic/blob/master/ironic/conf/ilo.py#L84\n\nHowever I think that is also a somewhat outdated style since there are a few different ways to handle it. In fact, I think ilo is the only driver which has a driver level override in ironic.conf, and given the trend of operators wishing to avoid configuration files... it might be best to avoid it for this as well.\n\nThe prevailing trend also seems to be less ironic.conf level settings, and more API settable options given dynamic environments:\n\nhttps://github.com/openstack/ironic/blob/master/ironic/drivers/modules/ibmc/utils.py#L47\n\nhttps://github.com/openstack/ironic/blob/master/ironic/drivers/modules/redfish/utils.py#L63\n\nhttps://github.com/openstack/ironic/blob/master/ironic/drivers/modules/ilo/common.py#L62\n\n\nThe overall base pattern seems to be rooted in https://docs.openstack.org/ironic/latest/configuration/config.html#DEFAULT.webserver_verify_ca\n\n\nSpecifically, I think we might want to forego an ironic.conf file option, and perhaps lean on the [DEFAULT]webserver_verify_ca option as a base default.\n\nI\u0027d also consider following the triple option behavior generally used for simplicty.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":45,"context_line":"                choices\u003d[(443, _(\u0027port 443\u0027)),"},{"line_number":46,"context_line":"                         (80, _(\u0027port 80\u0027))],"},{"line_number":47,"context_line":"                help\u003d_(\u0027Port to be used for iRMC operations\u0027)),"},{"line_number":48,"context_line":"    cfg.StrOpt(\u0027cert_dir\u0027,"},{"line_number":49,"context_line":"               quotes\u003dTrue,"},{"line_number":50,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":51,"context_line":"               help\u003d_(\u0027Filesystem path to directory containing \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"9046df34_2128e6ae","line":48,"in_reply_to":"e518aaa1_456d76b4","updated":"2022-08-03 09:12:09.000000000","message":"I deleted [irmc]cert_dir in ironic.conf. Now there is only driver_info/irmc_verify_ca which takes one of three options.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"}],"ironic/drivers/modules/irmc/bios.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":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":124,"context_line":"        \"\"\""},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        irmc_info \u003d irmc_common.parse_driver_info(task.node)"},{"line_number":127,"context_line":"        irmc_info \u003d irmc_common.check_verify_ca(irmc_info)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        node_id \u003d task.node.id"},{"line_number":130,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3c8a19b9_7b361301","line":127,"updated":"2022-08-02 19:08:20.000000000","message":"The more I\u0027m seeing calls for check_verify_ca, I think the two distinct option behavior should just be avoided for the purposes of simplicity.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":124,"context_line":"        \"\"\""},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"        irmc_info \u003d irmc_common.parse_driver_info(task.node)"},{"line_number":127,"context_line":"        irmc_info \u003d irmc_common.check_verify_ca(irmc_info)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"        node_id \u003d task.node.id"},{"line_number":130,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"de806ebf_2e50473e","line":127,"in_reply_to":"3c8a19b9_7b361301","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"}],"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":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":48,"context_line":"    \u0027irmc_sensor_method\u0027: _(\"Sensor data retrieval method; either \""},{"line_number":49,"context_line":"                            \"\u0027ipmitool\u0027 or \u0027scci\u0027. The default value is \""},{"line_number":50,"context_line":"                            \"\u0027ipmitool\u0027. Optional.\"),"},{"line_number":51,"context_line":"    \u0027irmc_cert_dir\u0027: _(\"Filesystem path to directory containing \""},{"line_number":52,"context_line":"                       \"certificate files to be used to verify SSL/TLS \""},{"line_number":53,"context_line":"                       \"certificate when connect to port 443 of iRMC. \""},{"line_number":54,"context_line":"                       \"The default value is \u0027\u0027. Optional.\"),"},{"line_number":55,"context_line":"}"},{"line_number":56,"context_line":"OPTIONAL_DRIVER_INFO_PROPERTIES \u003d {"},{"line_number":57,"context_line":"    \u0027irmc_verify_ca\u0027: _(\"Either a Boolen value, a path to a CA bundle file \""}],"source_content_type":"text/x-python","patch_set":1,"id":"c4bde06a_cd39083a","line":54,"range":{"start_line":51,"start_character":0,"end_line":54,"end_character":61},"updated":"2022-08-02 19:08:20.000000000","message":"So this, and the next optional setting (\u0027irmc_verify_ca\u0027 which is also in-line with the other drivers) is basically a lesser duplication. I suggest we drop irmc_cert_dir, as the client can and should realistically also rely upon the underlying certificates provided by the base OS for outbound connections... which urllib3/requests knows how to handle.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    \u0027irmc_sensor_method\u0027: _(\"Sensor data retrieval method; either \""},{"line_number":49,"context_line":"                            \"\u0027ipmitool\u0027 or \u0027scci\u0027. The default value is \""},{"line_number":50,"context_line":"                            \"\u0027ipmitool\u0027. Optional.\"),"},{"line_number":51,"context_line":"    \u0027irmc_cert_dir\u0027: _(\"Filesystem path to directory containing \""},{"line_number":52,"context_line":"                       \"certificate files to be used to verify SSL/TLS \""},{"line_number":53,"context_line":"                       \"certificate when connect to port 443 of iRMC. \""},{"line_number":54,"context_line":"                       \"The default value is \u0027\u0027. Optional.\"),"},{"line_number":55,"context_line":"}"},{"line_number":56,"context_line":"OPTIONAL_DRIVER_INFO_PROPERTIES \u003d {"},{"line_number":57,"context_line":"    \u0027irmc_verify_ca\u0027: _(\"Either a Boolen value, a path to a CA bundle file \""}],"source_content_type":"text/x-python","patch_set":1,"id":"c5149153_af49f96c","line":54,"range":{"start_line":51,"start_character":0,"end_line":54,"end_character":61},"in_reply_to":"c4bde06a_cd39083a","updated":"2022-08-03 09:12:09.000000000","message":"Now only driver_info/irmc_verify_ca","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":61,"context_line":"                        \"will ignore verifying the SSL/TLS certificate. If \""},{"line_number":62,"context_line":"                        \"it is a path the driver will use the specified \""},{"line_number":63,"context_line":"                        \"certificate or one of the certificates in the \""},{"line_number":64,"context_line":"                        \"directory. The default value is False. Optional.\"),"},{"line_number":65,"context_line":"}"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"SNMP_PROPERTIES \u003d {"}],"source_content_type":"text/x-python","patch_set":1,"id":"69fc37a6_f49270c4","line":64,"updated":"2022-08-02 19:08:20.000000000","message":"Wouldn\u0027t it just be better to let the http requests library handle the structural data with irmc_cert_dir. Just seems like we\u0027ve got a lot of complexity here that may not be needed.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":61,"context_line":"                        \"will ignore verifying the SSL/TLS certificate. If \""},{"line_number":62,"context_line":"                        \"it is a path the driver will use the specified \""},{"line_number":63,"context_line":"                        \"certificate or one of the certificates in the \""},{"line_number":64,"context_line":"                        \"directory. The default value is False. Optional.\"),"},{"line_number":65,"context_line":"}"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"SNMP_PROPERTIES \u003d {"}],"source_content_type":"text/x-python","patch_set":1,"id":"032f762e_11b8df97","line":64,"in_reply_to":"69fc37a6_f49270c4","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":159,"context_line":"            d_info[\u0027irmc_sensor_method\u0027])"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    verify_ca \u003d d_info.get(\u0027irmc_verify_ca\u0027)"},{"line_number":162,"context_line":"    if verify_ca is None:"},{"line_number":163,"context_line":"        d_info[\u0027irmc_verify_ca\u0027] \u003d verify_ca \u003d False"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":166,"context_line":"    if isinstance(verify_ca, str):"}],"source_content_type":"text/x-python","patch_set":1,"id":"6b0cc015_3e07cab2","line":163,"range":{"start_line":162,"start_character":0,"end_line":163,"end_character":52},"updated":"2022-08-02 19:08:20.000000000","message":"So an option here, could be to default it to True... which aligns with the existing base service settings, And only default it to false on backports.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":159,"context_line":"            d_info[\u0027irmc_sensor_method\u0027])"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    verify_ca \u003d d_info.get(\u0027irmc_verify_ca\u0027)"},{"line_number":162,"context_line":"    if verify_ca is None:"},{"line_number":163,"context_line":"        d_info[\u0027irmc_verify_ca\u0027] \u003d verify_ca \u003d False"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":166,"context_line":"    if isinstance(verify_ca, str):"}],"source_content_type":"text/x-python","patch_set":1,"id":"2f5ac72d_439f7a54","line":163,"range":{"start_line":162,"start_character":0,"end_line":163,"end_character":52},"in_reply_to":"6b0cc015_3e07cab2","updated":"2022-08-03 09:12:09.000000000","message":"Thanks. I set default value to True. I would like to change it to False on backports.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":337,"context_line":"    :raises: InvalidParameterValue if cert_dir is invalid."},{"line_number":338,"context_line":"    :raises: KeyError if fail to get value of irmc_info[\u0027irmc_verify_ca\u0027]"},{"line_number":339,"context_line":"    \"\"\""},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"    verify_ca \u003d irmc_info[\u0027irmc_verify_ca\u0027]"},{"line_number":342,"context_line":"    if verify_ca is True:"},{"line_number":343,"context_line":"        if irmc_info.get(\u0027irmc_cert_dir\u0027):"},{"line_number":344,"context_line":"            if os.path.isdir(irmc_info[\u0027irmc_cert_dir\u0027]) and\\"},{"line_number":345,"context_line":"               os.path.isabs(irmc_info[\u0027irmc_cert_dir\u0027]):"},{"line_number":346,"context_line":"                irmc_info[\u0027irmc_verify_ca\u0027] \u003d irmc_info[\u0027irmc_cert_dir\u0027]"},{"line_number":347,"context_line":"            else:"},{"line_number":348,"context_line":"                raise exception.InvalidParameterValue(_("},{"line_number":349,"context_line":"                    \u0027cert_dir %(value)s is not an absolute directory path\u0027) %"},{"line_number":350,"context_line":"                    {\u0027value\u0027: irmc_info[\u0027irmc_cert_dir\u0027]})"},{"line_number":351,"context_line":"        else:"},{"line_number":352,"context_line":"            pass"},{"line_number":353,"context_line":"    return irmc_info"},{"line_number":354,"context_line":""},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"def get_irmc_client(node):"}],"source_content_type":"text/x-python","patch_set":1,"id":"67cd9b2d_11ff6395","line":353,"range":{"start_line":340,"start_character":0,"end_line":353,"end_character":20},"updated":"2022-08-02 19:08:20.000000000","message":"so, if a single option was used, then I think it would remove the need for this entire method, since right here it is trying to back-fill in the field.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":337,"context_line":"    :raises: InvalidParameterValue if cert_dir is invalid."},{"line_number":338,"context_line":"    :raises: KeyError if fail to get value of irmc_info[\u0027irmc_verify_ca\u0027]"},{"line_number":339,"context_line":"    \"\"\""},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"    verify_ca \u003d irmc_info[\u0027irmc_verify_ca\u0027]"},{"line_number":342,"context_line":"    if verify_ca is True:"},{"line_number":343,"context_line":"        if irmc_info.get(\u0027irmc_cert_dir\u0027):"},{"line_number":344,"context_line":"            if os.path.isdir(irmc_info[\u0027irmc_cert_dir\u0027]) and\\"},{"line_number":345,"context_line":"               os.path.isabs(irmc_info[\u0027irmc_cert_dir\u0027]):"},{"line_number":346,"context_line":"                irmc_info[\u0027irmc_verify_ca\u0027] \u003d irmc_info[\u0027irmc_cert_dir\u0027]"},{"line_number":347,"context_line":"            else:"},{"line_number":348,"context_line":"                raise exception.InvalidParameterValue(_("},{"line_number":349,"context_line":"                    \u0027cert_dir %(value)s is not an absolute directory path\u0027) %"},{"line_number":350,"context_line":"                    {\u0027value\u0027: irmc_info[\u0027irmc_cert_dir\u0027]})"},{"line_number":351,"context_line":"        else:"},{"line_number":352,"context_line":"            pass"},{"line_number":353,"context_line":"    return irmc_info"},{"line_number":354,"context_line":""},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"def get_irmc_client(node):"}],"source_content_type":"text/x-python","patch_set":1,"id":"49397655_de2d3413","line":353,"range":{"start_line":340,"start_character":0,"end_line":353,"end_character":20},"in_reply_to":"67cd9b2d_11ff6395","updated":"2022-08-03 09:12:09.000000000","message":"I deleted this because now only driver_info/irmc_verify_ca","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":411,"context_line":"    :raises: scci.SCCIClientError if SCCI failed."},{"line_number":412,"context_line":"    \"\"\""},{"line_number":413,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":414,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    return scci.get_report("},{"line_number":417,"context_line":"        driver_info[\u0027irmc_address\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a7723d9_eb2daaa8","line":414,"range":{"start_line":414,"start_character":4,"end_line":414,"end_character":46},"updated":"2022-08-02 19:08:20.000000000","message":"again, single field option would just make more sense since it would remove the need to modify every place as it would be all in parse_driver_info then.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":411,"context_line":"    :raises: scci.SCCIClientError if SCCI failed."},{"line_number":412,"context_line":"    \"\"\""},{"line_number":413,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":414,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    return scci.get_report("},{"line_number":417,"context_line":"        driver_info[\u0027irmc_address\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"8abdf080_8230f3e7","line":414,"range":{"start_line":414,"start_character":4,"end_line":414,"end_character":46},"in_reply_to":"5a7723d9_eb2daaa8","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":431,"context_line":"    :raises: IRMCOperationError if the operation fails."},{"line_number":432,"context_line":"    \"\"\""},{"line_number":433,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":434,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"    try:"},{"line_number":437,"context_line":"        return elcm.get_secure_boot_mode(driver_info)"}],"source_content_type":"text/x-python","patch_set":1,"id":"888446f1_f1a92378","line":434,"updated":"2022-08-02 19:08:20.000000000","message":"Same comment as above.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":431,"context_line":"    :raises: IRMCOperationError if the operation fails."},{"line_number":432,"context_line":"    \"\"\""},{"line_number":433,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":434,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"    try:"},{"line_number":437,"context_line":"        return elcm.get_secure_boot_mode(driver_info)"}],"source_content_type":"text/x-python","patch_set":1,"id":"a5c255df_2494b183","line":434,"in_reply_to":"888446f1_f1a92378","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":454,"context_line":"    :raises: IRMCOperationError if the operation fails."},{"line_number":455,"context_line":"    \"\"\""},{"line_number":456,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":457,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"    try:"},{"line_number":460,"context_line":"        elcm.set_secure_boot_mode(driver_info, enable)"}],"source_content_type":"text/x-python","patch_set":1,"id":"24c57eb4_21330aef","line":457,"updated":"2022-08-02 19:08:20.000000000","message":"Same comment as above.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":454,"context_line":"    :raises: IRMCOperationError if the operation fails."},{"line_number":455,"context_line":"    \"\"\""},{"line_number":456,"context_line":"    driver_info \u003d parse_driver_info(node)"},{"line_number":457,"context_line":"    driver_info \u003d check_verify_ca(driver_info)"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"    try:"},{"line_number":460,"context_line":"        elcm.set_secure_boot_mode(driver_info, enable)"}],"source_content_type":"text/x-python","patch_set":1,"id":"b8072af6_25e21736","line":457,"in_reply_to":"24c57eb4_21330aef","updated":"2022-08-03 09:12:09.000000000","message":"Done","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[{"line_number":156,"context_line":""},{"line_number":157,"context_line":"    verify_ca \u003d d_info.get(\u0027irmc_verify_ca\u0027)"},{"line_number":158,"context_line":"    if verify_ca is None:"},{"line_number":159,"context_line":"        d_info[\u0027irmc_verify_ca\u0027] \u003d verify_ca \u003d True"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":162,"context_line":"    if isinstance(verify_ca, str):"}],"source_content_type":"text/x-python","patch_set":2,"id":"91a44075_597661db","line":159,"updated":"2022-08-03 14:32:33.000000000","message":"Not required: For what it is worth, it would likely be best to set this to CONF.webserver_verify_ca for default fallback. One piece of feedback the community received a long time ago was that having many different settings for specific parts that can be generalized, increases difficulty to be used.\n\nFor additional context, that setting defaults to True as well.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[{"line_number":156,"context_line":""},{"line_number":157,"context_line":"    verify_ca \u003d d_info.get(\u0027irmc_verify_ca\u0027)"},{"line_number":158,"context_line":"    if verify_ca is None:"},{"line_number":159,"context_line":"        d_info[\u0027irmc_verify_ca\u0027] \u003d verify_ca \u003d True"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":162,"context_line":"    if isinstance(verify_ca, str):"}],"source_content_type":"text/x-python","patch_set":2,"id":"299c62a4_7902519d","line":159,"in_reply_to":"91a44075_597661db","updated":"2022-08-04 12:47:03.000000000","message":"Done","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":162,"context_line":"    if isinstance(verify_ca, str):"},{"line_number":163,"context_line":"        if (os.path.isdir(verify_ca) and os.path.isabs(verify_ca)) or\\"},{"line_number":164,"context_line":"           (os.path.isfile(verify_ca) and os.path.isabs(verify_ca)):"},{"line_number":165,"context_line":"            # If it\u0027s fullpath and dir/file, we don\u0027t need to do anything"},{"line_number":166,"context_line":"            pass"},{"line_number":167,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"95c09c6f_033edab8","line":164,"range":{"start_line":163,"start_character":1,"end_line":164,"end_character":68},"updated":"2022-08-03 14:32:33.000000000","message":"Generally OpenStack reviewers like to see lines continued using \\ unless there is absolutely no other option.\n\nin this case, you could do the following:\n\n  if ((os.path.isdir(VAR) and os.path.isabs(VAR))\n      or (os.path.isfile(VAR) and os.path.isabs(VAR))):\n      \nIt looks very similar, just or is on the next line and everything is wrapped with ( ).","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    # Check if verify_ca is a Boolean or a file/directory in the file-system"},{"line_number":162,"context_line":"    if isinstance(verify_ca, str):"},{"line_number":163,"context_line":"        if (os.path.isdir(verify_ca) and os.path.isabs(verify_ca)) or\\"},{"line_number":164,"context_line":"           (os.path.isfile(verify_ca) and os.path.isabs(verify_ca)):"},{"line_number":165,"context_line":"            # If it\u0027s fullpath and dir/file, we don\u0027t need to do anything"},{"line_number":166,"context_line":"            pass"},{"line_number":167,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1fb93af8_cee5d2e3","line":164,"range":{"start_line":163,"start_character":1,"end_line":164,"end_character":68},"in_reply_to":"95c09c6f_033edab8","updated":"2022-08-04 12:47:03.000000000","message":"Done","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"}],"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":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":405,"context_line":"                 not supported by the driver or the hardware"},{"line_number":406,"context_line":"        \"\"\""},{"line_number":407,"context_line":"        return irmc_common.set_secure_boot_mode(task.node, state)"},{"line_number":408,"context_line":""},{"line_number":409,"context_line":"    @base.verify_step(priority\u003d15)"},{"line_number":410,"context_line":"    def verify_http_https_connection(self, task):"},{"line_number":411,"context_line":"        \"\"\"Verify iRMC driver configuration related to HTTP(S)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"        This method is called at Verifying state"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        :param task: A task from TaskManager."},{"line_number":416,"context_line":"        :raises: IRMCOperationError if it fails to connect iRMC"},{"line_number":417,"context_line":"                 via HTTP(S)"},{"line_number":418,"context_line":"        \"\"\""},{"line_number":419,"context_line":"        try:"},{"line_number":420,"context_line":"            irmc_common.get_irmc_report(task.node)"},{"line_number":421,"context_line":"        except irmc.scci.SCCIError as e:"},{"line_number":422,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":423,"context_line":"                                               \u0027 related to HTTP(S)\u0027, error\u003de)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":426,"context_line":"    def verify_snmp_connection(self, task):"}],"source_content_type":"text/x-python","patch_set":1,"id":"4c9dc3bf_bd4b83f7","line":423,"range":{"start_line":408,"start_character":0,"end_line":423,"end_character":78},"updated":"2022-08-02 19:08:20.000000000","message":"This is functionally a feature.\n\nIf we could land this separately, it will save us from having to remove it out on backport, which would speed the overall process.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":405,"context_line":"                 not supported by the driver or the hardware"},{"line_number":406,"context_line":"        \"\"\""},{"line_number":407,"context_line":"        return irmc_common.set_secure_boot_mode(task.node, state)"},{"line_number":408,"context_line":""},{"line_number":409,"context_line":"    @base.verify_step(priority\u003d15)"},{"line_number":410,"context_line":"    def verify_http_https_connection(self, task):"},{"line_number":411,"context_line":"        \"\"\"Verify iRMC driver configuration related to HTTP(S)"},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"        This method is called at Verifying state"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        :param task: A task from TaskManager."},{"line_number":416,"context_line":"        :raises: IRMCOperationError if it fails to connect iRMC"},{"line_number":417,"context_line":"                 via HTTP(S)"},{"line_number":418,"context_line":"        \"\"\""},{"line_number":419,"context_line":"        try:"},{"line_number":420,"context_line":"            irmc_common.get_irmc_report(task.node)"},{"line_number":421,"context_line":"        except irmc.scci.SCCIError as e:"},{"line_number":422,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":423,"context_line":"                                               \u0027 related to HTTP(S)\u0027, error\u003de)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":426,"context_line":"    def verify_snmp_connection(self, task):"}],"source_content_type":"text/x-python","patch_set":1,"id":"153c15c3_96c9d605","line":423,"range":{"start_line":408,"start_character":0,"end_line":423,"end_character":78},"in_reply_to":"4c9dc3bf_bd4b83f7","updated":"2022-08-03 09:12:09.000000000","message":"Thanks. I delete this code and make another patch.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b384b6ad13598d873a1e4f913d42d85872fa2839","unresolved":true,"context_lines":[{"line_number":422,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":423,"context_line":"                                               \u0027 related to HTTP(S)\u0027, error\u003de)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":426,"context_line":"    def verify_snmp_connection(self, task):"},{"line_number":427,"context_line":"        \"\"\"Verify iRMC driver configuration related to SNMP"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"        This method is called at Verifying state"},{"line_number":430,"context_line":""},{"line_number":431,"context_line":"        :param task: A task from TaskManager."},{"line_number":432,"context_line":"        :raises: IRMCOperationError if it fails to connect iRMC"},{"line_number":433,"context_line":"                 via SNMP"},{"line_number":434,"context_line":"        \"\"\""},{"line_number":435,"context_line":"        try:"},{"line_number":436,"context_line":"            irmc_inspect._get_mac_addresses(task.node)"},{"line_number":437,"context_line":"        except exception.SNMPFailure as e:"},{"line_number":438,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":439,"context_line":"                                               \u0027 related to SNMP\u0027, error\u003de)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ea40fe3c_c680fa20","line":439,"range":{"start_line":425,"start_character":0,"end_line":439,"end_character":75},"updated":"2022-08-02 19:08:20.000000000","message":"Unrelated feature.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"9ea19c807a70dd2ab4857fa20f26d11c81da241e","unresolved":false,"context_lines":[{"line_number":422,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":423,"context_line":"                                               \u0027 related to HTTP(S)\u0027, error\u003de)"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    @base.verify_step(priority\u003d10)"},{"line_number":426,"context_line":"    def verify_snmp_connection(self, task):"},{"line_number":427,"context_line":"        \"\"\"Verify iRMC driver configuration related to SNMP"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"        This method is called at Verifying state"},{"line_number":430,"context_line":""},{"line_number":431,"context_line":"        :param task: A task from TaskManager."},{"line_number":432,"context_line":"        :raises: IRMCOperationError if it fails to connect iRMC"},{"line_number":433,"context_line":"                 via SNMP"},{"line_number":434,"context_line":"        \"\"\""},{"line_number":435,"context_line":"        try:"},{"line_number":436,"context_line":"            irmc_inspect._get_mac_addresses(task.node)"},{"line_number":437,"context_line":"        except exception.SNMPFailure as e:"},{"line_number":438,"context_line":"            raise exception.IRMCOperationError(operation\u003d\u0027verify configuration\u0027"},{"line_number":439,"context_line":"                                               \u0027 related to SNMP\u0027, error\u003de)"}],"source_content_type":"text/x-python","patch_set":1,"id":"8e4bcc5a_ea03f4f5","line":439,"range":{"start_line":425,"start_character":0,"end_line":439,"end_character":75},"in_reply_to":"ea40fe3c_c680fa20","updated":"2022-08-03 09:12:09.000000000","message":"Thanks. I delete this code and make another patch.","commit_id":"7a1ca55b37624dddc948ca7b80523413ad5495a5"}],"releasenotes/notes/irmc-add-certification-file-option-34e7a0062c768e58.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":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"613a57e2_5c34269e","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":9},"updated":"2022-08-03 14:32:33.000000000","message":"When we go to backport, this will need to be change to \"fixes:\" in the initial backport.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"a7a96ee7_f5d2fc8e","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":9},"in_reply_to":"613a57e2_5c34269e","updated":"2022-08-04 12:47:03.000000000","message":"Thanks. I\u0027ll change this to \"fixes\" on backport.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"},{"line_number":6,"context_line":"  - |"},{"line_number":7,"context_line":"    Modifies iRMC driver to use certification file when it connects to iRMC via HTTPS"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"4dd033d5_e22d803b","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":57},"updated":"2022-08-03 14:32:33.000000000","message":"Please indicate the option being added, and it\u0027s default value.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"},{"line_number":6,"context_line":"  - |"},{"line_number":7,"context_line":"    Modifies iRMC driver to use certification file when it connects to iRMC via HTTPS"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f54db9cd_26646424","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":57},"in_reply_to":"4dd033d5_e22d803b","updated":"2022-08-04 12:47:03.000000000","message":"Done","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"},{"line_number":6,"context_line":"  - |"},{"line_number":7,"context_line":"    Modifies iRMC driver to use certification file when it connects to iRMC via HTTPS"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"f8410eb2_4bbff67f","line":7,"range":{"start_line":7,"start_character":28,"end_line":7,"end_character":85},"updated":"2022-08-03 14:32:33.000000000","message":"Perhaps \"Modifies the ``irmc`` hardware type to include a capability to control enforcement of HTTPS certificate verification. By default this is enforced.\"\n\nPerhaps indicate the minimum version of python-scciclient.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Adds driver_info option to specify certification file"},{"line_number":5,"context_line":"security:"},{"line_number":6,"context_line":"  - |"},{"line_number":7,"context_line":"    Modifies iRMC driver to use certification file when it connects to iRMC via HTTPS"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"16f6f646_9b1259bd","line":7,"range":{"start_line":7,"start_character":28,"end_line":7,"end_character":85},"in_reply_to":"f8410eb2_4bbff67f","updated":"2022-08-04 12:47:03.000000000","message":"Done","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"9df72452f0ddb01ac0765e01a8a819f401f74282","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"861e3153_07ea36ea","line":8,"updated":"2022-08-03 14:32:33.000000000","message":"I don\u0027t believe this patch requires a an \"upgrade\" release note field as the state of master already has 0.12.2 as the default, and the required python-scciclient patch was introduced in 0.12.0.\n\nThat being said, when we go to backport, we will need an upgrades field to indiacate what the minimum version of the library now is. Please note, we\u0027ll need version specific, versions and driver-requirements.txt bumps for appropriate versions to those releases.\n\n\n\nFor example, it looks like this patch is in ??? for yoga, 0.11.4 for xena, 0.10.2 for Wallaby. Beyond wallaby, is where I think the question is going to come up as it looks like the required patch is only backported to Wallaby. There doesn\u0027t appear to be ussuri branch either. Train would... I guess need to be addressed as 0.8.2 which might be able to cover Ussuri?","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"},{"author":{"_account_id":30566,"name":"Vanou Ishii","email":"ishii.vanou@fujitsu.com","username":"vanou"},"change_message_id":"0076cfd49678b432aacd0e4eb4afe2ba69e0153a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"f9b768c0_8d4c018c","line":8,"in_reply_to":"861e3153_07ea36ea","updated":"2022-08-04 12:47:03.000000000","message":"Thanks for instruction.\nI understand that when we backport this\n* change \"features\" to \"fixes\" in release note\n* add \"upgrade\" to release note which indicates what minimal version of python-scciclient is required\n\nFor Yoga, python-scciclient version is 0.12.x (we will prepare python-scciclient 0.13 for Zed). For Victoria, Ussuri \u0026 Train, I need to backport appropriate python-scciclient patches but it\u0027s not yet done.\n\nMaybe 0.9.2 will be created fro Victoria and 0.8.2 for Ussuri \u0026 Train.","commit_id":"a428f8ebf277e3a4ecbb647c839db5a3d6eda2e8"}]}
