)]}'
{"magnumclient/osc/v1/credentials.py":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"075b8bfbc39bc6ffe37e336e601698ffffe8416b","unresolved":true,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"class RotateCredential(command.Command):"},{"line_number":18,"context_line":"    _description \u003d _(\"Rotate a credential.\")"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def get_parser(self, prog_name):"},{"line_number":21,"context_line":"        parser \u003d super(RotateCredential, self).get_parser(prog_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5078409e_10e9da0e","line":18,"updated":"2025-08-28 04:24:55.000000000","message":"Suggest making this more descriptive for the end user.\n\nHow about something like: `Rotate the credentials for the cluster using the current user account.`","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"class RotateCredential(command.Command):"},{"line_number":18,"context_line":"    _description \u003d _(\"Rotate a credential.\")"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"    def get_parser(self, prog_name):"},{"line_number":21,"context_line":"        parser \u003d super(RotateCredential, self).get_parser(prog_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7fb71542_f41d665c","line":18,"in_reply_to":"5078409e_10e9da0e","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"075b8bfbc39bc6ffe37e336e601698ffffe8416b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7436a375_df296ea2","line":36,"updated":"2025-08-28 04:24:55.000000000","message":"When a credential rotation request is accepted, there is no user output.\n\nSuggest adding:\n```\nelse:\n            print(\"Request to rotate credentials for cluster %s accepted\"\n                  % cluster.uuid)\n```\n(and the required `cluster \u003d` on line 33)","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"fd3d8387_2e2d2e73","line":36,"in_reply_to":"7436a375_df296ea2","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"}],"magnumclient/v1/credentials.py":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"075b8bfbc39bc6ffe37e336e601698ffffe8416b","unresolved":true,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def update(self, id):"},{"line_number":29,"context_line":"        resp, resp_body \u003d self.api.json_request(\u0027PATCH\u0027, self._path(id\u003did))"},{"line_number":30,"context_line":"        return self.resource_class(self, resp_body)"}],"source_content_type":"text/x-python","patch_set":3,"id":"c23dec52_e7691acc","line":30,"updated":"2025-08-28 04:24:55.000000000","message":"On success, the Magnum API returns a json structure with a cluster uuid in it. So the `resource_class` is more suitably named \u0027Cluster` than `Credential` as used here.","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def update(self, id):"},{"line_number":29,"context_line":"        resp, resp_body \u003d self.api.json_request(\u0027PATCH\u0027, self._path(id\u003did))"},{"line_number":30,"context_line":"        return self.resource_class(self, resp_body)"}],"source_content_type":"text/x-python","patch_set":3,"id":"b5985b43_ca1bd71f","line":30,"in_reply_to":"c23dec52_e7691acc","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"}],"magnumclient/v1/credentials_shell.py":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"075b8bfbc39bc6ffe37e336e601698ffffe8416b","unresolved":true,"context_lines":[{"line_number":11,"context_line":"#    under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"def do_credential_update(cs, args):"},{"line_number":15,"context_line":"    cs.credentials.update(args.cluster)"}],"source_content_type":"text/x-python","patch_set":3,"id":"2c240e25_1c71600a","line":14,"updated":"2025-08-28 04:24:55.000000000","message":"As discussed, this is unused by the CLI - so remove this file until it\u0027s needed.","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","unresolved":false,"context_lines":[{"line_number":11,"context_line":"#    under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"def do_credential_update(cs, args):"},{"line_number":15,"context_line":"    cs.credentials.update(args.cluster)"}],"source_content_type":"text/x-python","patch_set":3,"id":"40619066_a38a8b74","line":14,"in_reply_to":"2c240e25_1c71600a","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"}],"releasenotes/notes/credential-rotate-02cc95069e3329fb.yaml":[{"author":{"_account_id":14394,"name":"Dale Smith","email":"dale@catalystcloud.nz","username":"dalees"},"change_message_id":"075b8bfbc39bc6ffe37e336e601698ffffe8416b","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":"    Implemented Openstack command for credential-rotate."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"4c6c9fd5_772de1d0","line":4,"updated":"2025-08-28 04:24:55.000000000","message":"s/Openstack/OpenStack/\n\nPerhaps also mention in the release notes the command to access this; `openstack coe credential rotate \u003ccluster\u003e`","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","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":"    Implemented Openstack command for credential-rotate."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"44ef211f_ef918c79","line":4,"in_reply_to":"4c6c9fd5_772de1d0","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"}],"setup.cfg":[{"author":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"change_message_id":"44613e935810f8a2128fc0b2ad3881b86daa1672","unresolved":true,"context_lines":[{"line_number":66,"context_line":"    coe_nodegroup_delete \u003d magnumclient.osc.v1.nodegroups:DeleteNodeGroup"},{"line_number":67,"context_line":"    coe_nodegroup_update \u003d magnumclient.osc.v1.nodegroups:UpdateNodeGroup"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    coe_credential_rotate\u003d magnumclient.osc.v1.credentials:RotateCredential"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":3,"id":"3bec7dd4_23a88a44","line":69,"updated":"2025-08-27 04:51:04.000000000","message":"```suggestion\n    coe_credential_rotate \u003d magnumclient.osc.v1.credentials:RotateCredential\n```","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"},{"author":{"_account_id":38227,"name":"Matthew Northcott","display_name":"Matthew Northcott","email":"matthewnorthcott@catalystcloud.nz","username":"northcottmt"},"change_message_id":"27131f1df905250a70c8e96cd725aaa66a756878","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    coe_nodegroup_delete \u003d magnumclient.osc.v1.nodegroups:DeleteNodeGroup"},{"line_number":67,"context_line":"    coe_nodegroup_update \u003d magnumclient.osc.v1.nodegroups:UpdateNodeGroup"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    coe_credential_rotate\u003d magnumclient.osc.v1.credentials:RotateCredential"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-ttcn-cfg","patch_set":3,"id":"c31fbe7e_098d18c0","line":69,"in_reply_to":"3bec7dd4_23a88a44","updated":"2025-08-29 02:08:34.000000000","message":"Done","commit_id":"61558e3288d82cfd32a4463ca5ac0a37ae24722e"}]}
