)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14131,"name":"shaohef","email":"shaohe.feng@intel.com","username":"shaohefeng"},"change_message_id":"a28a9a5f91a35189fda206ac083a1948fd15f0ac","unresolved":false,"context_lines":[{"line_number":7,"context_line":"API: remove admin require from certificate_* from db layer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch removes require_admin_context decorator certificate_* because, they"},{"line_number":10,"context_line":"are only called by nova code, there is no require to use an admin context to"},{"line_number":11,"context_line":"query db"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partially implements bp nova-api-policy-final-part"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bab921fb_1117a952","line":10,"updated":"2015-04-23 07:34:23.000000000","message":"called by nova code, then we do not need admin require?","commit_id":"ceb0f86948a3cb834b47c4aea7896624b4df6234"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"d25dc535309d11da761eff7b80753cfb6eeda04e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"API: remove admin require from certificate_* from db layer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch removes require_admin_context decorator certificate_* because, they"},{"line_number":10,"context_line":"are only called by nova code, there is no require to use an admin context to"},{"line_number":11,"context_line":"query db"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partially implements bp nova-api-policy-final-part"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"bab921fb_708be268","line":10,"in_reply_to":"bab921fb_1117a952","updated":"2015-04-26 06:21:15.000000000","message":"maybe worth better description.","commit_id":"ceb0f86948a3cb834b47c4aea7896624b4df6234"},{"author":{"_account_id":12175,"name":"Eli Qiao","email":"qiaoliyong@gmail.com","username":"Eli"},"change_message_id":"2edbac225da4eb93aaf5c3add23f95ddde2d89bb","unresolved":false,"context_lines":[{"line_number":7,"context_line":"API: remove admin require from certificate_* from db layer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch removes require_admin_context decorator certificate_* because, they"},{"line_number":10,"context_line":"are only called by nova code, there is no require to use an admin context to"},{"line_number":11,"context_line":"query db"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partially implements bp nova-api-policy-final-part"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1aca2d91_53ce645b","line":10,"in_reply_to":"bab921fb_708be268","updated":"2015-05-06 00:58:50.000000000","message":"let\u0027s say you are a developer , you want to write some code to call that method with a context, but you can not call it by pass a normal context, you need to fake a amdin context to call that, check\nhttps://github.com/openstack/nova/blob/master/nova/crypto.py#L316\nthere is no necessary to do so.\njust use a normal context to call that method is okay, if there will be other API code to call that method , we can add policy rule to limit it.","commit_id":"ceb0f86948a3cb834b47c4aea7896624b4df6234"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"81b28c02c1509a8707a9bad83d28492c9e573d00","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch removes require_admin_context decorator certificate_* because, they"},{"line_number":10,"context_line":"are only called by nova code, no user interface code (REST API layer) will"},{"line_number":11,"context_line":"call these methods, so there is no require to hard limit admin context to"},{"line_number":12,"context_line":"query db."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Partially implements bp nova-api-policy-final-part"},{"line_number":15,"context_line":"Change-Id: I2536f31096d4322390c6f00f4019dbabcb11226e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba3cc151_6f39ef40","line":12,"updated":"2015-07-01 05:44:10.000000000","message":"I guess call sequence of this method is\n\n nova/api/openstack/compute/contrib/certificates.py: create()\n nova/api/openstack/compute/plugins/v3/certificates.py: create()\n   nova/crypto.py: generate_x509_cert()\n     nova/db/api.py: certificate_create()\n       nova/db/sqlalchemy/api.py: certificate_create()\n\nSo is it unnecessary to copy require_admin_context check to v2.0 API code like the other patch?","commit_id":"a56477cdf2884a27152dcf159adaf2c25a20c965"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8bc09bbb3a549d0d9a0f712952f24d2145cbc392","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch removes require_admin_context decorator certificate_* because, they"},{"line_number":10,"context_line":"are only called by nova code, no user interface code (REST API layer) will"},{"line_number":11,"context_line":"call these methods, so there is no require to hard limit admin context to"},{"line_number":12,"context_line":"query db."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Partially implements bp nova-api-policy-final-part"},{"line_number":15,"context_line":"Change-Id: I2536f31096d4322390c6f00f4019dbabcb11226e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba3cc151_3d38abd2","line":12,"in_reply_to":"ba3cc151_6f39ef40","updated":"2015-07-09 03:22:37.000000000","message":"hi, Ken\u0027ichi,\n\nIn ova/crypto.py: generate_x509_cert(), it is called as:\n\ndb.certificate_create(context.get_admin_context(), cert)\n\nThe context is elevated, so there always can pass the admin check before.","commit_id":"a56477cdf2884a27152dcf159adaf2c25a20c965"}],"nova/db/sqlalchemy/api.py":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"1e31e10aa70701746ca46dce516f68b33f7ba744","unresolved":false,"context_lines":[{"line_number":692,"context_line":"###################"},{"line_number":693,"context_line":""},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"@require_admin_context"},{"line_number":696,"context_line":"def certificate_create(context, values):"},{"line_number":697,"context_line":"    certificate_ref \u003d models.Certificate()"},{"line_number":698,"context_line":"    for (key, value) in values.iteritems():"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_da795e83","side":"PARENT","line":695,"updated":"2015-07-09 16:19:19.000000000","message":"https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/plugins/v3/certificates.py#L70\nwill this in turn call it?","commit_id":"2a5b1db132a9ae6c0b37f8e1854d7e23991720a4"}]}
