)]}'
{"id":"openstack%2Fpython-openstackclient~363574","triplet_id":"openstack%2Fpython-openstackclient~master~I9e5fad4f0db5b44d528eb6b930edbc816e392c3a","project":"openstack/python-openstackclient","branch":"master","topic":"bp/cinder-command-support","hashtags":[],"change_id":"I9e5fad4f0db5b44d528eb6b930edbc816e392c3a","subject":"Add \"--remote-source\" option to \"volume snapshot create\" command","status":"MERGED","created":"2016-08-31 11:00:52.000000000","updated":"2016-12-13 22:58:16.000000000","submitted":"2016-12-13 22:58:16.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":7,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"bfdfd5051c40ce6909cc5a72235bba3524e56d7b","_number":363574,"virtual_id_number":363574,"owner":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":2,"date":"2016-12-13 22:58:16.000000000","post_submit":true,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},{"value":0,"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},{"value":0,"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"all":[{"value":0,"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":2,"date":"2016-12-12 19:21:42.000000000","_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},{"value":0,"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},{"value":0,"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},{"value":2,"date":"2016-12-13 21:40:44.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"all":[{"value":0,"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},{"value":0,"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},{"value":0,"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},{"value":1,"date":"2016-12-13 21:40:44.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2016-09-14 05:20:20.000000000","updated_by":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"reviewer":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"state":"REVIEWER"},{"updated":"2016-09-14 05:25:23.000000000","updated_by":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"reviewer":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"state":"REVIEWER"},{"updated":"2016-10-12 20:43:38.000000000","updated_by":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"reviewer":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"state":"REVIEWER"},{"updated":"2016-10-13 11:34:58.000000000","updated_by":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"reviewer":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"state":"REVIEWER"},{"updated":"2016-12-12 19:21:42.000000000","updated_by":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"reviewer":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"state":"REVIEWER"},{"updated":"2016-12-13 21:40:44.000000000","updated_by":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"reviewer":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"state":"REVIEWER"},{"updated":"2016-12-13 22:58:16.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"e0849ab52ad0a3c93f8bc92a094a4ab10dc50884","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-08-31 11:00:52.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"612d8efcbd808ccf23b039100475c4b3c0fd9509","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-08-31 11:18:19.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"fc463327536cba02fef287cccad3c393c8df6749","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-08-31 12:05:47.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/1/check/gate-python-openstackclient-docs-ubuntu-xenial/cd75602//doc/build/html/ : SUCCESS in 4m 20s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/1/check/gate-python-openstackclient-pep8-ubuntu-xenial/38f04d9/ : SUCCESS in 3m 25s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/1/check/gate-python-openstackclient-python27-ubuntu-xenial/7da23a5/ : SUCCESS in 5m 03s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/1/check/gate-python-openstackclient-python34/5958ac6/ : SUCCESS in 3m 01s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/1/check/gate-python-openstackclient-python35-nv/9e1ea55/ : SUCCESS in 3m 41s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/1/check/gate-python-openstackclient-releasenotes/1823436//releasenotes/build/html/ : SUCCESS in 3m 37s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/1/check/gate-tempest-dsvm-neutron-src-python-openstackclient/8a15787/ : SUCCESS in 1h 03m 23s\n- check-osc-plugins http://logs.openstack.org/74/363574/1/check/check-osc-plugins/e260dd5/ : SUCCESS in 6m 16s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/1/check/gate-osc-dsvm-functional/32b3fb8/ : SUCCESS in 27m 16s","accounts_in_message":[],"_revision_number":1},{"id":"e4f28973150468c83bce66ccb062f1f6c27f5f7e","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-09-09 15:54:10.000000000","message":"Patch Set 1: Verified-1\n\nMerge Failed.\n\nThis change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.","accounts_in_message":[],"_revision_number":1},{"id":"b97395b26e5b7f4f6fd117790b33e316b11e59a4","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-11 02:59:46.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"7b18c64b8e339c3290ef66c0ec2115b5c07458d5","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-09-11 03:58:37.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/2/check/gate-python-openstackclient-docs-ubuntu-xenial/d7e7e2f//doc/build/html/ : SUCCESS in 2m 50s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/2/check/gate-python-openstackclient-pep8-ubuntu-xenial/de16626/ : SUCCESS in 3m 41s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/2/check/gate-python-openstackclient-python27-ubuntu-xenial/bfd1640/ : SUCCESS in 2m 38s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/2/check/gate-python-openstackclient-python34/a58dfcc/ : SUCCESS in 6m 04s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/2/check/gate-python-openstackclient-python35-nv/649616d/ : SUCCESS in 5m 08s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/2/check/gate-python-openstackclient-releasenotes/664ea9c//releasenotes/build/html/ : SUCCESS in 3m 34s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/2/check/gate-tempest-dsvm-neutron-src-python-openstackclient/e8e37d7/ : SUCCESS in 58m 38s\n- check-osc-plugins http://logs.openstack.org/74/363574/2/check/check-osc-plugins/ab49712/ : SUCCESS in 3m 08s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/2/check/gate-osc-dsvm-functional/614267c/ : SUCCESS in 37m 53s","accounts_in_message":[],"_revision_number":2},{"id":"4ef830c4cf807399dc4eb52455241f2183fae0a5","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-14 05:26:16.000000000","message":"Patch Set 2:\n\n(2 comments)\n\nI added Sean and John as reviewers, since they are Cinder core. I honestly have no idea what the \"snapshot manage\" command is supposed to do. I tried to find it in the APIs, but that didn\u0027t bring up much: http://developer.openstack.org/api-ref/block-storage/v2/\n\nHoping for some guidance from the cinder team here.","accounts_in_message":[],"_revision_number":2},{"id":"ad6b5014036c4f0de409d96518840298aa8776e8","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-14 05:26:19.000000000","message":"Patch Set 2: Code-Review-1","accounts_in_message":[],"_revision_number":2},{"id":"e8a0a0cca17a74c7a43e23ade131886baa81239a","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-14 08:17:49.000000000","message":"Patch Set 2:\n\n\u003e (2 comments)\n \u003e \n \u003e I added Sean and John as reviewers, since they are Cinder core. I\n \u003e honestly have no idea what the \"snapshot manage\" command is\n \u003e supposed to do. I tried to find it in the APIs, but that didn\u0027t\n \u003e bring up much: http://developer.openstack.org/api-ref/block-storage/v2/\n \u003e \n \u003e Hoping for some guidance from the cinder team here.\n\nThank you Steve, I didn\u0027t find it in APIs either, but I see the \"volume manage\" in the APIs doc: http://developer.openstack.org/api-ref/block-storage/v2/?expanded\u003dmanage-existing-volume-detail\nI think the \"snapshot manage\" maybe similar with it, this maybe help, what do you think?","accounts_in_message":[],"_revision_number":2},{"id":"b9b5242013966d9705b5f9d2b153f1cd7cf37ffc","author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"date":"2016-09-14 12:49:25.000000000","message":"Patch Set 2:\n\nYou are correct. That command is to be able to manage an existing snapshot. For example, if a snapshot was created directly on the array, outside of OpenStack, then Cinder will not know anything about it and will not display it to end users. Manage existing snapshot allows an admin to \"tell\" Cinder about the existence of this snapshot and create an entry in our database so we can use it and manage it like we would as if it was created by Cinder.","accounts_in_message":[],"_revision_number":2},{"id":"1f0eb18446351d51a67f9f48d680bdfa9efb5bf8","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-14 14:41:08.000000000","message":"Patch Set 2:\n\nOK, i\u0027m getting this now :)\n\nthe volumeId needed for snapshot-manage is treated the same way we treat a volumeId for snapshot-create.\n\nsean, thanks again for the great explanation, now i get that the snapshot already exists and this is more of \"create me a snapshot entry in the cinder db, so i can manage is with cinder APIs\".\n\nThat also helps me understand why we had \"host\" as an option. The only question from me now is how should we represent \"ref\" -- I guess that is why the cinder CLI command has --source-id and --source-name [1]\n\n[1] https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v3/shell.py#L2572-L2575","accounts_in_message":[],"_revision_number":2},{"id":"0ce4e2668d4ddf849c06f49dcb6f34d3f171007b","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-09-14 15:41:29.000000000","message":"Patch Set 2: Code-Review-1\n\nmanage and unmanage are not appropriate action names.  This is still a create/delete operation, but not creating from scratch or not deleting and removing content.  Similar to image create --location (or whatever that becomes).","accounts_in_message":[],"_revision_number":2},{"id":"fd2cf761293a408affa390fa87ce4e2bb8cdbbd0","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-15 03:46:16.000000000","message":"Patch Set 2:\n\nHi, Sean, thank you for your great explanation, Dean and Steve, Thanks for your reviewing. \nAs Dean said, \"manage and unmanage are not appropriate action names\", maybe we need to change the command name. We can see the manage command imports an existing snapshot (which not created by Cinder) from backend storage, so what about name it as \"snapshot import\" and \"snapshot unimport\"? (just a suggestion)\nAnd about representing \"ref\", I think we can use\n    --source-id \u003csource-id\u003e | --source-name \u003csource-name\u003e\noptions in OSC.\nWhat do you think about I said above?","accounts_in_message":[],"_revision_number":2},{"id":"37612808ec8daa9ea9f5b0e9a8964905800bfcc8","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-09-15 16:35:56.000000000","message":"Patch Set 2:\n\n\u003e We can see the manage command imports an existing snapshot (which not created by Cinder) from backend storage, so what about name it as \"snapshot import\" and \"snapshot unimport\"?\n\nHow is a user going to think about those operations?  \u0027Import\u0027 implies a copy of data in my mind.  We define \u0027create\u0027 as creating a new resource.  To me, create is closer, as it _does_ create a new resource visible to the cloud even if it does _not_ create a new copy of the volume.\n\n\u003e And about representing \"ref\", I think we can use\n\u003e     --source-id \u003csource-id\u003e | --source-name \u003csource-name\u003e\n\nI think \u0027--source\u0027 is preferable and let the client sort out name/id, as we do everywhere else (where possible) in OSC.","accounts_in_message":[],"_revision_number":2},{"id":"b75d0fa38b54b512750d7c6f94587b3ef2e8c854","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-15 21:08:35.000000000","message":"Patch Set 2:\n\nI think re-using the \"create\" command makes sense here.\n\nFor both snapshot and volume create we should have new options...\n\n  --remote-host, --remote-source-id, --remote-source-name \n\nthese should make up the host + ref that we need to create the db entry","accounts_in_message":[],"_revision_number":2},{"id":"b551ddaa3307d41f9f7ec2ff4d5591505483364c","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-16 12:21:57.000000000","message":"Patch Set 2:\n\n\u003e \u003e We can see the manage command imports an existing snapshot (which\n \u003e not created by Cinder) from backend storage, so what about name it\n \u003e as \"snapshot import\" and \"snapshot unimport\"?\n \u003e \n \u003e How is a user going to think about those operations?  \u0027Import\u0027\n \u003e implies a copy of data in my mind.  We define \u0027create\u0027 as creating\n \u003e a new resource.  To me, create is closer, as it _does_ create a new\n \u003e resource visible to the cloud even if it does _not_ create a new\n \u003e copy of the volume.\n \u003e \n \u003e \u003e And about representing \"ref\", I think we can use\n \u003e \u003e     --source-id \u003csource-id\u003e | --source-name \u003csource-name\u003e\n \u003e \n \u003e I think \u0027--source\u0027 is preferable and let the client sort out\n \u003e name/id, as we do everywhere else (where possible) in OSC.\n\nHi Dean, We can see the \"source\" here is not created by Cinder, so we cannot find it by name or ID before we use it (the find_resource() method will not work here), and we cannot know whether the input is name or ID either, so I doubt that we may need two options \"--source-id\" and \"--source-name\" to make the code know what is the input.","accounts_in_message":[],"_revision_number":2},{"id":"61e624ed87a785a7c526ba5df53ceec94c0cbda7","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-16 12:28:04.000000000","message":"Patch Set 2:\n\n\u003e I think re-using the \"create\" command makes sense here.\n \u003e \n \u003e For both snapshot and volume create we should have new options...\n \u003e \n \u003e --remote-host, --remote-source-id, --remote-source-name\n \u003e \n \u003e these should make up the host + ref that we need to create the db\n \u003e entry\n\nYea, we can see there is a \"--source\" option in \"volume create\" command. I think \"--remote-host, --remote-source-id, --remote-source-name\" is a good idea, I will update this patch to reuse create command with this options if there\u0027s no more other suggestions\nThank you all for great reviewing and suggestions :)","accounts_in_message":[],"_revision_number":2},{"id":"af183824fb62186f6e60a7cf24630301fd4c5376","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-18 10:17:46.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"0d50714bac8cb103d9b5df2cd96f565a02af6014","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-18 10:19:59.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"d47580db196e2749fb206b7d92d23054cb478856","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-09-18 11:20:56.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/4/check/gate-python-openstackclient-docs-ubuntu-xenial/37149a2//doc/build/html/ : SUCCESS in 3m 53s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/4/check/gate-python-openstackclient-pep8-ubuntu-xenial/67f93fd/ : SUCCESS in 3m 47s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/4/check/gate-python-openstackclient-python27-ubuntu-xenial/542f773/ : SUCCESS in 3m 38s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/4/check/gate-python-openstackclient-python34/9edd7a2/ : SUCCESS in 3m 08s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/4/check/gate-python-openstackclient-python35-nv/980906a/ : SUCCESS in 3m 07s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/4/check/gate-python-openstackclient-releasenotes/cf22101//releasenotes/build/html/ : SUCCESS in 2m 21s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/4/check/gate-tempest-dsvm-neutron-src-python-openstackclient/73bdf0e/ : SUCCESS in 1h 00m 45s\n- check-osc-plugins http://logs.openstack.org/74/363574/4/check/check-osc-plugins/59e0ca6/ : SUCCESS in 3m 16s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/4/check/gate-osc-dsvm-functional/e0c83ec/ : SUCCESS in 13m 57s","accounts_in_message":[],"_revision_number":4},{"id":"f7beed4373e1ad5c6eff21cb69275463b5802fb2","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-19 03:29:05.000000000","message":"Patch Set 4:\n\nmaybe the cinder folks can answer, but i thought \"host\" was necessary for the manage commands, but I\u0027m not seeing it in the snapshot client bindings....\n\nit appears for the manage volume command: https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v3/shell.py#L2577-L2584\n\nand here: https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v3/volumes.py#L186-L190\n\nbut not for snapshot? wouldn\u0027t that be necessary for remote management?!","accounts_in_message":[],"_revision_number":4},{"id":"e6514ee2d4276ef1353920b54bcfbc4a121b4217","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-19 03:31:03.000000000","message":"Patch Set 4: Code-Review+1\n\n@huanxuan, aside from the issue i mentioned, i think this is fine","accounts_in_message":[],"_revision_number":4},{"id":"921f61435c94cc6e72c914f51b6a00b7cab06cb3","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-20 03:22:33.000000000","message":"Patch Set 4:\n\n\u003e maybe the cinder folks can answer, but i thought \"host\" was\n \u003e necessary for the manage commands, but I\u0027m not seeing it in the\n \u003e snapshot client bindings....\n \u003e \n \u003e it appears for the manage volume command: https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v3/shell.py#L2577-L2584\n \u003e \n \u003e and here: https://github.com/openstack/python-cinderclient/blob/master/cinderclient/v3/volumes.py#L186-L190\n \u003e \n \u003e but not for snapshot? wouldn\u0027t that be necessary for remote\n \u003e management?!\n\nHi Steve. I have asked a cinder guy for this problem. We can see there is a \"volume\" option in \"snapshot manage\", when the volume option is specified, the host is volume\u0027s host, we should not specify the host again.","accounts_in_message":[],"_revision_number":4},{"id":"73116066e89cdc992165411fcabdf4bd146d60bd","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-09-20 03:34:14.000000000","message":"Patch Set 4:\n\n@Huanxuan -- ahhh okay, that makes sense","accounts_in_message":[],"_revision_number":4},{"id":"71c70e9aef916e5aad660fc94c49f59c94790b09","author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"date":"2016-09-21 01:45:30.000000000","message":"Patch Set 4: Code-Review-1\n\n(1 comment)\n\nThe -1 is for the ref dict thing, but I\u0027ll take a chance here to poke about adding this as part of the create command.\n\nLooks like there is more of a thread already on this review so I\u0027ll echo my comments from https://review.openstack.org/#/c/362802/ with the manage volume api. I can understand that import could imply a data copy, but quite frankly this api *could* actually be copying data. There isn\u0027t any sort of defined behavior for how a storage backend handles this. Its kind of a black magic api from the admin side, you toss in a dictionary and hope for something to show up in your volume list. How it got there is totally up to the vendors driver.\n\nI think we are kinda looking for the lesser evil as far as having an action verb that is less accurate versus extra admin-only options that potentially add confusion to a user of the cloud on the create action. Sort of like the main concern is that a normal user of the openstack cloud shouldn\u0027t ever have to know or think about what cinder host or storage backend exists, they just get cinder volumes. IMO it would be nice to help save them from the confusion looking at docs/help for snapshot create by hiding away this behavior in another action that we can clearly label as like \"cloud admin stuff only\". Does that make sense?","accounts_in_message":[],"_revision_number":4},{"id":"e358191e199b09cb164b4b2b2ee5955702dc4ba7","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-21 11:40:09.000000000","message":"Patch Set 4:\n\n(1 comment)\n\nThank you for reviewing, but I think we need to make sure we need addition options or a new command first.","accounts_in_message":[],"_revision_number":4},{"id":"1047d6d8325a98171f8ea684c6e0e2fb29f24714","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-09-25 04:01:51.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"8caf20679082a860fa5fae18837e6d88cbf1fa4a","author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"date":"2016-09-25 04:19:32.000000000","message":"Patch Set 5:\n\nCool, this looks pretty good to me with the new syntax for key value pairs.","accounts_in_message":[],"_revision_number":5},{"id":"037dd13b47bf920deae5e50b3e4a650b8140c4b5","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-09-25 04:59:04.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/5/check/gate-python-openstackclient-docs-ubuntu-xenial/c46b552//doc/build/html/ : SUCCESS in 2m 55s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/5/check/gate-python-openstackclient-pep8-ubuntu-xenial/eefc697/ : SUCCESS in 4m 24s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/5/check/gate-python-openstackclient-python27-ubuntu-xenial/9ecb3a2/ : SUCCESS in 6m 46s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/5/check/gate-python-openstackclient-python34/a8a02e7/ : SUCCESS in 4m 20s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/5/check/gate-python-openstackclient-python35-nv/90bec5e/ : SUCCESS in 4m 08s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/5/check/gate-python-openstackclient-releasenotes/1e5dbc1//releasenotes/build/html/ : SUCCESS in 4m 56s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/5/check/gate-tempest-dsvm-neutron-src-python-openstackclient/25fdb0b/ : SUCCESS in 57m 01s\n- check-osc-plugins http://logs.openstack.org/74/363574/5/check/check-osc-plugins/1e24e44/ : SUCCESS in 4m 50s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/5/check/gate-osc-dsvm-functional/b20103b/ : SUCCESS in 24m 53s","accounts_in_message":[],"_revision_number":5},{"id":"c12feea22cd6508dd1bee25fac708a6fc6bd105b","author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"date":"2016-09-25 19:14:21.000000000","message":"Patch Set 5: Code-Review-1\n\nThis is not a normal API and I don\u0027t think it makes sense to think of it like a normal snapshot create. The idea of the volume manage and snapshot manage commands is for admin, one time action to bring volumes created outside of cinder into cinder\u0027s control. Bundling these into \u0027normal\u0027 volume operations creates far more incorrect expectations that the benefits of the commonality.","accounts_in_message":[],"_revision_number":5},{"id":"bb674f5038e4b59f01f86489958a0504f62c994d","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-09-28 15:29:09.000000000","message":"Patch Set 5:\n\nDuncan, I strongly disagree.  OSC is used just as much by operators (admins) as end-users, and the consistency was a very strong positive comment during the UX study in Austin, which consisted of all operators.  The verb \u0027manage\u0027 is totally unacceptable, just as novas \u0027action\u0027, as it adds nothing about what is actually happening.\n\n  snapshot create --remote-source \u003csomething\u003e \u003cvolume-name\u003e\n\ncreates a new thing that appears in snapshot list.  It has different properties in its backend, just as other volume types may (or may not!) have different properties in their backend implementations.  Users already accept that.\n\nThink user perception first, over API implementation or backend implementation.","accounts_in_message":[],"_revision_number":5},{"id":"be161b71e0547437f21189ec7c28849e8c0431aa","author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"date":"2016-09-28 15:40:15.000000000","message":"Patch Set 5:\n\nDean Troyer: I think we\u0027re likely to stay disagreed on this. The cinder principle is that it is better to confuse admins than end users, and this is very much an admin-only command, that is very much unlike any other snap creation route. No normal end user is going to be able to use it.\n\nYou could argue that unmanage is just a variation on snapshot delete - both cause something to vanish from the snapshot list. Implementing it that way would, in my opinion, be utter madness though (if you keep using it instead of delete, you\u0027ll end up with a full backend) - in both cases, the equivalence you\u0027re pushing is leaky. Managing an existing snap is fundamentally different, semantically, to any other snapshot create. Trying to make them look the same is fundamentally lying to users in a way that I don\u0027t think helps any understanding.","accounts_in_message":[],"_revision_number":5},{"id":"f8d068eb5509abaeb3eb90ecabdaecb1d2b1e6ca","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-10-08 08:58:24.000000000","message":"Patch Set 5:\n\n@Duncan Thomas: Hi, Duncan, I think it is make sense for me that implement the \"snapshot manage\" by adding option to \"snapshot create\" command.\nWe can see that snapshot manage command is to bring snapshot created outside of cinder into cinder\u0027s control, so we can say we bring a new snapshot for cinder (cinder does not know it before), it is similar with creating (although not really a creating)\nAlso, in OSC, we have many admin-only options, we always leave a message like \"admin only\" in the help message, I do not think it will confuse users.","accounts_in_message":[],"_revision_number":5},{"id":"8c69da3ebea49743e92113503c133cb5a836915c","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-10-08 08:59:24.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"afade53404d10ac6c5891db2f13afcfd3a445c64","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-10-08 10:08:06.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/6/check/gate-python-openstackclient-docs-ubuntu-xenial/d648550//doc/build/html/ : SUCCESS in 2m 53s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-pep8-ubuntu-xenial/4799d1d/ : SUCCESS in 2m 47s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python27-ubuntu-xenial/e951899/ : SUCCESS in 2m 49s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python34/d1cd55c/ : SUCCESS in 2m 48s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python35-nv/4bdd7b8/ : SUCCESS in 3m 05s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/6/check/gate-python-openstackclient-releasenotes/5e4ae6b//releasenotes/build/html/ : SUCCESS in 2m 36s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/6/check/gate-tempest-dsvm-neutron-src-python-openstackclient/d4fcfea/ : SUCCESS in 1h 08m 29s\n- check-osc-plugins http://logs.openstack.org/74/363574/6/check/check-osc-plugins/b01da57/ : SUCCESS in 3m 30s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/6/check/gate-osc-dsvm-functional/89049cd/ : SUCCESS in 15m 25s","accounts_in_message":[],"_revision_number":6},{"id":"055854377a821306dce7f041858236a9b0dd15bb","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-10-11 15:01:48.000000000","message":"Patch Set 6: Code-Review-1\n\n(1 comment)\n\nIf htere is a small number of keys we should make specific options for them. This form is only useful when the keys are unknown or arbitrary.","accounts_in_message":[],"_revision_number":6},{"id":"1df0e17c7a61cf15c0199fa4127a3e0503902c14","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-10-12 02:52:18.000000000","message":"Patch Set 6:\n\nHi, Dean. I have noticed the problem before, and I also asked the cinder team that is there a choice list of the keys, but unfortunately they said there is not, the api is left open for anything a vendor might want/need, users may specify many different keys by using this option, cinder team suggests that the safest thing for now is to just allow open key/value pairs like we do on the property api calls, I think leave this as-is may be a suitable compromise for now.","accounts_in_message":[],"_revision_number":6},{"id":"1b765146be33315007ea2df609be0afe27266889","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-10-12 20:30:43.000000000","message":"Patch Set 6:\n\nThat is a horrible user interface.  How does _any_ user know what it can pass in?","accounts_in_message":[],"_revision_number":6},{"id":"93cdac87ae2c3f3c3c2c7be2a4311acf7edb8450","author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"date":"2016-10-12 20:43:38.000000000","message":"Patch Set 6:\n\n@Dean, I\u0027m not a huge fan of it either but I think the reasons for it make sense. This command is extremely specific to a particular backend storage thing (array, cluster, whatever), I think the consensus was that there wasn\u0027t a very good way to specify what you wanted to bring into cinder in a consistent way across all of them. Once it\u0027s in cinder we get (somewhat) more consistent ways to deal with them, but until then its open for whatever the volume driver needs.\n\nI think this is part of the reason why there is so much push back on making a user ever see this command. Its like 100% meant for some admin looking at a storage backend and pulling in objects. They need to know intimate details about  the implementation.\n\nOne thing to consider, there is an API to list available snaps/vols that can be managed. As part of the returned information you get the key/value pairs needed to pass in to the manage API. So, in that workflow its discoverable. Bad news though is that this API isn\u0027t really a \"common\" one... so it again leaves most admins needing to know exactly whats there by reading vendor docs.","accounts_in_message":[],"_revision_number":6},{"id":"96e990dfaa28b3eed00ec6ae9c27a9bcf809d2ca","author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"date":"2016-10-13 11:34:58.000000000","message":"Patch Set 6:\n\n(1 comment)\n\nThe keys are both unknown and arbitrary.\n\nThe only way to know what the valid keys are is to read the docs.\n\nThe minimum set of key/values pairs needed to import a volume can be discerned from the list_manageable_volumes API, though not all drivers support that yet - it was only added in this release.\n\nAs mentioned, this is an admin-only API intended for a corner case, usually one-time situation. The benefits of a flexible API outway those of a simple API in this case.","accounts_in_message":[],"_revision_number":6},{"id":"a431dc2b5c3a757d8719b073fd6c14ec5df05adb","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-10-13 15:38:25.000000000","message":"Patch Set 6: -Code-Review\n\nThanks for the explanation Duncan \u0026 Patrick, it makes sense.  But it\u0027s too bad that backend details leak all the way out to the CLI.\n\nI\u0027m half tempted to suggest that the option be --ugly-vendor-blob here, but only half tempted.","accounts_in_message":[],"_revision_number":6},{"id":"ee17682abd35536e4576f3fe10d2a4e4a5a07684","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-10-14 08:31:42.000000000","message":"Patch Set 6:\n\n@Duncan, @Patrick, Thanks very much for your great explanation for this. It is very useful for this review, thanks again. :)\n@Dean, Thanks for your reviewing and suggestions, but I am not quite understand about the \" --ugly-vendor-blob\" you said in the comment. Could you please give some more explanation about it and I am willing to update this to make it better.","accounts_in_message":[],"_revision_number":6},{"id":"fda3e4dbbdbe850fc8c7646348448c96e35788ec","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-10-14 20:49:48.000000000","message":"Patch Set 6:\n\nHuanxuan, that was a sarcastic comment on the actual use of the --remote-source option as a way of passing arbitrary vendor-specific bits through the API, which is generally considered bad practice and user unfriendly.  You do not need to make that change :)","accounts_in_message":[],"_revision_number":6},{"id":"09d47d3900b0b793c710bf03aa945840bebf93ef","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-10-21 22:23:00.000000000","message":"Patch Set 6:\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/6/check/gate-python-openstackclient-docs-ubuntu-xenial/1040312//doc/build/html/ : SUCCESS in 12m 17s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-pep8-ubuntu-xenial/0f11b81/ : SUCCESS in 5m 57s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python27-ubuntu-xenial/b212657/ : SUCCESS in 11m 07s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python34/628904b/ : SUCCESS in 12m 21s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/6/check/gate-python-openstackclient-python35-nv/86ab0c0/ : SUCCESS in 3m 43s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/6/check/gate-python-openstackclient-releasenotes/4ed2a71//releasenotes/build/html/ : SUCCESS in 11m 41s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/74/363574/6/check/gate-tempest-dsvm-neutron-src-python-openstackclient/37a226c/ : SUCCESS in 1h 00m 15s\n- check-osc-plugins http://logs.openstack.org/74/363574/6/check/check-osc-plugins/d4df46e/ : SUCCESS in 13m 08s (non-voting)\n- gate-osc-dsvm-functional http://logs.openstack.org/74/363574/6/check/gate-osc-dsvm-functional/2cb3cae/ : SUCCESS in 20m 56s\n- gate-tripleo-ci-centos-7-nonha-multinode-nv http://logs.openstack.org/74/363574/6/check/gate-tripleo-ci-centos-7-nonha-multinode-nv/67c6773/ : SUCCESS in 47m 17s (non-voting)","accounts_in_message":[],"_revision_number":6},{"id":"36b1a097e7970430bf4efeaeb79d96e085056186","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-12-03 04:31:09.000000000","message":"Patch Set 6: Verified-1\n\nMerge Failed.\n\nThis change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.","accounts_in_message":[],"_revision_number":6},{"id":"eb6fc6ada6c36e126c1d5ac2b249ece2a73d95e1","author":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"date":"2016-12-12 15:08:18.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"b8823643303614bee821717049dce6a7d8e97973","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-12-12 16:02:08.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/7/check/gate-python-openstackclient-docs-ubuntu-xenial/842b9ec//doc/build/html/ : SUCCESS in 5m 17s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/7/check/gate-python-openstackclient-pep8-ubuntu-xenial/3399bee/ : SUCCESS in 5m 23s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/7/check/gate-python-openstackclient-python27-ubuntu-xenial/2b26e3f/ : SUCCESS in 4m 32s\n- gate-python-openstackclient-python34 http://logs.openstack.org/74/363574/7/check/gate-python-openstackclient-python34/382714e/ : SUCCESS in 3m 08s\n- gate-python-openstackclient-python35-nv http://logs.openstack.org/74/363574/7/check/gate-python-openstackclient-python35-nv/01b5a82/ : SUCCESS in 4m 44s (non-voting)\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/7/check/gate-python-openstackclient-releasenotes/ece34eb//releasenotes/build/html/ : SUCCESS in 4m 03s\n- gate-tempest-dsvm-neutron-src-python-openstackclient-ubuntu-xenial http://logs.openstack.org/74/363574/7/check/gate-tempest-dsvm-neutron-src-python-openstackclient-ubuntu-xenial/34d1072/ : SUCCESS in 52m 18s\n- check-osc-plugins http://logs.openstack.org/74/363574/7/check/check-osc-plugins/5948dc7/ : FAILURE in 4m 25s (non-voting)\n- gate-osc-dsvm-functional-ubuntu-xenial http://logs.openstack.org/74/363574/7/check/gate-osc-dsvm-functional-ubuntu-xenial/6182850/ : SUCCESS in 16m 14s\n- gate-tripleo-ci-centos-7-nonha-multinode-nv http://logs.openstack.org/74/363574/7/check/gate-tripleo-ci-centos-7-nonha-multinode-nv/23ae79d/ : SUCCESS in 51m 05s (non-voting)","accounts_in_message":[],"_revision_number":7},{"id":"425f33c53945801d19955fd3dec47cfe6f180afa","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2016-12-12 19:21:42.000000000","message":"Patch Set 7: Code-Review+2\n\nthis seems fine to me, i don\u0027t think we can add it to our functional tests easily","accounts_in_message":[],"_revision_number":7},{"id":"a3f2955214c9a0e4c4cde524b490a94d3291f3c9","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2016-12-13 21:40:44.000000000","message":"Patch Set 7: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":7},{"id":"be8a22ed1241e599b104d9bfffeacc5d8e6bb643","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-12-13 21:40:54.000000000","message":"Patch Set 7: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":7},{"id":"a0b456ed1126377284179433e6d98728a13feb77","date":"2016-12-13 22:58:16.000000000","message":"Change has been successfully merged into the git repository by Jenkins","accounts_in_message":[],"_revision_number":7},{"id":"cc782ec81ace9d58bcfa593c7f7fcaf596fe7bd1","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-12-13 22:58:16.000000000","message":"Patch Set 7: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-python-openstackclient-docs-ubuntu-xenial http://docs-draft.openstack.org/74/363574/7/gate/gate-python-openstackclient-docs-ubuntu-xenial/802c1bb//doc/build/html/ : SUCCESS in 5m 10s\n- gate-python-openstackclient-pep8-ubuntu-xenial http://logs.openstack.org/74/363574/7/gate/gate-python-openstackclient-pep8-ubuntu-xenial/fea2c1c/ : SUCCESS in 4m 39s\n- gate-python-openstackclient-python27-ubuntu-xenial http://logs.openstack.org/74/363574/7/gate/gate-python-openstackclient-python27-ubuntu-xenial/71562e4/ : SUCCESS in 2m 52s\n- gate-python-openstackclient-releasenotes http://docs-draft.openstack.org/74/363574/7/gate/gate-python-openstackclient-releasenotes/b7f6549//releasenotes/build/html/ : SUCCESS in 2m 53s\n- gate-tempest-dsvm-neutron-src-python-openstackclient-ubuntu-xenial http://logs.openstack.org/74/363574/7/gate/gate-tempest-dsvm-neutron-src-python-openstackclient-ubuntu-xenial/539e986/ : SUCCESS in 1h 15m 59s\n- gate-osc-dsvm-functional-ubuntu-xenial http://logs.openstack.org/74/363574/7/gate/gate-osc-dsvm-functional-ubuntu-xenial/14d3f6b/ : SUCCESS in 17m 14s","accounts_in_message":[],"_revision_number":7}],"current_revision_number":7,"current_revision":"7357b24d3a63be612aa32c901e15424ff92beca0","revisions":{"3bba5cf2856cf6a0a1510c35dd5ad1dd842fb931":{"kind":"REWORK","_number":1,"created":"2016-08-31 11:00:52.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/1"}}},"commit":{"parents":[{"commit":"8241f08ee1a67bbdaabd1026b81cc494a53530f2","subject":"Updated from global requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/8241f08ee1a67bbdaabd1026b81cc494a53530f2"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-08-31 10:54:28.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-08-31 11:00:31.000000000","tz":480},"subject":"Add \"snapshot manage \u0026 unmanage\" commands in volume v2","message":"Add \"snapshot manage \u0026 unmanage\" commands in volume v2\n\nAdd \"snapshot manage\" and \"snapshot unmanage\" commands\nin volume v2 (v2 only), also add the doc, unit tests,\nfuctional tests and release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/3bba5cf2856cf6a0a1510c35dd5ad1dd842fb931"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/3bba5cf2856cf6a0a1510c35dd5ad1dd842fb931"}]},"branch":"refs/heads/master"},"8b18eb7f01d432d50b5b0d06e65a45f4306b54a8":{"kind":"REWORK","_number":2,"created":"2016-09-11 02:59:46.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/2"}}},"commit":{"parents":[{"commit":"676a0e9696ba7550132e4501bdbf3160608faed6","subject":"unwedge the gate","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/676a0e9696ba7550132e4501bdbf3160608faed6"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-08-31 10:54:28.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-11 02:57:44.000000000","tz":480},"subject":"Add \"snapshot manage \u0026 unmanage\" commands in volume v2","message":"Add \"snapshot manage \u0026 unmanage\" commands in volume v2\n\nAdd \"snapshot manage\" and \"snapshot unmanage\" commands\nin volume v2 (v2 only), also add the doc, unit tests,\nfuctional tests and release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/8b18eb7f01d432d50b5b0d06e65a45f4306b54a8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/8b18eb7f01d432d50b5b0d06e65a45f4306b54a8"}]},"branch":"refs/heads/master"},"21333d82570a48d3a355c667f63ba161c1a90cd9":{"kind":"REWORK","_number":3,"created":"2016-09-18 10:17:46.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/3"}}},"commit":{"parents":[{"commit":"7e990ba1e2ae0ecb804287212797ebad84d7b56b","subject":"Merge \"Doc, help and message updates for port unset\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/7e990ba1e2ae0ecb804287212797ebad84d7b56b"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-18 10:14:07.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-18 10:14:07.000000000","tz":480},"subject":"Add \"--remote-source-id\" and \"--remote-source-name\" options to \"snapshot create\" command","message":"Add \"--remote-source-id\" and \"--remote-source-name\" options to\n\"snapshot create\" command\n\nAdd \"--remote-source-id\" and \"--remote-source-name\"\noptions to \"snapshot create\" command to support\ncreating snapshot from an existing remote snapshot\nin volume v2 (v2 only), also add the doc, unit tests\nand release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/21333d82570a48d3a355c667f63ba161c1a90cd9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/21333d82570a48d3a355c667f63ba161c1a90cd9"}]},"branch":"refs/heads/master"},"26fa8331450cdd0458bc0ae2e84ff15d9ddcb25c":{"kind":"REWORK","_number":4,"created":"2016-09-18 10:19:59.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/4"}}},"commit":{"parents":[{"commit":"7e990ba1e2ae0ecb804287212797ebad84d7b56b","subject":"Merge \"Doc, help and message updates for port unset\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/7e990ba1e2ae0ecb804287212797ebad84d7b56b"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-18 10:14:07.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-18 10:19:43.000000000","tz":480},"subject":"Add \"--remote-source-id\" and \"--remote-source-name\" options to \"snapshot create\" command","message":"Add \"--remote-source-id\" and \"--remote-source-name\" options to\n\"snapshot create\" command\n\nAdd \"--remote-source-id\" and \"--remote-source-name\"\noptions to \"snapshot create\" command to support\ncreating snapshot from an existing remote snapshot\nin volume v2 (v2 only), also add the doc, unit tests\nand release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/26fa8331450cdd0458bc0ae2e84ff15d9ddcb25c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/26fa8331450cdd0458bc0ae2e84ff15d9ddcb25c"}]},"branch":"refs/heads/master"},"dd0524b6985195c7892fd939c2166ef1d1d5e051":{"kind":"REWORK","_number":5,"created":"2016-09-25 04:01:51.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/5"}}},"commit":{"parents":[{"commit":"2731fc3912aa8392179ca2d870e9daa76e1410e4","subject":"Updated from global requirements","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/2731fc3912aa8392179ca2d870e9daa76e1410e4"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-25 03:49:47.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-25 03:56:22.000000000","tz":480},"subject":"Add \"--remote-source\" option to \"snapshot create\" command","message":"Add \"--remote-source\" option to \"snapshot create\" command\n\nAdd \"--remote-source\" option to \"snapshot create\" command to\nsupport creating snapshot from an existing remote snapshot in\nvolume v2 (v2 only), also add the doc, unit tests and release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/dd0524b6985195c7892fd939c2166ef1d1d5e051"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/dd0524b6985195c7892fd939c2166ef1d1d5e051"}]},"branch":"refs/heads/master"},"403428ffb9c4803b2ff9df2f2a857d579f1fba2e":{"kind":"REWORK","_number":6,"created":"2016-10-08 08:59:24.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/6"}}},"commit":{"parents":[{"commit":"762f2f2c34814b8bfc615696918d8cb49b93a1dd","subject":"More 3.3.0 release notes","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/762f2f2c34814b8bfc615696918d8cb49b93a1dd"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-25 03:49:47.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-10-08 08:58:57.000000000","tz":480},"subject":"Add \"--remote-source\" option to \"snapshot create\" command","message":"Add \"--remote-source\" option to \"snapshot create\" command\n\nAdd \"--remote-source\" option to \"snapshot create\" command to\nsupport creating snapshot from an existing remote snapshot in\nvolume v2 (v2 only), also add the doc, unit tests and release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/403428ffb9c4803b2ff9df2f2a857d579f1fba2e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/403428ffb9c4803b2ff9df2f2a857d579f1fba2e"}]},"branch":"refs/heads/master"},"7357b24d3a63be612aa32c901e15424ff92beca0":{"kind":"REWORK","_number":7,"created":"2016-12-12 15:08:18.000000000","uploader":{"_account_id":21514,"name":"Huanxuan Ao","email":"aohuanxuan@163.com","username":"aohuanxuan"},"ref":"refs/changes/74/363574/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/74/363574/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/74/363574/7"}}},"commit":{"parents":[{"commit":"29587eaa6661493b7df9357ad818bf058e820730","subject":"Merge \"Add extra filtering options to floating ip list\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/29587eaa6661493b7df9357ad818bf058e820730"}]}],"author":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-09-25 03:49:47.000000000","tz":480},"committer":{"name":"Huanxuan Ao","email":"huanxuan.ao@easystack.cn","date":"2016-12-12 15:06:00.000000000","tz":480},"subject":"Add \"--remote-source\" option to \"volume snapshot create\" command","message":"Add \"--remote-source\" option to \"volume snapshot create\" command\n\nAdd \"--remote-source\" option to \"volume snapshot create\" command\nto support creating snapshot from an existing remote snapshot in\nvolume v2 (v2 only), also add the doc, unit tests and release note.\n\nChange-Id: I9e5fad4f0db5b44d528eb6b930edbc816e392c3a\nImplements: bp cinder-command-support\nCloses-Bug: #1618676\nCo-Authored-By: Sheel Rana \u003cranasheel2000@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/7357b24d3a63be612aa32c901e15424ff92beca0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/7357b24d3a63be612aa32c901e15424ff92beca0"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
