)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":10969,"name":"Shnaidman Sagi (Sergey)","display_name":"Shnaidman Sagi","email":"sshnaidm@redhat.com","username":"sergsh"},"change_message_id":"575c8087e7db9e48892f09eb4676f7ea0dcc1963","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"38bdb614_9b256492","updated":"2022-02-09 21:01:09.000000000","message":"please rebase as well on meta/runtime.yml","commit_id":"86952f347fbbd3bddb0c5a7acab22a3a6a5a01e0"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"3c30c3893f40ff8c2d022d06f8047a2e6fb05691","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"e411e4da_61b6c572","in_reply_to":"38bdb614_9b256492","updated":"2022-02-09 22:42:34.000000000","message":"Ack. Should have pushed these as a series. :-E","commit_id":"86952f347fbbd3bddb0c5a7acab22a3a6a5a01e0"},{"author":{"_account_id":10969,"name":"Shnaidman Sagi (Sergey)","display_name":"Shnaidman Sagi","email":"sshnaidm@redhat.com","username":"sergsh"},"change_message_id":"992201239ced947a35c7dfdad6da081b440bbbed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"32a5c468_16d9d751","updated":"2022-02-09 22:42:54.000000000","message":"rebase","commit_id":"0a7889b9a2fa3ed16daa1a495dc556991dde60e3"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"d634914c4281d7f6025ee8636fdc071f700d7ef4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"e5c4f671_f7e53e6b","updated":"2022-02-10 03:44:42.000000000","message":"recheck","commit_id":"0a7889b9a2fa3ed16daa1a495dc556991dde60e3"}],"plugins/modules/baremetal_port.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":53,"context_line":"            - An optional string field to be used to store any vendor-specific"},{"line_number":54,"context_line":"              information."},{"line_number":55,"context_line":"          type: str"},{"line_number":56,"context_line":"    pxe_enabled:"},{"line_number":57,"context_line":"      description:"},{"line_number":58,"context_line":"        - Whether PXE should be enabled or disabled on the Port."},{"line_number":59,"context_line":"      type: bool"}],"source_content_type":"text/x-python","patch_set":4,"id":"beeb1db8_1969b2ff","line":56,"updated":"2022-02-09 08:37:41.000000000","message":"I don\u0027t quite like that we accept pxe_enabled but return is_pxe_enabled. I think we should settle on one variant, probably the SDK one.","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":53,"context_line":"            - An optional string field to be used to store any vendor-specific"},{"line_number":54,"context_line":"              information."},{"line_number":55,"context_line":"          type: str"},{"line_number":56,"context_line":"    pxe_enabled:"},{"line_number":57,"context_line":"      description:"},{"line_number":58,"context_line":"        - Whether PXE should be enabled or disabled on the Port."},{"line_number":59,"context_line":"      type: bool"}],"source_content_type":"text/x-python","patch_set":4,"id":"6bd0baad_286a5c83","line":56,"in_reply_to":"beeb1db8_1969b2ff","updated":"2022-02-09 13:21:06.000000000","message":"Ok, changed this to \u0027is_pxe_enabled\u0027, and does this internally:\n module.params[\u0027pxe_enabled\u0027] \u003d module.params.pop(\u0027is_pxe_enabled\u0027, None)","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":221,"context_line":"    \u0027uuid\u0027: \u0027id\u0027,"},{"line_number":222,"context_line":"}"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"_PROPERTIES \u003d _PROP_TO_ATTR_MAP.keys()"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"def find_port(module, cloud):"}],"source_content_type":"text/x-python","patch_set":4,"id":"22581f32_62a494ee","line":224,"updated":"2022-02-09 08:37:41.000000000","message":"nit: this is an iterator, do you mean\n\n _PROPERTIES \u003d list(_PROP_TO_ATTR_MAP)\n\n?","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"9368ee01bc25ed4f72651250a2b11148637c22e1","unresolved":false,"context_lines":[{"line_number":221,"context_line":"    \u0027uuid\u0027: \u0027id\u0027,"},{"line_number":222,"context_line":"}"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"_PROPERTIES \u003d _PROP_TO_ATTR_MAP.keys()"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"def find_port(module, cloud):"}],"source_content_type":"text/x-python","patch_set":4,"id":"a7ee0876_10d4bed4","line":224,"in_reply_to":"2164fe76_9623631a","updated":"2022-02-09 13:59:18.000000000","message":"lint did\u0027nt lite `_`, changed to iterate over _PROP_TO_ATTR_MAP.keys()","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":221,"context_line":"    \u0027uuid\u0027: \u0027id\u0027,"},{"line_number":222,"context_line":"}"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"_PROPERTIES \u003d _PROP_TO_ATTR_MAP.keys()"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"def find_port(module, cloud):"}],"source_content_type":"text/x-python","patch_set":4,"id":"2164fe76_9623631a","line":224,"in_reply_to":"22581f32_62a494ee","updated":"2022-02-09 13:21:06.000000000","message":"I removed this constant.\nInstead I use _PROP_TO_ATTR_MAP.items() assigning value to _ when it is not used.","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":235,"context_line":"            port \u003d ports[0]"},{"line_number":236,"context_line":"        elif len(ports) \u003e 1:"},{"line_number":237,"context_line":"            module.fail_json("},{"line_number":238,"context_line":"                msg\u003d\"Multiple ports with address {} found. A uuid must be \""},{"line_number":239,"context_line":"                    \"defined in order to remove the correct port\")"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"    return port"}],"source_content_type":"text/x-python","patch_set":4,"id":"bae2022a_883fb268","line":238,"updated":"2022-02-09 08:37:41.000000000","message":"you have {} but no formatting?","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":235,"context_line":"            port \u003d ports[0]"},{"line_number":236,"context_line":"        elif len(ports) \u003e 1:"},{"line_number":237,"context_line":"            module.fail_json("},{"line_number":238,"context_line":"                msg\u003d\"Multiple ports with address {} found. A uuid must be \""},{"line_number":239,"context_line":"                    \"defined in order to remove the correct port\")"},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"    return port"}],"source_content_type":"text/x-python","patch_set":4,"id":"b0c5496e_8b2292f6","line":238,"in_reply_to":"bae2022a_883fb268","updated":"2022-02-09 13:21:06.000000000","message":"Good catch! Thank you.\n\nI also updated the message s/remove/identify/ since this is not limited to \u0027absent\u0027.","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":259,"context_line":""},{"line_number":260,"context_line":"    module.params[\u0027node_uuid\u0027] \u003d machine.id"},{"line_number":261,"context_line":"    props \u003d {k: module.params[k] for k in _PROPERTIES if k in module.params}"},{"line_number":262,"context_line":"    port \u003d cloud.baremetal.create_port(details\u003dTrue, **props)"},{"line_number":263,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":264,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":265,"context_line":"    module.exit_json("}],"source_content_type":"text/x-python","patch_set":4,"id":"78a34f4c_c765d2a6","line":262,"updated":"2022-02-09 08:37:41.000000000","message":"I don\u0027t think it accepts details? creating requests always return details.","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":259,"context_line":""},{"line_number":260,"context_line":"    module.params[\u0027node_uuid\u0027] \u003d machine.id"},{"line_number":261,"context_line":"    props \u003d {k: module.params[k] for k in _PROPERTIES if k in module.params}"},{"line_number":262,"context_line":"    port \u003d cloud.baremetal.create_port(details\u003dTrue, **props)"},{"line_number":263,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":264,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":265,"context_line":"    module.exit_json("}],"source_content_type":"text/x-python","patch_set":4,"id":"888966c4_62043f1b","line":262,"in_reply_to":"78a34f4c_c765d2a6","updated":"2022-02-09 13:21:06.000000000","message":"It accepts it, but when I look at results it is not necessary.\nRemoved `detauls\u003dTrue´","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":261,"context_line":"    props \u003d {k: module.params[k] for k in _PROPERTIES if k in module.params}"},{"line_number":262,"context_line":"    port \u003d cloud.baremetal.create_port(details\u003dTrue, **props)"},{"line_number":263,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":264,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":265,"context_line":"    module.exit_json("},{"line_number":266,"context_line":"        changed\u003dTrue,"},{"line_number":267,"context_line":"        result\u003d\"Port successfully created\","}],"source_content_type":"text/x-python","patch_set":4,"id":"e38d8dfe_6d468a84","line":264,"updated":"2022-02-09 08:37:41.000000000","message":"may need to drop a link to portgroup if present","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":261,"context_line":"    props \u003d {k: module.params[k] for k in _PROPERTIES if k in module.params}"},{"line_number":262,"context_line":"    port \u003d cloud.baremetal.create_port(details\u003dTrue, **props)"},{"line_number":263,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":264,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":265,"context_line":"    module.exit_json("},{"line_number":266,"context_line":"        changed\u003dTrue,"},{"line_number":267,"context_line":"        result\u003d\"Port successfully created\","}],"source_content_type":"text/x-python","patch_set":4,"id":"bc38289d_534ed02f","line":264,"in_reply_to":"e38d8dfe_6d468a84","updated":"2022-02-09 13:21:06.000000000","message":"\u003e\u003e\u003e port \u003d cloud.baremetal.update_port(\u002703df4684-1536-4cdc-80b2-50ebfa80e30a\u0027, pxe_enabled\u003dFalse)\n\u003e\u003e\u003e port\nopenstack.baremetal.v1.port.Port(uuid\u003d03df4684-1536-4cdc-80b2-50ebfa80e30a, pxe_enabled\u003dFalse, created_at\u003d2022-02-06T00:21:39+00:00, updated_at\u003d2022-02-09T13:15:29+00:00, address\u003dfa:16:3e:f8:c8:24, extra\u003d{}, internal_info\u003d{}, local_link_connection\u003d{}, physical_network\u003dctlplane, links\u003d[{\u0027href\u0027: \u0027https://192.168.24.2:13385/v1/ports/03df4684-1536-4cdc-80b2-50ebfa80e30a\u0027, \u0027rel\u0027: \u0027self\u0027}, {\u0027href\u0027: \u0027https://192.168.24.2:13385/ports/03df4684-1536-4cdc-80b2-50ebfa80e30a\u0027, \u0027rel\u0027: \u0027bookmark\u0027}], node_uuid\u003d2fb0eb1c-0d87-4b3a-be08-04b396d44812, portgroup_uuid\u003ddbdf2563-b994-4f90-866a-1ac143299bb7, location\u003dMunch({\u0027cloud\u0027: \u0027undercloud\u0027, \u0027region_name\u0027: \u0027\u0027, \u0027zone\u0027: None, \u0027project\u0027: Munch({\u0027id\u0027: None, \u0027name\u0027: None, \u0027domain_id\u0027: None,\n\u0027domain_name\u0027: None})}))\n\nAFICT there is no portgroup link.","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":287,"context_line":""},{"line_number":288,"context_line":"    if not prop_diff:"},{"line_number":289,"context_line":"        port_dict \u003d port.to_dict()"},{"line_number":290,"context_line":"        port_dict.pop(\u0027links\u0027, None)"},{"line_number":291,"context_line":"        module.exit_json("},{"line_number":292,"context_line":"            changed\u003dFalse,"},{"line_number":293,"context_line":"            result\u003d\"No port update required\","}],"source_content_type":"text/x-python","patch_set":4,"id":"7d98bf8d_0c1ad8da","line":290,"updated":"2022-02-09 08:37:41.000000000","message":"same","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":295,"context_line":"            port\u003dport_dict,"},{"line_number":296,"context_line":"            id\u003dport_dict[\u0027id\u0027])"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    port \u003d cloud.baremetal.update_port(port.id, details\u003dTrue, **prop_diff)"},{"line_number":299,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":300,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":301,"context_line":"    module.exit_json("}],"source_content_type":"text/x-python","patch_set":4,"id":"3337b98d_970010a2","line":298,"updated":"2022-02-09 08:37:41.000000000","message":"same re details","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":295,"context_line":"            port\u003dport_dict,"},{"line_number":296,"context_line":"            id\u003dport_dict[\u0027id\u0027])"},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    port \u003d cloud.baremetal.update_port(port.id, details\u003dTrue, **prop_diff)"},{"line_number":299,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":300,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":301,"context_line":"    module.exit_json("}],"source_content_type":"text/x-python","patch_set":4,"id":"69d19b04_1f3e2a69","line":298,"in_reply_to":"3337b98d_970010a2","updated":"2022-02-09 13:21:06.000000000","message":"Done","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"18c46a4e9f3821f498333445d512ce6346d7cb04","unresolved":false,"context_lines":[{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    port \u003d cloud.baremetal.update_port(port.id, details\u003dTrue, **prop_diff)"},{"line_number":299,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":300,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":301,"context_line":"    module.exit_json("},{"line_number":302,"context_line":"        changed\u003dTrue,"},{"line_number":303,"context_line":"        result\u003d\"Port successfully updated\","}],"source_content_type":"text/x-python","patch_set":4,"id":"d8d1f268_a4722626","line":300,"updated":"2022-02-09 08:37:41.000000000","message":"same re portgroups","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e14d513170bd088ccc8979c19b45535e8ede6894","unresolved":false,"context_lines":[{"line_number":297,"context_line":""},{"line_number":298,"context_line":"    port \u003d cloud.baremetal.update_port(port.id, details\u003dTrue, **prop_diff)"},{"line_number":299,"context_line":"    port_dict \u003d port.to_dict()"},{"line_number":300,"context_line":"    port_dict.pop(\u0027links\u0027, None)"},{"line_number":301,"context_line":"    module.exit_json("},{"line_number":302,"context_line":"        changed\u003dTrue,"},{"line_number":303,"context_line":"        result\u003d\"Port successfully updated\","}],"source_content_type":"text/x-python","patch_set":4,"id":"00ef0181_4173060c","line":300,"in_reply_to":"d8d1f268_a4722626","updated":"2022-02-09 13:21:06.000000000","message":"see above","commit_id":"c1015b2f3f260a400f828824460dbc4cebce9e25"}]}
