)]}'
{"id":"openstack%2Fpython-openstackclient~180712","triplet_id":"openstack%2Fpython-openstackclient~master~Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2","project":"openstack/python-openstackclient","branch":"master","topic":"bug/1421328","hashtags":[],"change_id":"Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2","subject":"Enable specifing domains in \"role add\"","status":"MERGED","created":"2015-05-06 19:50:56.000000000","updated":"2015-05-22 20:00:03.000000000","submitted":"2015-05-22 20:00:01.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":5,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"4d924359f1de52ac7c360f32e416f668e1f9e5c2","_number":180712,"virtual_id_number":180712,"owner":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},{"value":0,"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":2,"date":"2015-05-22 20:00:01.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},{"value":0,"date":"2015-05-12 12:12:29.000000000","_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"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":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},{"value":2,"date":"2015-05-22 19:18:08.000000000","_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":1,"date":"2015-05-12 15:44:53.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},{"value":0,"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":2,"date":"2015-05-13 20:16:32.000000000","_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"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":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"all":[{"value":0,"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},{"value":1,"date":"2015-05-22 19:18:08.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":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},{"value":0,"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},{"value":0,"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},{"value":0,"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"}],"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":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2015-05-06 20:09:34.000000000","updated_by":{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},"reviewer":{"_account_id":8736,"name":"Terry Howe","email":"terrylhowe@gmail.com","username":"terrylhowe"},"state":"REVIEWER"},{"updated":"2015-05-06 20:40:29.000000000","updated_by":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"reviewer":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"state":"REVIEWER"},{"updated":"2015-05-12 15:44:53.000000000","updated_by":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"reviewer":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"state":"REVIEWER"},{"updated":"2015-05-13 20:16:32.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":"2015-05-22 19:18:08.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":"2015-05-22 20:00:01.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"ba8d2502e7d0a5fae435e0389f23c50dcd4dfd50","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-06 19:50:56.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"86716aada8bb58d312a6f6f7358ad300af69c642","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-06 20:39:25.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-python26 http://logs.openstack.org/12/180712/1/check/gate-python-openstackclient-python26/3cee7b6/ : SUCCESS in 1m 32s\n- gate-python-openstackclient-pep8 http://logs.openstack.org/12/180712/1/check/gate-python-openstackclient-pep8/74728c9/ : SUCCESS in 1m 27s\n- gate-python-openstackclient-docs http://docs-draft.openstack.org/12/180712/1/check/gate-python-openstackclient-docs/be46186//doc/build/html/ : SUCCESS in 2m 42s\n- gate-python-openstackclient-python27 http://logs.openstack.org/12/180712/1/check/gate-python-openstackclient-python27/e95cd50/ : SUCCESS in 1m 40s\n- gate-python-openstackclient-python34 http://logs.openstack.org/12/180712/1/check/gate-python-openstackclient-python34/b0dca95/ : SUCCESS in 3m 20s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/12/180712/1/check/gate-tempest-dsvm-neutron-src-python-openstackclient/64e5154/ : SUCCESS in 45m 16s\n- check-osc-dsvm-functional http://logs.openstack.org/12/180712/1/check/check-osc-dsvm-functional/b68e35a/ : SUCCESS in 16m 41s","accounts_in_message":[],"_revision_number":1},{"id":"0d410c8273082c15d90ba2afd24727d63ce0a0c9","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2015-05-06 21:43:06.000000000","message":"Patch Set 1: Code-Review-1\n\ngroups are also domain name spaced too :(","accounts_in_message":[],"_revision_number":1},{"id":"31c36aca044912f469f7f6bde722732f4caedc14","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-06 22:28:21.000000000","message":"Patch Set 1:\n\nMissed that one, thanks for pointing it out. I\u0027m gonna submit another patch following the same pattern as I did with users and projects. Is there anything else in the CR I should change?","accounts_in_message":[],"_revision_number":1},{"id":"3245c5188ea4f637be10902047c3d49e370e79bf","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 11:52:07.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"df619574e6c558296ff091fc7dffa3027ca55a84","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-07 12:52:35.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-python26 http://logs.openstack.org/12/180712/2/check/gate-python-openstackclient-python26/65de317/ : SUCCESS in 1m 16s\n- gate-python-openstackclient-pep8 http://logs.openstack.org/12/180712/2/check/gate-python-openstackclient-pep8/b33467f/ : SUCCESS in 1m 17s\n- gate-python-openstackclient-docs http://docs-draft.openstack.org/12/180712/2/check/gate-python-openstackclient-docs/4b5ec44//doc/build/html/ : SUCCESS in 1m 44s\n- gate-python-openstackclient-python27 http://logs.openstack.org/12/180712/2/check/gate-python-openstackclient-python27/ee19240/ : SUCCESS in 1m 27s\n- gate-python-openstackclient-python34 http://logs.openstack.org/12/180712/2/check/gate-python-openstackclient-python34/91036e0/ : SUCCESS in 3m 00s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/12/180712/2/check/gate-tempest-dsvm-neutron-src-python-openstackclient/9332a56/ : SUCCESS in 1h 00m 13s\n- check-osc-dsvm-functional http://logs.openstack.org/12/180712/2/check/check-osc-dsvm-functional/6348bca/ : SUCCESS in 16m 19s","accounts_in_message":[],"_revision_number":2},{"id":"ff29f5afc8f35ea744a87bfce2dd1aac6e418a91","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2015-05-07 17:39:36.000000000","message":"Patch Set 2: Code-Review-1\n\n(1 comment)\n\nDoes the existing --domain argument still have a use?  When would you need bot --domain x and --user-domain y for example?\n\nThe docs need to be updated for the new user-visible options.","accounts_in_message":[],"_revision_number":2},{"id":"9c85749175cc89c13f4bfc883dd6da98ddcf66f8","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 20:21:13.000000000","message":"Patch Set 2:\n\n(1 comment)\n\nthe existing --domain has a use the same as before. A user can get a role in a domain that it doesn\u0027t belong to.\n\nSo, IIRC userA should be able to get a role in domainB, even though it would belong to domainA.","accounts_in_message":[],"_revision_number":2},{"id":"8fb105deb5d67898462ffa6f6deced848289c6f6","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 20:28:11.000000000","message":"Patch Set 2:\n\nwill verify in a bit.","accounts_in_message":[],"_revision_number":2},{"id":"253ed57cc78038c4d4a92e5f1ab69934c68b2f6a","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 20:39:00.000000000","message":"Patch Set 2:\n\nok, it\u0027s possible.","accounts_in_message":[],"_revision_number":2},{"id":"f640396bff437af9dd46fc61d9aef9f5291d81e2","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 20:39:40.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"ecd40a696b532b6ccb1e83a6b25372fc21615219","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2015-05-07 20:46:14.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"b7c87d61b75123a2de573cc5f89066f755876c41","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 20:50:18.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"f7b63433df65e461c6a1cc49ea171e087404ad25","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 21:01:12.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"24f40922fbc3185c09a3ca6bebeef39f84833969","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-07 22:00:44.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-python26 http://logs.openstack.org/12/180712/5/check/gate-python-openstackclient-python26/a8e0e76/ : SUCCESS in 1m 25s\n- gate-python-openstackclient-pep8 http://logs.openstack.org/12/180712/5/check/gate-python-openstackclient-pep8/4c7a269/ : SUCCESS in 1m 30s\n- gate-python-openstackclient-docs http://docs-draft.openstack.org/12/180712/5/check/gate-python-openstackclient-docs/a4aa01a//doc/build/html/ : SUCCESS in 2m 23s\n- gate-python-openstackclient-python27 http://logs.openstack.org/12/180712/5/check/gate-python-openstackclient-python27/c5d31b0/ : SUCCESS in 1m 39s\n- gate-python-openstackclient-python34 http://logs.openstack.org/12/180712/5/check/gate-python-openstackclient-python34/0ceadc0/ : SUCCESS in 2m 01s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/12/180712/5/check/gate-tempest-dsvm-neutron-src-python-openstackclient/7b7e430/ : SUCCESS in 58m 05s\n- check-osc-dsvm-functional http://logs.openstack.org/12/180712/5/check/check-osc-dsvm-functional/a668d1b/ : SUCCESS in 18m 57s","accounts_in_message":[],"_revision_number":5},{"id":"961cab2c66d2f39f03a37b1aaa378cdda4b8ed13","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2015-05-07 22:20:24.000000000","message":"Patch Set 5: Code-Review+2\n\nThanks Juan","accounts_in_message":[],"_revision_number":5},{"id":"1089c1f33b71eb9299915097079249e834222778","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-07 22:30:21.000000000","message":"Patch Set 5:\n\nThanks for the input and the review","accounts_in_message":[],"_revision_number":5},{"id":"175f1caab2203179a7e72a604bfd858c42885855","author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"date":"2015-05-07 23:21:35.000000000","message":"Patch Set 5: Code-Review-1\n\nThe changes in the find_*() does not work as expected.\n\nFor example:\ndata: I created a userA in domainA\nquery: user\u003duserA, domain\u003ddomainB\nresult: userA (from domainA)\n\nThe find_resource method, will do a find by name, if there is only one result it would return that user. The additional filter would not be even be used.\n\nhttps://github.com/openstack/python-openstackclient/blob/master/openstackclient/common/utils.py#L67","accounts_in_message":[],"_revision_number":5},{"id":"0daf9543f01449a5d5fe175a65905a3d3417b3e0","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-08 05:38:54.000000000","message":"Patch Set 5:\n\nActually the line that you marked is effectively the search by id (e.g. UUID). There is where the changes I added come into effect https://github.com/openstack/python-openstackclient/blob/master/openstackclient/common/utils.py#L83","accounts_in_message":[],"_revision_number":5},{"id":"cfe62a262c35266f9d4b69a0426913a8bc4610f3","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-08 07:18:15.000000000","message":"Patch Set 5:\n\nAh, but I see what you mean. Indeed I intended this for when collisions happened, as I wrote in the documentation. Let me see if I can cover that use-case too.","accounts_in_message":[],"_revision_number":5},{"id":"45b13a7e13bc6cec04a331e5180f93bb4e833049","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-08 07:58:30.000000000","message":"Patch Set 5:\n\nActually, I think the command works as expected. That function you are refering to doesn\u0027t take arguments from a query, but a direct ID. So the function you pointed me out to will do a get by ID, and the name is not taken into account there. So since a \u0027name\u0027 was given, it should try to use the name in the query, fail to find such a user and it will subsequently go to the find that I pointed you out to, which is here https://github.com/openstack/python-openstackclient/blob/master/openstackclient/common/utils.py#L83 , where the name is explicitly searched for as shown here https://github.com/openstack/python-openstackclient/blob/master/openstackclient/common/utils.py#L79 \n\nTake this scenario: http://pastebin.com/kAcEvbpR\n\nAs you can see, we tried accessing a user in a domain it doesn\u0027t exist, and it wasn\u0027t possible.\n\nDid I answer your concern? If I misunderstood the scenario you pointed out, please let me know, and if you can provide more details I would appreciate it too. I can try to reproduce the scenario the way you did it. It could be there\u0027s something I\u0027m missing.\n\nBut here the point is that the \"get\" function you pointed out doesn\u0027t take query parameters. As you can see in this function (which is the actual get function that gets called) https://github.com/openstack/python-keystoneclient/blob/master/keystoneclient/base.py#L336 it will only build the URI based on the base_url and the id given. As opposed to \"find\" which not only builds the url, but also builds the query parameter https://github.com/openstack/python-keystoneclient/blob/master/keystoneclient/base.py#L402 .\n\nIf you think that get function should take query parameters, I suggest you submit a bug report to the python-keystoneclient. That might actually be a good addition :)","accounts_in_message":[],"_revision_number":5},{"id":"4117143083fb549cae0a9b8f24e2ac344901ddc3","author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"date":"2015-05-11 21:18:10.000000000","message":"Patch Set 5: Code-Review+1\n\n(2 comments)\n\njaosorior: sorry for the late response. my bad, you\u0027re code is correct. I got confused with get(name_or_id), thought it was also fetching by name.\n\nI added some suggestion for improvement, but this code is good as is. :) Thanks!","accounts_in_message":[],"_revision_number":5},{"id":"0113c4074a15f7f51de162831152fcbeea344d44","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-12 09:55:52.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"a3d7a2c563f674576a9355c09b6fe164d8247aba","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-12 10:47:42.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-python-openstackclient-python26 http://logs.openstack.org/12/180712/6/check/gate-python-openstackclient-python26/d8eb674/ : SUCCESS in 2m 23s\n- gate-python-openstackclient-pep8 http://logs.openstack.org/12/180712/6/check/gate-python-openstackclient-pep8/b7a8ce7/ : SUCCESS in 1m 24s\n- gate-python-openstackclient-docs http://docs-draft.openstack.org/12/180712/6/check/gate-python-openstackclient-docs/98a2104//doc/build/html/ : SUCCESS in 2m 17s\n- gate-python-openstackclient-python27 http://logs.openstack.org/12/180712/6/check/gate-python-openstackclient-python27/ab6ae2a/ : SUCCESS in 1m 41s\n- gate-python-openstackclient-python34 http://logs.openstack.org/12/180712/6/check/gate-python-openstackclient-python34/f7a57c3/ : SUCCESS in 1m 55s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/12/180712/6/check/gate-tempest-dsvm-neutron-src-python-openstackclient/75b5355/ : SUCCESS in 49m 11s\n- check-osc-dsvm-functional http://logs.openstack.org/12/180712/6/check/check-osc-dsvm-functional/bed731c/ : SUCCESS in 16m 53s","accounts_in_message":[],"_revision_number":6},{"id":"c8c31f1688f4ab3de6b5443de2d506607a05acdd","author":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"date":"2015-05-12 12:12:29.000000000","message":"Patch Set 6:\n\nLin Hua Cheng: I changed the code based on you suggestions. It does look a lot better. Thanks for the input!","accounts_in_message":[],"_revision_number":6},{"id":"4b43f47aa8f6c0e997918934d5e47744a3fcf959","author":{"_account_id":1941,"name":"Lin Hua Cheng","email":"os.lcheng@gmail.com","username":"lin-hua-cheng"},"date":"2015-05-12 15:44:53.000000000","message":"Patch Set 6: Code-Review+1\n\nnice! looks better, thanks!","accounts_in_message":[],"_revision_number":6},{"id":"c7033b9148c2f33d44b499f9df2f0ac52323d8e4","author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"date":"2015-05-13 20:16:32.000000000","message":"Patch Set 6: Code-Review+2\n\nThis looks good to me","accounts_in_message":[],"_revision_number":6},{"id":"4c5c3fc08c45b3dcdb7948f12186267114b74719","author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"date":"2015-05-22 19:18:08.000000000","message":"Patch Set 6: Code-Review+2 Workflow+1\n\nwe should probably have this for role remove too :\\","accounts_in_message":[],"_revision_number":6},{"id":"7d08b435e6da75cbcef54908ff7cea92c64a5891","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-22 19:18:15.000000000","message":"Patch Set 6: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":6},{"id":"587c772d14f203701f8bb8ba44f97c55d5948930","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-22 20:00:01.000000000","message":"Patch Set 6: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-python-openstackclient-python26 http://logs.openstack.org/12/180712/6/gate/gate-python-openstackclient-python26/1103e43/ : SUCCESS in 2m 09s\n- gate-python-openstackclient-docs http://docs-draft.openstack.org/12/180712/6/gate/gate-python-openstackclient-docs/609d9b9//doc/build/html/ : SUCCESS in 1m 41s\n- gate-python-openstackclient-pep8 http://logs.openstack.org/12/180712/6/gate/gate-python-openstackclient-pep8/8813d04/ : SUCCESS in 1m 27s\n- gate-python-openstackclient-python27 http://logs.openstack.org/12/180712/6/gate/gate-python-openstackclient-python27/f70a42f/ : SUCCESS in 1m 39s\n- gate-python-openstackclient-python34 http://logs.openstack.org/12/180712/6/gate/gate-python-openstackclient-python34/4a25ba7/ : SUCCESS in 2m 03s\n- gate-tempest-dsvm-neutron-src-python-openstackclient http://logs.openstack.org/12/180712/6/gate/gate-tempest-dsvm-neutron-src-python-openstackclient/2794047/ : SUCCESS in 41m 30s\n- gate-osc-dsvm-functional http://logs.openstack.org/12/180712/6/gate/gate-osc-dsvm-functional/0dece9e/ : SUCCESS in 16m 21s","accounts_in_message":[],"_revision_number":6},{"id":"0799c9e6bfb6661253a8db3f9d3ff9a126fec9d0","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-22 20:00:03.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":6}],"current_revision_number":6,"current_revision":"3ca96ef93cda1a3f186febc0e241e2d4adb682eb","revisions":{"2f4c7042bfab742034c3335f4228004b23b34d6e":{"kind":"REWORK","_number":1,"created":"2015-05-06 19:50:56.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/1"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"subject":"Enable specifing user/project domains in \"role add\"","message":"Enable specifing user/project domains in \"role add\"\n\nIf the users or projects are provided by name, there is a possibility of\nthere existing other users/projects with the same name in other domain.\nEven though this is not a problem if the actual ID is given instead of a\nname; this is mostly a usability enhancement.\n\nSo, two options were added, one for specifying the domain where the user\nbelongs and another one to specify the project\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/2f4c7042bfab742034c3335f4228004b23b34d6e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/2f4c7042bfab742034c3335f4228004b23b34d6e"}]},"branch":"refs/heads/master"},"944a249a6ab6869779aa2e0297e030533b4d01a5":{"kind":"REWORK","_number":2,"created":"2015-05-07 11:52:07.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/2"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-07 10:29:10.000000000","tz":180},"subject":"Enable specifing domains in \"role add\"","message":"Enable specifing domains in \"role add\"\n\nIf users, projects or groups are provided by name, there is a\npossibility of the existence other users/projects/groups with the same\nname in other domain.  Even though this is not a problem if the actual\nID is given instead of a name; this is mostly a usability enhancement.\n\nSo, three options were added, one for specifying the domain where the\nuser belongs, another one to specify the project\u0027s domain, and finally\none to specify the group\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/944a249a6ab6869779aa2e0297e030533b4d01a5"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/944a249a6ab6869779aa2e0297e030533b4d01a5"}]},"branch":"refs/heads/master"},"1b01d20b3767388a462f8313dacadd7911d07e9d":{"kind":"REWORK","_number":3,"created":"2015-05-07 20:39:40.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/3"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-07 20:39:21.000000000","tz":180},"subject":"Enable specifing domains in \"role add\"","message":"Enable specifing domains in \"role add\"\n\nIf users, projects or groups are provided by name, there is a\npossibility of the existence other users/projects/groups with the same\nname in other domain.  Even though this is not a problem if the actual\nID is given instead of a name; this is mostly a usability enhancement.\n\nSo, three options were added, one for specifying the domain where the\nuser belongs, another one to specify the project\u0027s domain, and finally\none to specify the group\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1b01d20b3767388a462f8313dacadd7911d07e9d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/1b01d20b3767388a462f8313dacadd7911d07e9d"}]},"branch":"refs/heads/master"},"a4cf68d0368d892364092d374942cce4e804187c":{"kind":"REWORK","_number":4,"created":"2015-05-07 20:50:18.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/4"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-07 20:50:02.000000000","tz":180},"subject":"Enable specifing domains in \"role add\"","message":"Enable specifing domains in \"role add\"\n\nIf users, projects or groups are provided by name, there is a\npossibility of the existence other users/projects/groups with the same\nname in other domain.  Even though this is not a problem if the actual\nID is given instead of a name; this is mostly a usability enhancement.\n\nSo, three options were added, one for specifying the domain where the\nuser belongs, another one to specify the project\u0027s domain, and finally\none to specify the group\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a4cf68d0368d892364092d374942cce4e804187c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a4cf68d0368d892364092d374942cce4e804187c"}]},"branch":"refs/heads/master"},"17dfaec469b874da3c076e0fc64197ce7a4cc3ce":{"kind":"REWORK","_number":5,"created":"2015-05-07 21:01:12.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/5"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-07 21:00:55.000000000","tz":180},"subject":"Enable specifing domains in \"role add\"","message":"Enable specifing domains in \"role add\"\n\nIf users, projects or groups are provided by name, there is a\npossibility of the existence other users/projects/groups with the same\nname in other domain.  Even though this is not a problem if the actual\nID is given instead of a name; this is mostly a usability enhancement.\n\nSo, three options were added, one for specifying the domain where the\nuser belongs, another one to specify the project\u0027s domain, and finally\none to specify the group\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/17dfaec469b874da3c076e0fc64197ce7a4cc3ce"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/17dfaec469b874da3c076e0fc64197ce7a4cc3ce"}]},"branch":"refs/heads/master"},"3ca96ef93cda1a3f186febc0e241e2d4adb682eb":{"kind":"REWORK","_number":6,"created":"2015-05-12 09:55:52.000000000","uploader":{"_account_id":10873,"name":"Juan Antonio Osorio Robles","email":"jaosorior@redhat.com","username":"ejuaoso"},"ref":"refs/changes/12/180712/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-openstackclient","ref":"refs/changes/12/180712/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-openstackclient refs/changes/12/180712/6"}}},"commit":{"parents":[{"commit":"a6deef6ef15b6da454d124e792b72e5e9930d27e","subject":"Merge \"Don\u0027t create empty quota set requests\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/a6deef6ef15b6da454d124e792b72e5e9930d27e"}]}],"author":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-06 19:46:32.000000000","tz":180},"committer":{"name":"Juan Antonio Osorio Robles","email":"juan.osorio.robles@ericsson.com","date":"2015-05-12 08:48:01.000000000","tz":180},"subject":"Enable specifing domains in \"role add\"","message":"Enable specifing domains in \"role add\"\n\nIf users, projects or groups are provided by name, there is a\npossibility of the existence other users/projects/groups with the same\nname in other domain.  Even though this is not a problem if the actual\nID is given instead of a name; this is mostly a usability enhancement.\n\nSo, three options were added, one for specifying the domain where the\nuser belongs, another one to specify the project\u0027s domain, and finally\none to specify the group\u0027s domain.\n\nChange-Id: Iab04b0e04fa75ea5aa3723b8ea42a45f58a6cdb2\nCloses-Bug: #1421328\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/3ca96ef93cda1a3f186febc0e241e2d4adb682eb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-openstackclient/commit/3ca96ef93cda1a3f186febc0e241e2d4adb682eb"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
