)]}'
{"id":"openstack%2Fpython-keystoneclient~3174","triplet_id":"openstack%2Fpython-keystoneclient~master~I8181cc2395ae1aad6a324ec65395ebc62455f29b","project":"openstack/python-keystoneclient","branch":"master","topic":"cliness","hashtags":[],"change_id":"I8181cc2395ae1aad6a324ec65395ebc62455f29b","subject":"Implementing a minimal, but useful CLI.","status":"MERGED","created":"2012-01-19 07:08:34.000000000","updated":"2012-01-19 22:20:53.000000000","submitted":"2012-01-19 22:20:53.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"92878a0180afb892728a926cbbd8028dde154608","_number":3174,"virtual_id_number":3174,"owner":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},{"value":1,"date":"2012-01-19 22:20:53.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},{"value":0,"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},{"value":0,"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},"all":[{"value":2,"date":"2012-01-19 22:20:40.000000000","_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},{"value":0,"date":"2012-01-19 22:20:53.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"date":"2012-01-19 08:08:16.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},{"value":2,"date":"2012-01-19 07:20:28.000000000","_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},{"value":-1,"date":"2012-01-19 07:50:41.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"}],"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":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},"all":[{"value":1,"date":"2012-01-19 22:20:40.000000000","_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},{"value":0,"date":"2012-01-19 07:20:28.000000000","_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},{"value":0,"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"}],"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":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},{"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"},{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2012-01-19 07:20:28.000000000","updated_by":{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},"reviewer":{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},"state":"REVIEWER"},{"updated":"2012-01-19 07:50:41.000000000","updated_by":{"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"},"reviewer":{"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"},"state":"REVIEWER"},{"updated":"2012-01-19 22:20:40.000000000","updated_by":{"_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},"reviewer":{"_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},"state":"REVIEWER"},{"updated":"2012-01-19 22:20:53.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"a224ef75d12d72a7b10ae646fe89d9a1c7b38bea","author":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"date":"2012-01-19 07:10:04.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"dd493a97886e68d76086133241f4525166f1fa2e","author":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"date":"2012-01-19 07:11:05.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"df9c3798f5ee76a02f8a838f77f2f4ac1ffcae27","author":{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},"date":"2012-01-19 07:13:03.000000000","message":"Patch Set 3: Looks good to me, but someone else must approve\n\n(1 inline comment)\n\n","accounts_in_message":[],"_revision_number":3},{"id":"6f5bc0f95e437b9e68ce16b1983fb58645a4a459","author":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"date":"2012-01-19 07:14:20.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"2a1cb05cbe0509e3d8b3078bb482ec4d54304635","author":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"date":"2012-01-19 07:18:05.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"13a620a275b86d8eac9f5a2849c47ae7e38cd645","author":{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},"date":"2012-01-19 07:20:28.000000000","message":"Patch Set 5: Looks good to me (core reviewer)\n\n","accounts_in_message":[],"_revision_number":5},{"id":"e9454c941bf55d85682db098c69c1c7b0ac76b1b","author":{"_account_id":494,"name":"termie","email":"termie@openstack.org","username":"termie"},"date":"2012-01-19 07:50:41.000000000","message":"Patch Set 5: I would prefer that you didn\u0027t submit this\n\nnot a fan of this style of cli at all, did the dynamicly built cli we discussed not work for you?\n\nthe decorator style is pretty weird, in my opinion, and there seems to be a lot of repetition, and using --args for all variables is pretty strict and limiting","accounts_in_message":[],"_revision_number":5},{"id":"2130d03dc9abf0b738657af0b24b7c4d86ef7239","author":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"date":"2012-01-19 08:08:16.000000000","message":"Patch Set 5:\n\nI tried getting the dynamic client provided in keystonelight\u0027s keystone-manage to work within keystoneclient but was unsuccessful.\n\nI agree that the keystonelight\u0027s style of building a cli is cleaner and requires less code but I also think that writing the cli in the same style as python-novaclient is acceptable and transparent for developers who work on both clients.","accounts_in_message":[],"_revision_number":5},{"id":"76e6832fb8318404e56e39071127f78f7c66743b","author":{"_account_id":112,"name":"Jesse Andrews","email":"anotherjesse@gmail.com","username":"anotherjesse"},"date":"2012-01-19 22:20:40.000000000","message":"Patch Set 5: Looks good to me (core reviewer); Approved\n\n","accounts_in_message":[],"_revision_number":5},{"id":"74efde6eaa1b8b1fd20a488504cc4bec91deda5d","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2012-01-19 22:20:53.000000000","message":"Patch Set 5: Verified\n\nBuild Successful \n \nhttps://jenkins.openstack.org/job/gate-python-keystoneclient-unittests/6/ : SUCCESS \nhttps://jenkins.openstack.org/job/gate-python-keystoneclient-merge/6/ : SUCCESS \nhttps://jenkins.openstack.org/job/gate-python-keystoneclient-pep8/6/ : SUCCESS","accounts_in_message":[],"_revision_number":5},{"id":"27bc136cb19da7615a6066bf5aa5def0f14c02f0","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2012-01-19 22:20:53.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"cbe1f82931002e3562ab41582ff86470681b889b","revisions":{"2f917bce5da66db944f276967c29d0ed1a5863a0":{"kind":"REWORK","_number":1,"created":"2012-01-19 07:08:34.000000000","uploader":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"ref":"refs/changes/74/3174/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-keystoneclient","ref":"refs/changes/74/3174/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/1"}}},"commit":{"parents":[{"commit":"d1171195e771b3de4a40c3773d10f5d0837da2b2","subject":"Adjust version number to match other deliveries","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/d1171195e771b3de4a40c3773d10f5d0837da2b2"}]}],"author":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-18 09:17:57.000000000","tz":-480},"committer":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-19 07:08:32.000000000","tz":-480},"subject":"Implementing a minimal, but useful CLI.","message":"Implementing a minimal, but useful CLI.\n\nChange-Id: I8181cc2395ae1aad6a324ec65395ebc62455f29b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/2f917bce5da66db944f276967c29d0ed1a5863a0"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/2f917bce5da66db944f276967c29d0ed1a5863a0"}]},"branch":"refs/heads/master"},"53170acefb35b11be14ca8e5a1eb6c16d39a1eb3":{"kind":"REWORK","_number":2,"created":"2012-01-19 07:10:04.000000000","uploader":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"ref":"refs/changes/74/3174/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-keystoneclient","ref":"refs/changes/74/3174/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/2"}}},"commit":{"parents":[{"commit":"d1171195e771b3de4a40c3773d10f5d0837da2b2","subject":"Adjust version number to match other deliveries","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/d1171195e771b3de4a40c3773d10f5d0837da2b2"}]}],"author":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-18 09:17:57.000000000","tz":-480},"committer":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-19 07:09:56.000000000","tz":-480},"subject":"Implementing a minimal, but useful CLI.","message":"Implementing a minimal, but useful CLI.\n\nChange-Id: I8181cc2395ae1aad6a324ec65395ebc62455f29b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/53170acefb35b11be14ca8e5a1eb6c16d39a1eb3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/53170acefb35b11be14ca8e5a1eb6c16d39a1eb3"}]},"branch":"refs/heads/master"},"2c653fa34ade19bcfaa1d4e8f308e7af0d0f0166":{"kind":"REWORK","_number":3,"created":"2012-01-19 07:11:05.000000000","uploader":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"ref":"refs/changes/74/3174/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-keystoneclient","ref":"refs/changes/74/3174/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/3"}}},"commit":{"parents":[{"commit":"d1171195e771b3de4a40c3773d10f5d0837da2b2","subject":"Adjust version number to match other deliveries","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/d1171195e771b3de4a40c3773d10f5d0837da2b2"}]}],"author":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-18 09:17:57.000000000","tz":-480},"committer":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-19 07:11:00.000000000","tz":-480},"subject":"Implementing a minimal, but useful CLI.","message":"Implementing a minimal, but useful CLI.\n\nChange-Id: I8181cc2395ae1aad6a324ec65395ebc62455f29b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/2c653fa34ade19bcfaa1d4e8f308e7af0d0f0166"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/2c653fa34ade19bcfaa1d4e8f308e7af0d0f0166"}]},"branch":"refs/heads/master"},"8b8a581ef05458c64a0dd2fb452d56376f74cfdb":{"kind":"REWORK","_number":4,"created":"2012-01-19 07:14:20.000000000","uploader":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"ref":"refs/changes/74/3174/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-keystoneclient","ref":"refs/changes/74/3174/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/4"}}},"commit":{"parents":[{"commit":"d1171195e771b3de4a40c3773d10f5d0837da2b2","subject":"Adjust version number to match other deliveries","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/d1171195e771b3de4a40c3773d10f5d0837da2b2"}]}],"author":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-18 09:17:57.000000000","tz":-480},"committer":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-19 07:14:14.000000000","tz":-480},"subject":"Implementing a minimal, but useful CLI.","message":"Implementing a minimal, but useful CLI.\n\nChange-Id: I8181cc2395ae1aad6a324ec65395ebc62455f29b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/8b8a581ef05458c64a0dd2fb452d56376f74cfdb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/8b8a581ef05458c64a0dd2fb452d56376f74cfdb"}]},"branch":"refs/heads/master"},"cbe1f82931002e3562ab41582ff86470681b889b":{"kind":"REWORK","_number":5,"created":"2012-01-19 07:18:05.000000000","uploader":{"_account_id":1205,"name":"Jake Dahn","email":"jake.dahn@nebula.com","username":"jakedahn"},"ref":"refs/changes/74/3174/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-keystoneclient","ref":"refs/changes/74/3174/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-keystoneclient refs/changes/74/3174/5"}}},"commit":{"parents":[{"commit":"d1171195e771b3de4a40c3773d10f5d0837da2b2","subject":"Adjust version number to match other deliveries","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/d1171195e771b3de4a40c3773d10f5d0837da2b2"}]}],"author":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-18 09:17:57.000000000","tz":-480},"committer":{"name":"jakedahn","email":"jake@ansolabs.com","date":"2012-01-19 07:17:59.000000000","tz":-480},"subject":"Implementing a minimal, but useful CLI.","message":"Implementing a minimal, but useful CLI.\n\nChange-Id: I8181cc2395ae1aad6a324ec65395ebc62455f29b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/cbe1f82931002e3562ab41582ff86470681b889b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-keystoneclient/commit/cbe1f82931002e3562ab41582ff86470681b889b"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
