)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d13cccfb30a59e6dfabe59b8e4927b7ba25bfc71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d25c1a29_bc304f38","updated":"2023-11-08 09:36:06.000000000","message":"There\u0027s an open discussion here, but I assume that can be addressed separately","commit_id":"705ecef7a949ef6df0401fe98b66d1c8d96de1d6"}],"openstackclient/image/v2/metadef_properties.py":[{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"e7f86c33fe24809f6dd85582a4d45d9228d8fd56","unresolved":true,"context_lines":[{"line_number":207,"context_line":"    def take_action(self, parsed_args):"},{"line_number":208,"context_line":"        image_client \u003d self.app.client_manager.image"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"        # We need to pass the values for *all* attributes as kwargs to"},{"line_number":211,"context_line":"        # update_metadef_property(), otherwise the attributes that are not"},{"line_number":212,"context_line":"        # listed will be reset."},{"line_number":213,"context_line":"        data \u003d image_client.get_metadef_property("}],"source_content_type":"text/x-python","patch_set":1,"id":"f9f57233_7d7281db","line":210,"range":{"start_line":210,"start_character":10,"end_line":210,"end_character":12},"updated":"2023-11-01 02:58:59.000000000","message":"Note to reviewers: I\u0027m not happy about that and I\u0027m wondering whether I\u0027m doing something wrong, or if maybe that could be a bug in update_metadef_property?","commit_id":"705ecef7a949ef6df0401fe98b66d1c8d96de1d6"},{"author":{"_account_id":8122,"name":"Cyril Roelandt","email":"cyril@redhat.com","username":"cyril.roelandt.enovance"},"change_message_id":"b362f9475e7189e9e679e773c6063c6e4829d019","unresolved":true,"context_lines":[{"line_number":207,"context_line":"    def take_action(self, parsed_args):"},{"line_number":208,"context_line":"        image_client \u003d self.app.client_manager.image"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"        # We need to pass the values for *all* attributes as kwargs to"},{"line_number":211,"context_line":"        # update_metadef_property(), otherwise the attributes that are not"},{"line_number":212,"context_line":"        # listed will be reset."},{"line_number":213,"context_line":"        data \u003d image_client.get_metadef_property("}],"source_content_type":"text/x-python","patch_set":1,"id":"515376bf_c6ee7323","line":210,"range":{"start_line":210,"start_character":10,"end_line":210,"end_character":12},"in_reply_to":"2353860d_c4a84a18","updated":"2023-11-22 19:12:43.000000000","message":"OK so I used debug mode with both the legacy \"glance md-property-update\" and the new \"openstack image metadef property set\" commands. \n\nGlance also gathers already set properties (see https://github.com/openstack/python-glanceclient/blob/5f2835fcf0b65946ea2ab75da2d51a61efe82921/glanceclient/v2/metadefs.py#L290) before sending the PUT request to the API. If it were not doing that, the values of all attributes would be overwritten. So this is indeed an API limitation and not an issue with the OpenStack SDK/OpenStack Client. Let\u0027s keep this code as is then!","commit_id":"705ecef7a949ef6df0401fe98b66d1c8d96de1d6"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"d13cccfb30a59e6dfabe59b8e4927b7ba25bfc71","unresolved":true,"context_lines":[{"line_number":207,"context_line":"    def take_action(self, parsed_args):"},{"line_number":208,"context_line":"        image_client \u003d self.app.client_manager.image"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"        # We need to pass the values for *all* attributes as kwargs to"},{"line_number":211,"context_line":"        # update_metadef_property(), otherwise the attributes that are not"},{"line_number":212,"context_line":"        # listed will be reset."},{"line_number":213,"context_line":"        data \u003d image_client.get_metadef_property("}],"source_content_type":"text/x-python","patch_set":1,"id":"2353860d_c4a84a18","line":210,"range":{"start_line":210,"start_character":10,"end_line":210,"end_character":12},"in_reply_to":"f9f57233_7d7281db","updated":"2023-11-08 09:36:06.000000000","message":"This isn\u0027t usual behavior but the `update_metadef_property` proxy method looks pretty standard to me and only the `list` method of the `MetadefProperty` class is overridden so that\u0027s standard too. I would suggest running this in debug mode (`--debug`) and seeing what it passes to the API. Assuming it\u0027s *not* passing those empty fields, what are the chances this is the a server-side thing (i.e. the server expects/requires all fields be passed)?","commit_id":"705ecef7a949ef6df0401fe98b66d1c8d96de1d6"}]}
