)]}'
{"doc/source/command-objects/snapshot.rst":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4ef830c4cf807399dc4eb52455241f2183fae0a5","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        [--property \u003ckey\u003dvalue\u003e [...] ]"},{"line_number":107,"context_line":"        \u003cvolume\u003e \u003csnapshot\u003e"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":".. option:: --name \u003cname\u003e"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"    Snapshot name (default to None)"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":".. option:: --description \u003cdescription\u003e"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"    Snapshot description (default to None)"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":".. option:: --property \u003ckey\u003dvalue\u003e"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    Set a property to the newly created snapshot"},{"line_number":120,"context_line":"    (repeat option to set multiple properties)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":".. _snapshot_manage:"},{"line_number":123,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_e1620a16","line":120,"range":{"start_line":109,"start_character":0,"end_line":120,"end_character":46},"updated":"2016-09-14 05:26:16.000000000","message":"These are all available to be changed with \u0027snapshot set\u0027","commit_id":"8b18eb7f01d432d50b5b0d06e65a45f4306b54a8"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"4ef830c4cf807399dc4eb52455241f2183fae0a5","unresolved":false,"context_lines":[{"line_number":123,"context_line":""},{"line_number":124,"context_line":".. describe:: \u003cvolume\u003e"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":"    Cinder volume already exists in volume backend (name or ID)"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":".. describe:: \u003csnapshot\u003e"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a8ec9b2_41bbbe72","line":126,"range":{"start_line":126,"start_character":4,"end_line":126,"end_character":10},"updated":"2016-09-14 05:26:16.000000000","message":"remove \"Cinder\" we should never reference project code names","commit_id":"8b18eb7f01d432d50b5b0d06e65a45f4306b54a8"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"055854377a821306dce7f041858236a9b0dd15bb","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    The attribute(s) of the exsiting remote snapshot"},{"line_number":44,"context_line":"    (admin required) (repeat option to specify multiple attributes)"},{"line_number":45,"context_line":"    e.g.: \u0027--remote-source source-name\u003dtest_name --remote-source source-id\u003dtest_id\u0027"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    *Volume version 2 only*"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"fa6399be_0e81fb4a","line":45,"updated":"2016-10-11 15:01:48.000000000","message":"How many possible keys are there?","commit_id":"403428ffb9c4803b2ff9df2f2a857d579f1fba2e"},{"author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"change_message_id":"96e990dfaa28b3eed00ec6ae9c27a9bcf809d2ca","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    The attribute(s) of the exsiting remote snapshot"},{"line_number":44,"context_line":"    (admin required) (repeat option to specify multiple attributes)"},{"line_number":45,"context_line":"    e.g.: \u0027--remote-source source-name\u003dtest_name --remote-source source-id\u003dtest_id\u0027"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    *Volume version 2 only*"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"fa6399be_b1c62f98","line":45,"in_reply_to":"fa6399be_0e81fb4a","updated":"2016-10-13 11:34:58.000000000","message":"Infinite and arbitrary. They are decided by the individual driver implementation.","commit_id":"403428ffb9c4803b2ff9df2f2a857d579f1fba2e"}],"openstackclient/volume/v2/snapshot.py":[{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"612d8efcbd808ccf23b039100475c4b3c0fd9509","unresolved":false,"context_lines":[{"line_number":239,"context_line":"            volume_client.volumes, parsed_args.volume)"},{"line_number":240,"context_line":"        existing_snapshot \u003d utils.find_resource("},{"line_number":241,"context_line":"            volume_client.volume_snapshots, parsed_args.snapshot)"},{"line_number":242,"context_line":"        ref_dict \u003d {\u0027source-id\u0027: existing_snapshot.id}"},{"line_number":243,"context_line":"        snapshot \u003d volume_client.volume_snapshots.manage("},{"line_number":244,"context_line":"            volume_id\u003dvolume.id,"},{"line_number":245,"context_line":"            ref\u003dref_dict,"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_fc5c70f2","line":242,"range":{"start_line":242,"start_character":20,"end_line":242,"end_character":31},"updated":"2016-08-31 11:18:19.000000000","message":"In cinderclient, we can choose \u0027source-id\u0027 or \u0027source-name\u0027 here by specifying \u0027--id-type\u0027 option. But I remove the option and use only \u0027source-id\u0027 here because I add a finding for the source by name or ID before (in Line 240 and 241), so that users can specify the source by both name or ID without \"--id-type\".","commit_id":"3bba5cf2856cf6a0a1510c35dd5ad1dd842fb931"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"71c70e9aef916e5aad660fc94c49f59c94790b09","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            volume_client.volumes, parsed_args.volume).id"},{"line_number":83,"context_line":"        if parsed_args.remote_source_id or parsed_args.remote_source_name:"},{"line_number":84,"context_line":"            # Create a new snapshot from an existing remote snapshot source"},{"line_number":85,"context_line":"            if parsed_args.remote_source_id:"},{"line_number":86,"context_line":"                ref_dict \u003d {\u0027source-id\u0027: parsed_args.remote_source_id}"},{"line_number":87,"context_line":"            else:"},{"line_number":88,"context_line":"                ref_dict \u003d {\u0027source-name\u0027: parsed_args.remote_source_name}"},{"line_number":89,"context_line":"            snapshot \u003d volume_client.volume_snapshots.manage("},{"line_number":90,"context_line":"                volume_id\u003dvolume_id,"},{"line_number":91,"context_line":"                ref\u003dref_dict,"},{"line_number":92,"context_line":"                name\u003dparsed_args.name,"},{"line_number":93,"context_line":"                description\u003dparsed_args.description,"},{"line_number":94,"context_line":"                metadata\u003dparsed_args.property,"},{"line_number":95,"context_line":"            )"},{"line_number":96,"context_line":"        else:"},{"line_number":97,"context_line":"            # create a new snapshot from scratch"},{"line_number":98,"context_line":"            snapshot \u003d volume_client.volume_snapshots.create("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8ec9b2_0185e5ab","line":95,"range":{"start_line":85,"start_character":12,"end_line":95,"end_character":13},"updated":"2016-09-21 01:45:30.000000000","message":"I made a similar comment on the patch for managing volumes, but the ref dict needs to have both the key and value passed in by the admin. There isn\u0027t any hard requirement for \u0027source-id\u0027 or \u0027source-name\u0027 as the key used. There isn\u0027t even a requirement on number of key-value pairs, so some backends could need more than one (the cinderclient didn\u0027t really support that, you could only specify a single id-type and identifier)\n\nIdeally the cli for this and the manage volume could take in an arbitrary number of key value pairs similar to like metadata options.","commit_id":"26fa8331450cdd0458bc0ae2e84ff15d9ddcb25c"},{"author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"change_message_id":"e358191e199b09cb164b4b2b2ee5955702dc4ba7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"            volume_client.volumes, parsed_args.volume).id"},{"line_number":83,"context_line":"        if parsed_args.remote_source_id or parsed_args.remote_source_name:"},{"line_number":84,"context_line":"            # Create a new snapshot from an existing remote snapshot source"},{"line_number":85,"context_line":"            if parsed_args.remote_source_id:"},{"line_number":86,"context_line":"                ref_dict \u003d {\u0027source-id\u0027: parsed_args.remote_source_id}"},{"line_number":87,"context_line":"            else:"},{"line_number":88,"context_line":"                ref_dict \u003d {\u0027source-name\u0027: parsed_args.remote_source_name}"},{"line_number":89,"context_line":"            snapshot \u003d volume_client.volume_snapshots.manage("},{"line_number":90,"context_line":"                volume_id\u003dvolume_id,"},{"line_number":91,"context_line":"                ref\u003dref_dict,"},{"line_number":92,"context_line":"                name\u003dparsed_args.name,"},{"line_number":93,"context_line":"                description\u003dparsed_args.description,"},{"line_number":94,"context_line":"                metadata\u003dparsed_args.property,"},{"line_number":95,"context_line":"            )"},{"line_number":96,"context_line":"        else:"},{"line_number":97,"context_line":"            # create a new snapshot from scratch"},{"line_number":98,"context_line":"            snapshot \u003d volume_client.volume_snapshots.create("}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8ec9b2_4818d3d3","line":95,"range":{"start_line":85,"start_character":12,"end_line":95,"end_character":13},"in_reply_to":"7a8ec9b2_0185e5ab","updated":"2016-09-21 11:40:09.000000000","message":"I think one option with format \"key\u003dvalue key\u003dvalue ...\" maybe a good idea. But before we do that, we need to make sure we should add this function as some addition options or a new command.","commit_id":"26fa8331450cdd0458bc0ae2e84ff15d9ddcb25c"}]}
