)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":28486,"name":"Tee Ngo","email":"tee.ngo@windriver.com","username":"teewrs"},"change_message_id":"0ccb1f74566944cbd396c9df1e4e7b692c7b73b3","unresolved":true,"context_lines":[{"line_number":14,"context_line":"  [--sysadmin-password \u003cpassword\u003e]"},{"line_number":15,"context_line":"  {--subcloud \u003csubcloud-name-or-id\u003e | --group \u003cgroup-name-or-id\u003e}"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Test Plan (WIP)"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"1. Verify command without sysadmin password, ensure user is prompted"},{"line_number":20,"context_line":"2. Verfiy command with sysadmin password"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"5e232ff2_605b2943","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":15},"updated":"2022-09-19 17:35:30.000000000","message":"Still WIP?","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"06568a9eb5cb2403a1cf7189b2407bde81124b1d","unresolved":false,"context_lines":[{"line_number":14,"context_line":"  [--sysadmin-password \u003cpassword\u003e]"},{"line_number":15,"context_line":"  {--subcloud \u003csubcloud-name-or-id\u003e | --group \u003cgroup-name-or-id\u003e}"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Test Plan (WIP)"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"1. Verify command without sysadmin password, ensure user is prompted"},{"line_number":20,"context_line":"2. Verfiy command with sysadmin password"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"670d0b10_77c1ee82","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":15},"in_reply_to":"5e232ff2_605b2943","updated":"2022-09-20 20:54:25.000000000","message":"Done","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":28486,"name":"Tee Ngo","email":"tee.ngo@windriver.com","username":"teewrs"},"change_message_id":"0ccb1f74566944cbd396c9df1e4e7b692c7b73b3","unresolved":true,"context_lines":[{"line_number":21,"context_line":"3. Verify command with subcloud option"},{"line_number":22,"context_line":"4. Verify command with group option"},{"line_number":23,"context_line":"5. Verify command with subcloud and group, ensure error msg is displayed"},{"line_number":24,"context_line":"6. Verify command with and without release version"},{"line_number":25,"context_line":"7. Verify command with and without local-only"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Story: 2010116"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"8777d0e5_f4458c8e","line":24,"range":{"start_line":24,"start_character":3,"end_line":24,"end_character":50},"updated":"2022-09-19 17:35:30.000000000","message":"Ensure an error message is displayed if release version is not specified.","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"06568a9eb5cb2403a1cf7189b2407bde81124b1d","unresolved":false,"context_lines":[{"line_number":21,"context_line":"3. Verify command with subcloud option"},{"line_number":22,"context_line":"4. Verify command with group option"},{"line_number":23,"context_line":"5. Verify command with subcloud and group, ensure error msg is displayed"},{"line_number":24,"context_line":"6. Verify command with and without release version"},{"line_number":25,"context_line":"7. Verify command with and without local-only"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Story: 2010116"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"0506fe12_7cb430d7","line":24,"range":{"start_line":24,"start_character":3,"end_line":24,"end_character":50},"in_reply_to":"8777d0e5_f4458c8e","updated":"2022-09-20 20:54:25.000000000","message":"Done","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":28486,"name":"Tee Ngo","email":"tee.ngo@windriver.com","username":"teewrs"},"change_message_id":"0ccb1f74566944cbd396c9df1e4e7b692c7b73b3","unresolved":true,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Story: 2010116"},{"line_number":28,"context_line":"Task: 46221"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Signed-off-by: BoYuan Chang \u003cboyuan.chang@windriver.com\u003e"},{"line_number":31,"context_line":"Change-Id: Ib43a1a5d8e81d2ed9442b2183388e06135284344"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"e279e0c6_92ac39b5","line":29,"updated":"2022-09-19 17:35:30.000000000","message":"Doesn\u0027t this depend on the API commit?","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"06568a9eb5cb2403a1cf7189b2407bde81124b1d","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Story: 2010116"},{"line_number":28,"context_line":"Task: 46221"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"Signed-off-by: BoYuan Chang \u003cboyuan.chang@windriver.com\u003e"},{"line_number":31,"context_line":"Change-Id: Ib43a1a5d8e81d2ed9442b2183388e06135284344"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"b7180d34_3f29a63d","line":29,"in_reply_to":"e279e0c6_92ac39b5","updated":"2022-09-20 20:54:25.000000000","message":"Done","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":15435,"name":"Al Bailey","email":"albailey1974@gmail.com","username":"albailey"},"change_message_id":"552ce06d9fb72766e42a06fb6e4b9235e2e70f36","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"48abdf15_c13bdf78","updated":"2022-09-11 17:06:41.000000000","message":"Were you also planning to add/update unit tests?","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"af354e59e0ac5c02c5d67e08c143921af60b85cc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"030a19c4_2dd59443","in_reply_to":"48abdf15_c13bdf78","updated":"2022-09-14 14:47:43.000000000","message":"I plan to create a separate code review for unit test (for create, delete and restore)","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":33608,"name":"Gabriel Silva Trevisan","display_name":"Gabriel Silva Trevisan","email":"gabriel.silvatrevisan@windriver.com","username":"gtrevisan"},"change_message_id":"bf82534ab0d6c426304beaffcd6619e18a61685c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"1c7a5a31_7047c7a5","updated":"2022-09-19 15:26:16.000000000","message":"Tested with dcmanager and playbook changes on distributed cloud lab. Integration working as expected.","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":33549,"name":"Kyle MacLeod","email":"Kyle.MacLeod@windriver.com","username":"kmacleod"},"change_message_id":"3117f73f64297ed7a7fb2cd38185f1b18c7d6efb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"3cfeafff_3762e07e","updated":"2022-09-19 16:59:09.000000000","message":"Waiting for comments to be resolved","commit_id":"7ea76a29877fd0409ea425ca30c3eccca9f4e598"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"a337de8ecdf2da57506c04de4b54df34268778f5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"8725fd1f_f081852d","updated":"2022-09-20 20:55:34.000000000","message":"recheck","commit_id":"a5decc626bb41320fb6efc33938f3c8174079bcd"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"05a42dd93c8eabcc24f53f936830fd170446bdb6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"a6f3bd59_af9f8cef","updated":"2022-09-20 21:18:47.000000000","message":"recheck","commit_id":"a5decc626bb41320fb6efc33938f3c8174079bcd"}],"distributedcloud-client/dcmanagerclient/api/v1/subcloud_backup_manager.py":[{"author":{"_account_id":15435,"name":"Al Bailey","email":"albailey1974@gmail.com","username":"albailey"},"change_message_id":"552ce06d9fb72766e42a06fb6e4b9235e2e70f36","unresolved":true,"context_lines":[{"line_number":59,"context_line":"        return resource"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def subcloud_backup_delete(self, url, data):"},{"line_number":62,"context_line":"        data \u003d json.dumps(data)"},{"line_number":63,"context_line":"        resp \u003d self.http_client.patch(url, data)"},{"line_number":64,"context_line":"        if resp.status_code !\u003d 200:"},{"line_number":65,"context_line":"            self._raise_api_exception(resp)"},{"line_number":66,"context_line":"        json_response_key \u003d get_json(resp)"},{"line_number":67,"context_line":"        json_objects \u003d json_response_key[\u0027subclouds\u0027]"}],"source_content_type":"text/x-python","patch_set":6,"id":"e77b3746_d8a66898","line":64,"range":{"start_line":62,"start_character":8,"end_line":64,"end_character":7},"updated":"2022-09-11 17:06:41.000000000","message":"I think this is fine, although normally I prefer to define a new variable rather than replace the input parameter (data).\n\nAlso,  if \u0027data\u0027 is None  you will be passing in a somewhat odd string to the client (in case you want to do a null check)\n\n  import json\n  x \u003d None\n  json.dumps(x)\n  \n\u0027null\u0027","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"ed8bbbe957ff9232ae191be5e0a0969e4ff4bc27","unresolved":false,"context_lines":[{"line_number":59,"context_line":"        return resource"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def subcloud_backup_delete(self, url, data):"},{"line_number":62,"context_line":"        data \u003d json.dumps(data)"},{"line_number":63,"context_line":"        resp \u003d self.http_client.patch(url, data)"},{"line_number":64,"context_line":"        if resp.status_code !\u003d 200:"},{"line_number":65,"context_line":"            self._raise_api_exception(resp)"},{"line_number":66,"context_line":"        json_response_key \u003d get_json(resp)"},{"line_number":67,"context_line":"        json_objects \u003d json_response_key[\u0027subclouds\u0027]"}],"source_content_type":"text/x-python","patch_set":6,"id":"425ac531_1c0ba80f","line":64,"range":{"start_line":62,"start_character":8,"end_line":64,"end_character":7},"in_reply_to":"e77b3746_d8a66898","updated":"2022-09-14 14:46:15.000000000","message":"I think in this case right here I won\u0027t run into a scenario where data is None. This is because some parameters are required, if I don\u0027t receive those parameters the expectation will be rasised before it gets here.","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":15435,"name":"Al Bailey","email":"albailey1974@gmail.com","username":"albailey"},"change_message_id":"94a3f908631bd6aa4d799134af1b38aa1fe366ea","unresolved":true,"context_lines":[{"line_number":66,"context_line":"    def subcloud_backup_delete(self, url, data):"},{"line_number":67,"context_line":"        data \u003d json.dumps(data)"},{"line_number":68,"context_line":"        resp \u003d self.http_client.patch(url, data)"},{"line_number":69,"context_line":"        if resp.status_code not in {204, 207}:"},{"line_number":70,"context_line":"            self._raise_api_exception(resp)"},{"line_number":71,"context_line":"        elif resp.status_code \u003d\u003d 207:"},{"line_number":72,"context_line":"            return json.loads(resp.content)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    def backup_subcloud_create(self, **kwargs):"}],"source_content_type":"text/x-python","patch_set":16,"id":"237a0edc_df3d9864","line":71,"range":{"start_line":69,"start_character":8,"end_line":71,"end_character":37},"updated":"2022-09-21 12:47:04.000000000","message":"nit: it might be nice to explicitly return None on line 73 (because you explicitly return something else on line 72)","commit_id":"a5decc626bb41320fb6efc33938f3c8174079bcd"},{"author":{"_account_id":33549,"name":"Kyle MacLeod","email":"Kyle.MacLeod@windriver.com","username":"kmacleod"},"change_message_id":"9669a2ee0ac28e732ddef10c58836a8007d31378","unresolved":true,"context_lines":[{"line_number":66,"context_line":"    def subcloud_backup_delete(self, url, data):"},{"line_number":67,"context_line":"        data \u003d json.dumps(data)"},{"line_number":68,"context_line":"        resp \u003d self.http_client.patch(url, data)"},{"line_number":69,"context_line":"        if resp.status_code not in {204, 207}:"},{"line_number":70,"context_line":"            self._raise_api_exception(resp)"},{"line_number":71,"context_line":"        elif resp.status_code \u003d\u003d 207:"},{"line_number":72,"context_line":"            return json.loads(resp.content)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    def backup_subcloud_create(self, **kwargs):"}],"source_content_type":"text/x-python","patch_set":16,"id":"f7d05292_fe529a1f","line":71,"range":{"start_line":69,"start_character":8,"end_line":71,"end_character":37},"in_reply_to":"237a0edc_df3d9864","updated":"2022-09-21 13:22:25.000000000","message":"non-nit. Let\u0027s fix this up for clarity","commit_id":"a5decc626bb41320fb6efc33938f3c8174079bcd"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"57214de3e8d1fc520c2500c59ee7dee4696ab4bf","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    def subcloud_backup_delete(self, url, data):"},{"line_number":67,"context_line":"        data \u003d json.dumps(data)"},{"line_number":68,"context_line":"        resp \u003d self.http_client.patch(url, data)"},{"line_number":69,"context_line":"        if resp.status_code not in {204, 207}:"},{"line_number":70,"context_line":"            self._raise_api_exception(resp)"},{"line_number":71,"context_line":"        elif resp.status_code \u003d\u003d 207:"},{"line_number":72,"context_line":"            return json.loads(resp.content)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    def backup_subcloud_create(self, **kwargs):"}],"source_content_type":"text/x-python","patch_set":16,"id":"2ecba025_2badfe21","line":71,"range":{"start_line":69,"start_character":8,"end_line":71,"end_character":37},"in_reply_to":"f7d05292_fe529a1f","updated":"2022-09-21 15:03:31.000000000","message":"Done","commit_id":"a5decc626bb41320fb6efc33938f3c8174079bcd"}],"distributedcloud-client/dcmanagerclient/commands/v1/subcloud_backup_manager.py":[{"author":{"_account_id":34605,"name":"Li Zhu","email":"li.zhu@windriver.com","username":"lzhu1"},"change_message_id":"7bbd1986c2b9bea38a839680b6d32b2f5a9c4f4c","unresolved":true,"context_lines":[{"line_number":271,"context_line":"            data[\u0027registry_images\u0027] \u003d \u0027false\u0027"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"        if parsed_args.sysadmin_password is not None:"},{"line_number":274,"context_line":"            data[\u0027sysadmin_password\u0027] \u003d base64.b64encode("},{"line_number":275,"context_line":"                parsed_args.sysadmin_password.encode(\"utf-8\"))"},{"line_number":276,"context_line":"        else:"},{"line_number":277,"context_line":"            password \u003d utils.prompt_for_password()"}],"source_content_type":"text/x-python","patch_set":6,"id":"7af8a998_54019d5a","line":274,"updated":"2022-09-12 14:25:19.000000000","message":"Did you test on Debian?","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":33608,"name":"Gabriel Silva Trevisan","display_name":"Gabriel Silva Trevisan","email":"gabriel.silvatrevisan@windriver.com","username":"gtrevisan"},"change_message_id":"b550fa870bb82dcb280e2c2fe977ae21d91ee446","unresolved":true,"context_lines":[{"line_number":271,"context_line":"            data[\u0027registry_images\u0027] \u003d \u0027false\u0027"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"        if parsed_args.sysadmin_password is not None:"},{"line_number":274,"context_line":"            data[\u0027sysadmin_password\u0027] \u003d base64.b64encode("},{"line_number":275,"context_line":"                parsed_args.sysadmin_password.encode(\"utf-8\"))"},{"line_number":276,"context_line":"        else:"},{"line_number":277,"context_line":"            password \u003d utils.prompt_for_password()"}],"source_content_type":"text/x-python","patch_set":6,"id":"f3d34637_c7b558f6","line":274,"in_reply_to":"7af8a998_54019d5a","updated":"2022-09-14 11:43:29.000000000","message":"To be tested on Debian as well. Encoding issue should be fixed by https://review.opendev.org/c/starlingx/distcloud-client/+/857235.","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":34605,"name":"Li Zhu","email":"li.zhu@windriver.com","username":"lzhu1"},"change_message_id":"0be833c08f9cae410853ba6ed7ba8308804fcb71","unresolved":false,"context_lines":[{"line_number":271,"context_line":"            data[\u0027registry_images\u0027] \u003d \u0027false\u0027"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":"        if parsed_args.sysadmin_password is not None:"},{"line_number":274,"context_line":"            data[\u0027sysadmin_password\u0027] \u003d base64.b64encode("},{"line_number":275,"context_line":"                parsed_args.sysadmin_password.encode(\"utf-8\"))"},{"line_number":276,"context_line":"        else:"},{"line_number":277,"context_line":"            password \u003d utils.prompt_for_password()"}],"source_content_type":"text/x-python","patch_set":6,"id":"9e08cd80_a6564007","line":274,"in_reply_to":"f3d34637_c7b558f6","updated":"2022-09-19 17:11:46.000000000","message":"Ack","commit_id":"1faf89e360c6a7b1a4796011da0dc38e281b3f59"},{"author":{"_account_id":33549,"name":"Kyle MacLeod","email":"Kyle.MacLeod@windriver.com","username":"kmacleod"},"change_message_id":"972ea1c570bfdf2e99186b19822a9f8183a95a8a","unresolved":true,"context_lines":[{"line_number":255,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"},{"line_number":256,"context_line":""},{"line_number":257,"context_line":"        if parsed_args.subcloud and parsed_args.group:"},{"line_number":258,"context_line":"            error_msg \u003d (\u0027The command only applies to a single subcloud \u0027"},{"line_number":259,"context_line":"                         \u0027or a subcloud group, not both.\u0027)"},{"line_number":260,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"},{"line_number":261,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"870219cc_7cde9807","line":258,"range":{"start_line":258,"start_character":26,"end_line":258,"end_character":30},"updated":"2022-09-14 17:06:22.000000000","message":"nit: This","commit_id":"428d8af53b73bc424e4eaf122e2822816bbcd585"},{"author":{"_account_id":34221,"name":"Bo Yuan Chang","email":"boyuan.chang@windriver.com","username":"bchang"},"change_message_id":"2ccff34ce4a80b8ec046d5be04a48b9c1af9b83b","unresolved":false,"context_lines":[{"line_number":255,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"},{"line_number":256,"context_line":""},{"line_number":257,"context_line":"        if parsed_args.subcloud and parsed_args.group:"},{"line_number":258,"context_line":"            error_msg \u003d (\u0027The command only applies to a single subcloud \u0027"},{"line_number":259,"context_line":"                         \u0027or a subcloud group, not both.\u0027)"},{"line_number":260,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"},{"line_number":261,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"91ca1a1b_72ded91d","line":258,"range":{"start_line":258,"start_character":26,"end_line":258,"end_character":30},"in_reply_to":"870219cc_7cde9807","updated":"2022-09-15 13:38:32.000000000","message":"Done","commit_id":"428d8af53b73bc424e4eaf122e2822816bbcd585"},{"author":{"_account_id":33549,"name":"Kyle MacLeod","email":"Kyle.MacLeod@windriver.com","username":"kmacleod"},"change_message_id":"972ea1c570bfdf2e99186b19822a9f8183a95a8a","unresolved":true,"context_lines":[{"line_number":290,"context_line":"                                       data\u003ddata)"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"        except Exception as e:"},{"line_number":293,"context_line":"            print(e)"},{"line_number":294,"context_line":"            error_msg \u003d \"Unable to delete backup\""},{"line_number":295,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"93cdd1ed_8630b82d","line":294,"range":{"start_line":293,"start_character":0,"end_line":294,"end_character":49},"updated":"2022-09-14 17:06:22.000000000","message":"Is this the correct way to show errors to the user?  Note that they won\u0027t show up in the client log file this way. I\u0027d prefer to be using LOG.exception(error_msg) here if we can. Same for line 188 in the code above this.","commit_id":"428d8af53b73bc424e4eaf122e2822816bbcd585"},{"author":{"_account_id":15435,"name":"Al Bailey","email":"albailey1974@gmail.com","username":"albailey"},"change_message_id":"e5ca3965a014f9753f1e93bc731a2bd82429eb61","unresolved":true,"context_lines":[{"line_number":290,"context_line":"                                       data\u003ddata)"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"        except Exception as e:"},{"line_number":293,"context_line":"            print(e)"},{"line_number":294,"context_line":"            error_msg \u003d \"Unable to delete backup\""},{"line_number":295,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"ca42f1e3_ce770161","line":294,"range":{"start_line":293,"start_character":0,"end_line":294,"end_character":49},"in_reply_to":"93cdd1ed_8630b82d","updated":"2022-09-14 17:23:24.000000000","message":"The API would log the errors, but the client (CLI) typically just outputs to stdout.\n\nother STX clients do this as well like cgts_client and sm-client.\n\nI think we just based how our clients print/log based off existing openstack clients \nex:  https://github.com/openstack/python-novaclient/blob/master/novaclient/v2/shell.py#L1037","commit_id":"428d8af53b73bc424e4eaf122e2822816bbcd585"},{"author":{"_account_id":33549,"name":"Kyle MacLeod","email":"Kyle.MacLeod@windriver.com","username":"kmacleod"},"change_message_id":"8d8be82a627f323a51aef0dc08bd01616f3d5e11","unresolved":false,"context_lines":[{"line_number":290,"context_line":"                                       data\u003ddata)"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"        except Exception as e:"},{"line_number":293,"context_line":"            print(e)"},{"line_number":294,"context_line":"            error_msg \u003d \"Unable to delete backup\""},{"line_number":295,"context_line":"            raise exceptions.DCManagerClientException(error_msg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"9dd5c813_943bd6b1","line":294,"range":{"start_line":293,"start_character":0,"end_line":294,"end_character":49},"in_reply_to":"ca42f1e3_ce770161","updated":"2022-09-14 17:25:24.000000000","message":"Thanks for clarifying, Al.","commit_id":"428d8af53b73bc424e4eaf122e2822816bbcd585"}]}
