)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"1c1a9464f2f7f4da604069f19c36b8108653b844","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"98075ec6_63a7c095","updated":"2024-07-08 08:35:36.000000000","message":"The output is something like this :\n+----------+-----------------------+\n| Field    | Value                 |\n+----------+-----------------------+\n| password | ultra_secret_password |\n+----------+-----------------------+\n\nShould the output be only the decrypted password (\u003d self.app.stdout.write) instead of this box ?\nIt may allows the client to be used in shell pipeline","commit_id":"238817677171f9c38e9e574c324c01b2493fd350"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"dc07d87d79b73f39b58846345ffc3e649e11cf3d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"e1740d35_256d65f9","updated":"2024-07-08 08:32:16.000000000","message":"You may test with : openstack server password get my-windows --decrypt ~/.ssh/id_rsa","commit_id":"238817677171f9c38e9e574c324c01b2493fd350"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"edb3da380fc31de4ee9a22a397d96f89595eefd0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"200117d6_ea8d190d","in_reply_to":"98075ec6_63a7c095","updated":"2024-07-10 09:27:40.000000000","message":"Acknowledged","commit_id":"238817677171f9c38e9e574c324c01b2493fd350"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6fbf29a451e8decbb081452b8b4b0a2a0c395e24","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"4b60db93_336d5fdd","updated":"2024-08-01 12:07:46.000000000","message":"Looks pretty good. One comment inline. We also need a release note.","commit_id":"cb36976f9fa89b07b822b4b8d59924a6967a488c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"df3028836fbbd083da9fc25a8cc49491c6a8c1b9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"cbfbee73_38f5a265","updated":"2024-08-08 13:56:02.000000000","message":"functional test failure looks unrelated. I do have some outstanding requests that I missed in the first go round though (apologies)","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"}],"openstackclient/compute/v2/server.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"6fbf29a451e8decbb081452b8b4b0a2a0c395e24","unresolved":true,"context_lines":[{"line_number":3306,"context_line":"            \u0027--decrypt\u0027,"},{"line_number":3307,"context_line":"            metavar\u003d\u0027\u003cprivate_key\u003e\u0027,"},{"line_number":3308,"context_line":"            help\u003d_(\u0027Decrypt password using the private key\u0027),"},{"line_number":3309,"context_line":"        )"},{"line_number":3310,"context_line":"        return parser"},{"line_number":3311,"context_line":""},{"line_number":3312,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":7,"id":"cf2571a6_ef446b5e","line":3309,"updated":"2024-08-01 12:07:46.000000000","message":"Is there any reason you\u0027d ever *not* want to use this? Could we make it mandatory? \n\nAlso, iirc the private key we\u0027re referring to is the one matching the public key used when creating the server. Could we indicate that?","commit_id":"cb36976f9fa89b07b822b4b8d59924a6967a488c"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"7ed134eb745a16342ffecb51b64d807c3fe9f58f","unresolved":false,"context_lines":[{"line_number":3306,"context_line":"            \u0027--decrypt\u0027,"},{"line_number":3307,"context_line":"            metavar\u003d\u0027\u003cprivate_key\u003e\u0027,"},{"line_number":3308,"context_line":"            help\u003d_(\u0027Decrypt password using the private key\u0027),"},{"line_number":3309,"context_line":"        )"},{"line_number":3310,"context_line":"        return parser"},{"line_number":3311,"context_line":""},{"line_number":3312,"context_line":"    def take_action(self, parsed_args):"}],"source_content_type":"text/x-python","patch_set":7,"id":"9ba85d90_0f212676","line":3309,"in_reply_to":"cf2571a6_ef446b5e","updated":"2024-08-05 15:18:37.000000000","message":"Done","commit_id":"cb36976f9fa89b07b822b4b8d59924a6967a488c"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"df3028836fbbd083da9fc25a8cc49491c6a8c1b9","unresolved":true,"context_lines":[{"line_number":3306,"context_line":"            \u0027private_key\u0027,"},{"line_number":3307,"context_line":"            metavar\u003d\u0027\u003cprivate_key\u003e\u0027,"},{"line_number":3308,"context_line":"            help\u003d_("},{"line_number":3309,"context_line":"                \u0027The private key associated with the public key used to create the instance\u0027"},{"line_number":3310,"context_line":"            ),"},{"line_number":3311,"context_line":"        )"},{"line_number":3312,"context_line":"        return parser"}],"source_content_type":"text/x-python","patch_set":12,"id":"f39038c1_e59a85e8","line":3309,"updated":"2024-08-08 13:56:02.000000000","message":"```suggestion\n                \u0027The path to the private key associated with the public key \u0027\n                \u0027used to create the instance\u0027\n```","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"79218cc7ad44b607d1ff2c815b0335f7c3ae1ea2","unresolved":false,"context_lines":[{"line_number":3306,"context_line":"            \u0027private_key\u0027,"},{"line_number":3307,"context_line":"            metavar\u003d\u0027\u003cprivate_key\u003e\u0027,"},{"line_number":3308,"context_line":"            help\u003d_("},{"line_number":3309,"context_line":"                \u0027The private key associated with the public key used to create the instance\u0027"},{"line_number":3310,"context_line":"            ),"},{"line_number":3311,"context_line":"        )"},{"line_number":3312,"context_line":"        return parser"}],"source_content_type":"text/x-python","patch_set":12,"id":"226c0a10_aa3ee35e","line":3309,"in_reply_to":"f39038c1_e59a85e8","updated":"2024-08-13 08:05:31.000000000","message":"Done","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"df3028836fbbd083da9fc25a8cc49491c6a8c1b9","unresolved":true,"context_lines":[{"line_number":3322,"context_line":""},{"line_number":3323,"context_line":"        # Decrypt the password using the private key"},{"line_number":3324,"context_line":"        unencoded \u003d base64.b64decode(password)"},{"line_number":3325,"context_line":"        with open(parsed_args.private_key, \"rb\") as key_file:"},{"line_number":3326,"context_line":"            private_key \u003d serialization.load_pem_private_key("},{"line_number":3327,"context_line":"                key_file.read(),"},{"line_number":3328,"context_line":"                password\u003dNone,"}],"source_content_type":"text/x-python","patch_set":12,"id":"c4f5d306_8160aec0","line":3325,"updated":"2024-08-08 13:56:02.000000000","message":"Can you first check that this file exists and is a file, exiting \"cleanly\" (with a `CommandError`) if not.","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"79218cc7ad44b607d1ff2c815b0335f7c3ae1ea2","unresolved":false,"context_lines":[{"line_number":3322,"context_line":""},{"line_number":3323,"context_line":"        # Decrypt the password using the private key"},{"line_number":3324,"context_line":"        unencoded \u003d base64.b64decode(password)"},{"line_number":3325,"context_line":"        with open(parsed_args.private_key, \"rb\") as key_file:"},{"line_number":3326,"context_line":"            private_key \u003d serialization.load_pem_private_key("},{"line_number":3327,"context_line":"                key_file.read(),"},{"line_number":3328,"context_line":"                password\u003dNone,"}],"source_content_type":"text/x-python","patch_set":12,"id":"0f66f00f_19344ba3","line":3325,"in_reply_to":"c4f5d306_8160aec0","updated":"2024-08-13 08:05:31.000000000","message":"Done","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"df3028836fbbd083da9fc25a8cc49491c6a8c1b9","unresolved":true,"context_lines":[{"line_number":3336,"context_line":"        return ("},{"line_number":3337,"context_line":"            (\"password\",),"},{"line_number":3338,"context_line":"            (plaintext,),"},{"line_number":3339,"context_line":"        )"},{"line_number":3340,"context_line":""},{"line_number":3341,"context_line":""},{"line_number":3342,"context_line":"class PauseServer(command.Command):"}],"source_content_type":"text/x-python","patch_set":12,"id":"4cf6ef94_19958054","line":3339,"updated":"2024-08-08 13:56:02.000000000","message":"Rather than returning a table with a single value, could we subclass from `command.Command` instead and write the value to `self.app.stdout`. You can look at `ShowConsoleLog` in `openstackclient/compute/v2/console.py` for an example.","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"},{"author":{"_account_id":36866,"name":"Valentin Chassignol","display_name":"Vinetos","email":"contact@vinetos.fr","username":"vinetos"},"change_message_id":"79218cc7ad44b607d1ff2c815b0335f7c3ae1ea2","unresolved":false,"context_lines":[{"line_number":3336,"context_line":"        return ("},{"line_number":3337,"context_line":"            (\"password\",),"},{"line_number":3338,"context_line":"            (plaintext,),"},{"line_number":3339,"context_line":"        )"},{"line_number":3340,"context_line":""},{"line_number":3341,"context_line":""},{"line_number":3342,"context_line":"class PauseServer(command.Command):"}],"source_content_type":"text/x-python","patch_set":12,"id":"459dfbc5_7865e547","line":3339,"in_reply_to":"4cf6ef94_19958054","updated":"2024-08-13 08:05:31.000000000","message":"Done","commit_id":"13d0f82ccd796d98909612b4673971ae0237ab6e"}]}
