)]}'
{"id":"openstack%2Fcyborg~740542","triplet_id":"openstack%2Fcyborg~master~I948d0202ddcd82a532c4de2c1850893cbfaf003d","project":"openstack/cyborg","branch":"master","topic":"policy-popup","hashtags":[],"change_id":"I948d0202ddcd82a532c4de2c1850893cbfaf003d","subject":"Add new default rules and mapping in policy base class","status":"MERGED","created":"2020-07-11 06:53:53.000000000","updated":"2020-09-14 08:25:58.000000000","submitted":"2020-09-14 08:23:00.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":56,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"740542-1600071780285-7e3b2230","meta_rev_id":"e949c4b31f2eabb9369a2eec6223a1a93e3a3481","_number":740542,"virtual_id_number":740542,"owner":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},{"value":0,"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},{"value":0,"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},{"value":0,"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},{"value":0,"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},{"value":0,"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2020-09-14 08:23:00.000000000","post_submit":true,"permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},{"value":0,"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},{"value":0,"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},{"value":0,"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},{"value":0,"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},{"value":0,"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"}],"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":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"all":[{"value":0,"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},{"value":0,"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},{"value":0,"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},{"value":0,"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},{"value":2,"date":"2020-09-11 10:04:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},{"value":2,"date":"2020-09-11 10:04:21.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},{"value":1,"date":"2020-09-11 10:04:21.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},{"value":0,"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},{"value":0,"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},{"value":2,"date":"2020-09-14 07:27:34.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},{"value":1,"date":"2020-09-11 10:04:21.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"}],"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":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"all":[{"value":0,"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},{"value":0,"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},{"value":0,"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},{"value":0,"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},{"value":0,"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},{"value":0,"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},{"value":0,"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},{"value":0,"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},{"value":0,"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},{"value":1,"date":"2020-09-14 07:27:34.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},{"value":0,"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},{"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},{"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-07-16 01:41:02.000000000","updated_by":{"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},"reviewer":{"_account_id":30759,"name":"Shogo Saito","email":"shogo.saito.ac@hco.ntt.co.jp","username":"s.shogo"},"state":"REVIEWER"},{"updated":"2020-07-24 16:29:38.000000000","updated_by":{"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},"reviewer":{"_account_id":8866,"name":"Raildo Mascena de Sousa Filho","email":"rmascena@redhat.com","username":"raildo"},"state":"REVIEWER"},{"updated":"2020-08-03 06:26:38.000000000","updated_by":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"reviewer":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"state":"REVIEWER"},{"updated":"2020-08-03 06:27:26.000000000","updated_by":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"reviewer":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"state":"REVIEWER"},{"updated":"2020-08-04 16:37:15.000000000","updated_by":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"reviewer":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"state":"REVIEWER"},{"updated":"2020-09-09 01:28:02.000000000","updated_by":{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},"reviewer":{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},"state":"REVIEWER"},{"updated":"2020-09-11 02:34:29.000000000","updated_by":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"reviewer":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"state":"REVIEWER"},{"updated":"2020-09-11 04:01:12.000000000","updated_by":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"reviewer":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"state":"REVIEWER"},{"updated":"2020-09-11 05:57:20.000000000","updated_by":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"reviewer":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"state":"REVIEWER"},{"updated":"2020-09-11 08:41:17.000000000","updated_by":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"reviewer":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"state":"REVIEWER"},{"updated":"2020-09-14 07:27:34.000000000","updated_by":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"reviewer":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"state":"REVIEWER"},{"updated":"2020-09-14 08:23:00.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"b9f7cda6c9d302613e51bba40c5ee32f228ced2d","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-11 06:53:53.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"aab6f7441ee67eea83eb30e1a4f66dffc609ee94","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-11 07:05:48.000000000","message":"Patch Set 2: Published edit on patch set 1.","accounts_in_message":[],"_revision_number":2},{"id":"d11a24bc0470476ccbf5be9e8b9967c2497260ed","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-11 07:35:02.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/cdd297aa86834ca9b8a8b2890b178212 : FAILURE in 3m 47s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/967981ee5c70466286e95201be6f1e88 : SUCCESS in 4m 31s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/017e3efcd44c4e039b889b832098b2ec : FAILURE in 3m 51s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/81295a9c8d3b4082965c186b5c53aa40 : FAILURE in 4m 01s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/23e662ef0ddb43c29dfbb514ea7351cf : SUCCESS in 6m 18s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/b92d8e5f6f7c4815b70702cd1bbcd4f0 : FAILURE in 25m 59s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/43f8263ee5ac4cef82dc878a3074438c : FAILURE in 20m 28s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/2f12ba0b60a44e849fabad167a49184b : SUCCESS in 4m 14s","accounts_in_message":[],"_revision_number":2},{"id":"cf2308a799460e36b171b59a30cd8e978aa4d9f9","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-15 08:11:11.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"9ec9f5b762013ca10195ca7263e68712f884af9d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-15 09:08:19.000000000","message":"Patch Set 3: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/45652102aadd4673bd36db85229c2dc3 : TIMED_OUT in 51m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1f788a4916c044528ceb623beb8bdad9 : SUCCESS in 3m 44s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/e99084f10d064a209be1f06eab65b906 : TIMED_OUT in 41m 14s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/b0b3a436162247ef87d205a77ea7595a : TIMED_OUT in 41m 17s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f218babfc1434f7a979dff26b087ccf1 : SUCCESS in 5m 10s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/e12e5eb7b05e471a991b7be34412ee68 : FAILURE in 28m 51s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/2251cae6d7f24b7f9a7dec4253140815 : FAILURE in 32m 59s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/69431090acda4fd0932c289f2956b9e2 : SUCCESS in 4m 59s","accounts_in_message":[],"_revision_number":3},{"id":"d744bf64b4b626b9104a2a97ce4c36c970347158","author":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"date":"2020-07-16 01:10:54.000000000","message":"Patch Set 3:\n\nrecheck","accounts_in_message":[],"_revision_number":3},{"id":"723cfe3e05f3b5c2db8525a05c4818a65b443635","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-16 01:57:40.000000000","message":"Patch Set 3:\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d12737f6fd294893a7bbaade9ef9d776 : FAILURE in 3m 55s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/df743773ee964f8abf1edee0b1d3b6cc : SUCCESS in 4m 18s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/7bd74457fb674c14948458d64902bb7b : TIMED_OUT in 40m 59s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/0aa895bdd13b4aff8bda3a4d4c3df2ba : TIMED_OUT in 41m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f5bea101c4864bcbaa99c33542477aa5 : SUCCESS in 5m 56s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/4de7e32b69884d3d822a91654fab3e8e : FAILURE in 37m 36s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/0ca7ac246f8c471592f8d68c147619bc : FAILURE in 31m 26s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/0452c8aba54f45c0953bba295f06b785 : SUCCESS in 3m 51s","accounts_in_message":[],"_revision_number":3},{"id":"f317ac31d8f66e29d5d6fd219d91e3b48d274e10","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-16 11:09:38.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"f1e2c801c7007963211a264761e97ba7dac6b99c","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-16 11:23:02.000000000","message":"Patch Set 5: Patch Set 4 was rebased","accounts_in_message":[],"_revision_number":5},{"id":"82548946afb4a75d119bc56d752ec47be7b24690","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-16 11:52:40.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"640a3880c1f43b599a6d5b8971a9fa67afde524a","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-16 11:54:36.000000000","message":"Patch Set 7: Patch Set 6 was rebased","accounts_in_message":[],"_revision_number":7},{"id":"d8e8097902ee1f27326c622a3e7c932e8ab31fff","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-16 12:36:17.000000000","message":"Patch Set 7: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/9d7da775a2d444489b6f2c2de964158e : SUCCESS in 2m 51s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d7e2cf3998ec417982838c1d7da323b1 : FAILURE in 4m 29s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/879556a7464d4c87b54e422783fdfc3b : SUCCESS in 4m 31s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/3e040356f9424757aa6ea7f5eadf02cc : FAILURE in 4m 42s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/839d379cbeda405a84edf169a99d21b9 : FAILURE in 5m 25s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c65917dd23834ea5b4b76930a3e9bd35 : SUCCESS in 5m 32s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/70e56da541cb4209aa97c06247444621 : FAILURE in 30m 51s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/53121293cddd4ef096c991b6a9a686e3 : FAILURE in 35m 57s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/4a68b056af3b4ce8b5cf78b49b334d6e : SUCCESS in 3m 44s","accounts_in_message":[],"_revision_number":7},{"id":"f741f5f961e5cae7daae414de3b9db21f9fd50a3","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-23 01:50:35.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"86664e7fbcf0e32b1bf808d7e82b44aeedd0198b","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-23 01:52:07.000000000","message":"Patch Set 9: Patch Set 8 was rebased","accounts_in_message":[],"_revision_number":9},{"id":"4df74f6213d24677af1a221dce107e2094459e79","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-23 02:02:57.000000000","message":"Patch Set 10: Commit message was updated.","accounts_in_message":[],"_revision_number":10},{"id":"48389567812d0b684a1b5d01d3b14d92da54fa54","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-23 02:44:08.000000000","message":"Patch Set 10: Verified-1\n\n(1 comment)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/00b4b0c73f594ce1a6033e1f418a04bd : SUCCESS in 2m 25s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/b8138e88c62740d8b9911af4b04a753e : FAILURE in 5m 00s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3b9f0f31c0dc48d5beb46e7b78922983 : FAILURE in 3m 47s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/8ba6c85e05a545c1b0c79dd370dc4c21 : FAILURE in 3m 43s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/8205a07850b44cf68eebe5a80cf5484a : SUCCESS in 5m 38s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/09ca29e9e8fa46a0be1ca74613fc7062 : SUCCESS in 5m 30s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/ba0cbb905b224c9189c6c3773d232ad9 : SUCCESS in 29m 52s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/12ebd329b0d648888a7d056a669b0e0d : SUCCESS in 34m 09s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/60f4495314b042fb923162ef456a517c : SUCCESS in 3m 41s","accounts_in_message":[],"_revision_number":10},{"id":"27af27019d5a8279267caa1df3ccdaac72bba7cf","author":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"date":"2020-07-23 02:46:45.000000000","message":"Patch Set 10:\n\nhi.yumeng. Very good patch, thank you for your efforts. Regarding the system reader, I would like to ask a few questions:\n1. How do we define system reader?\n2. What rights does the system reader have?","accounts_in_message":[],"_revision_number":10},{"id":"92e858dda197e5efb30c59e208c4053ee540cd5d","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-07-23 03:00:41.000000000","message":"Patch Set 10:\n\n(2 comments)\n\nNeed looked into again, and this need to add the UT to test the active and/or unactive scenarios.","accounts_in_message":[],"_revision_number":10},{"id":"86b7af8bd5b92183368eaf033b441dd893be33ae","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-24 02:49:30.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"86b925dd55d0e6c86757d0406194ad69ba62e264","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-24 03:25:56.000000000","message":"Patch Set 11: Verified-1\n\n(10 comments)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/8cd015c88bd94ff5b8e469c6e5e0dd45 : SUCCESS in 2m 43s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/b3f223721ca94de1ad853edbd837193e : SUCCESS in 4m 23s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/fad1ade356434b0e9525775743ea9078 : FAILURE in 3m 59s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/e7c9bf0dda064112a326d65af127570a : SUCCESS in 4m 15s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/ae2689f5955a42a59c6474d1a0114d28 : SUCCESS in 4m 31s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/29e0404811084837b7e77b048febb7c6 : SUCCESS in 7m 23s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/d3f287f3cfae42c1ac704483caf09bd3 : SUCCESS in 29m 54s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/48d2a9f1c0c648268ffc5db0f96d3d7a : SUCCESS in 30m 29s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/142dd3327c08439dbdb8c21e4b71a753 : SUCCESS in 3m 56s","accounts_in_message":[],"_revision_number":11},{"id":"368f444ba66d313bf6e2ad74f89db2340aa012de","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-24 06:52:42.000000000","message":"Uploaded patch set 12.","accounts_in_message":[],"_revision_number":12},{"id":"9bff2c98cc7d0123166eca66bee0f3301a9cf108","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-24 06:53:12.000000000","message":"Patch Set 13: Patch Set 12 was rebased","accounts_in_message":[],"_revision_number":13},{"id":"e575517cc37b14cf47bfc18c2091f1060e65534e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-24 07:19:50.000000000","message":"Patch Set 13: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/f940bc7df5ac40c2a9f31e392b0f171c : SUCCESS in 4m 03s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f9e79358686f4ee19d5a5e1056cec1dd : SUCCESS in 6m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7988661b03ca44359ccfd0041edec45b : SUCCESS in 5m 19s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/9a881b7d1a284d18822e54e9654df38b : SUCCESS in 5m 24s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/6b608a3e5de146feb9d0a11fe444065a : SUCCESS in 5m 49s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d8520ce4c6ea42bf8b6966470a4521b7 : SUCCESS in 7m 54s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/30f761670c8743609f6c21008b7e08a3 : SUCCESS in 21m 54s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/27d0096983b344b1ac6f8909dafd0d39 : SUCCESS in 22m 25s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/d77d4a6e7fff46939e8a6eb123bd7856 : SUCCESS in 6m 36s","accounts_in_message":[],"_revision_number":13},{"id":"dbb09174860cc1989043d3f89192e92fd6a77952","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-24 09:18:40.000000000","message":"Patch Set 14: Commit message was updated.","accounts_in_message":[],"_revision_number":14},{"id":"8bed59035d05946dc9989fbc76017354779b7a22","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-24 09:56:58.000000000","message":"Patch Set 14: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/32c8a9344ce845fe8e3d1b378bb111b5 : SUCCESS in 3m 47s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f6be33e8503244aea73355b96d09bc25 : SUCCESS in 5m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/fb38c56bef094098a046b4548a0b4d9f : SUCCESS in 4m 55s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/137e1fc5fe5d47199c05cf251d69279a : SUCCESS in 6m 20s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/c3b586a90215489c94778d132b7b250e : SUCCESS in 5m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/968b5686fe9b44d49a75d149b1640876 : SUCCESS in 7m 59s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/c2676feea44e4308949a9638480876b4 : SUCCESS in 32m 16s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/fcd7dee7d17d48298ce385c717a5a1a3 : SUCCESS in 28m 19s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/7314650bfc494470a6c3e62be3264f52 : SUCCESS in 5m 00s","accounts_in_message":[],"_revision_number":14},{"id":"2804534571f61f519ffb8eb0ea087133bea71bc2","author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"date":"2020-07-29 06:15:05.000000000","message":"Patch Set 14:\n\n(2 comments)","accounts_in_message":[],"_revision_number":14},{"id":"6f9d54a8601bd68939a00e43d0f2b68d55640d58","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-29 08:49:14.000000000","message":"Patch Set 15: Published edit on patch set 14.","accounts_in_message":[],"_revision_number":15},{"id":"977b2099d01a08c9f0d60cb7afe0b9cda443ecb8","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-29 08:49:26.000000000","message":"Patch Set 15: 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":15},{"id":"bee1db683025578e308727915ee3b4f463d46705","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-29 08:49:44.000000000","message":"Patch Set 15:\n\n(2 comments)","accounts_in_message":[],"_revision_number":15},{"id":"f7fc38fee6bde53d8e3b3cb758713c747f7fa30c","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-29 08:52:51.000000000","message":"Patch Set 15:\n\nrecheck","accounts_in_message":[],"_revision_number":15},{"id":"d1c6921a559dd2f15add9441bae47d52ff190e95","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-07-29 08:53:03.000000000","message":"Patch Set 15:\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":15},{"id":"cfd2c015ce2544a24cbac3fa9a4f7c630225cf2e","author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"date":"2020-07-31 01:47:15.000000000","message":"Patch Set 15:\n\n(2 comments)\n\nLooks good to me overall. Please fix the merged conflict. And I left one question inline, please check it.","accounts_in_message":[],"_revision_number":15},{"id":"2efdb46456ee574d40adf93c943284cbfc209ce3","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-07-31 10:32:27.000000000","message":"Patch Set 15:\n\n(1 comment)\n\n\u003e (2 comments)\n \u003e \n \u003e Looks good to me overall. Please fix the merged conflict. And I\n \u003e left one question inline, please check it.\n\nThanks xinran! wait for the revert to get merged https://review.opendev.org/#/c/744112/2. Once merged, will fix the conflict and update the patch.","accounts_in_message":[],"_revision_number":15},{"id":"3070cd2fff9d40032fc5196c71fb462c778c1ad1","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-02 09:49:32.000000000","message":"Patch Set 16: Patch Set 15 was rebased","accounts_in_message":[],"_revision_number":16},{"id":"7d6d6c40e64e412b4fe548a63f86730d17585eff","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-02 10:27:24.000000000","message":"Patch Set 16: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/236cef994ee74027a4529f5b55f4a4ee : SUCCESS in 2m 38s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/7e2583c6440c4199acf100ed1d15d619 : SUCCESS in 5m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/58b682ec5362443bb92c0e77ed509d43 : SUCCESS in 3m 02s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f03f6bce4a5146e89f30d63da6961e91 : SUCCESS in 3m 09s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/922190446709413d877c0571a26c6372 : SUCCESS in 4m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ea9b4c9a727c4697a09e7481da303e32 : SUCCESS in 7m 56s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/8ea96322b93641fabde379643f5306b1 : SUCCESS in 29m 32s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/8fed4fdde02b41489a5ea43dcafc6c1a : SUCCESS in 34m 40s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/eb52157340e14c438bec58bfef52e775 : SUCCESS in 4m 52s","accounts_in_message":[],"_revision_number":16},{"id":"bc9b36080c1e545896788f3477c59bfbd113ce37","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-03 02:44:01.000000000","message":"Uploaded patch set 17.","accounts_in_message":[],"_revision_number":17},{"id":"2f8854f7f3670065aaaa9e1c7f0b6a3815300fef","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-03 03:09:52.000000000","message":"Patch Set 17: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/32d19958bcf94d76a9e11d53e9c9fda9 : SUCCESS in 2m 42s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/5060aa7358e741c98c79cba1381feeab : SUCCESS in 4m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0fcddd486fd441cc9629b73ca75184e8 : SUCCESS in 5m 04s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/a983789b33d2438682954d795d379f47 : SUCCESS in 3m 58s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/9505cf656f814d07a51006138677ab18 : SUCCESS in 4m 02s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/430503dbf1974ae39a8a6e2aebb0b5ca : SUCCESS in 7m 08s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/77eb4d4ff2d64c2199eced663dbe4e93 : SUCCESS in 23m 47s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/71edc223fa314aaebc0394ba4865105d : SUCCESS in 19m 57s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/00cac25b1c5f4d05ab21f78a35a63fd6 : SUCCESS in 4m 19s","accounts_in_message":[],"_revision_number":17},{"id":"e4685bea078884cc54cdbc267203692c40ce137c","author":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"date":"2020-08-03 08:27:30.000000000","message":"Patch Set 17: Code-Review+1\n\nLGTM. Look forward to see next UT patch. +1 for other friends review.","accounts_in_message":[],"_revision_number":17},{"id":"b841e114c26ced41aedda052bb371f89245a52ad","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-04 05:37:51.000000000","message":"Patch Set 18: Commit message was updated.","accounts_in_message":[],"_revision_number":18},{"id":"50c5b4b1cbc705da06b19f6a75111cb873df98a6","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-04 05:38:16.000000000","message":"Patch Set 18:\n\n\u003e LGTM. Look forward to see next UT patch. +1 for other friends\n \u003e review.\n\nThanks chenker!","accounts_in_message":[],"_revision_number":18},{"id":"5707c11719dd0c2fafab87f0cca072ccdf82bcf1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-08-04 06:19:02.000000000","message":"Patch Set 18: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/62c72cb07f6c4c46bb0de5d33ccd57a4 : SUCCESS in 2m 24s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/a64eb316c5b84325a6f089a5ce967a95 : SUCCESS in 5m 06s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/950fbf102089423d961542702a8c6c06 : SUCCESS in 4m 38s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/9c0e4b5731814c78a2c9869eb7ca107d : SUCCESS in 4m 48s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/3dcc94c2ef524a4fb84f009c1eb55ab4 : SUCCESS in 5m 36s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1cb1c990a18242b8bb161866df78b8c3 : SUCCESS in 6m 13s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/c1174143c6c547ddaf7f3574a0f502cc : SUCCESS in 39m 46s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/db722a41f1dc428c9f4d7b5e1eaddbdf : SUCCESS in 20m 58s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/7977dada12394063bb9899db3aaaf342 : SUCCESS in 4m 06s","accounts_in_message":[],"_revision_number":18},{"id":"fcdc9bb3cda3cfd2a2a15eaab66024b118bf23aa","author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"date":"2020-08-04 08:52:46.000000000","message":"Patch Set 18: Code-Review+1\n\n(5 comments)\n\nLGTM overall. Good start for policy migration. Just find some typos inline.","accounts_in_message":[],"_revision_number":18},{"id":"3514f6f122d84e63952d8816e2585550192e5b31","author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"date":"2020-08-04 16:37:15.000000000","message":"Patch Set 18: Code-Review-1\n\n(5 comments)\n\nThanks for the work. this is good start. Few comments inline and let\u0027s do these into series of changes to know the impact clearly.","accounts_in_message":[],"_revision_number":18},{"id":"279f44418780495b02dc71976506893f35f96b6c","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-08-05 11:16:53.000000000","message":"Patch Set 18:\n\n(1 comment)","accounts_in_message":[],"_revision_number":18},{"id":"efbf5e118bf7b11ff9fca7b154d31096381f9f74","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-10 07:11:53.000000000","message":"Patch Set 18:\n\n(6 comments)\n\nHi Ghanshyam, thanks a lot for your review and suggestions!","accounts_in_message":[],"_revision_number":18},{"id":"09ed8cb4394c362da0c76a800b9425215215582b","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-08-12 03:03:25.000000000","message":"Patch Set 18: Workflow-1\n\nThis patch will be split into several patches according to the most recent comments, so W-1 here.","accounts_in_message":[],"_revision_number":18},{"id":"e22bb48b7d43cfaf8ff77399f5ad99337e28dd72","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-07 08:20:12.000000000","message":"Uploaded patch set 19.","accounts_in_message":[],"_revision_number":19},{"id":"738227d7a6b7e966251afd2fabddf215118a9d70","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-07 08:58:47.000000000","message":"Patch Set 19: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/af6f6432527c4e1ea99f07a5b14b590c : FAILURE in 12m 30s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/cb098f8d9b8344919e766627a3ffa6f1 : SUCCESS in 8m 18s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/da47c5cc152a4ff79b8c2a996f69dd6f : SUCCESS in 4m 05s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/df1b1375bd7349a4a4f2f2aa4b321ade : SUCCESS in 4m 16s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/37aeef1e82d14db7b966ff113fa72e25 : SUCCESS in 3m 57s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8ab07b2f532e4dd183cec907e815a301 : FAILURE in 13m 59s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/7f549bc353e247a3b977ea08b4add7ea : SUCCESS in 36m 10s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/964135b1d691415b9e65bad1eff2722e : SUCCESS in 28m 57s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/ce17f188c9ba42c5833f74a2eb1c5895 : SUCCESS in 3m 47s","accounts_in_message":[],"_revision_number":19},{"id":"22afb2d770490d67f54250c05567a22bb03e4c16","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-07 12:11:16.000000000","message":"Patch Set 20: Commit message was updated.","accounts_in_message":[],"_revision_number":20},{"id":"75b8f39491ede68d15dcc4b50b7aa750fde359aa","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-07 12:42:15.000000000","message":"Patch Set 20: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/79ad7621196b4162a1d221182774d8d2 : SUCCESS in 2m 33s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/18f12f848f6b4e34a5895e5d23eca815 : SUCCESS in 5m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/01ea1225d111441b9848e9952bec931c : SUCCESS in 4m 05s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/8a18506a8b59440ea63c8b71cd494e69 : SUCCESS in 4m 23s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/5bf6146770844a598f7e5d0a8591e26d : SUCCESS in 4m 41s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2e672675757b4de8b4ca1b1083b935bf : SUCCESS in 6m 55s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/5f6004c5c21d4201aa0b5285bfcaec52 : SUCCESS in 23m 16s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/0f0b441986c54b1185b6a3ea8cb1a7ea : SUCCESS in 29m 25s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/800db711bb3745b1b6510ed777387e3a : SUCCESS in 4m 01s","accounts_in_message":[],"_revision_number":20},{"id":"5f668dba553fdb3c54f3a5df8a78e08917a95941","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-08 02:55:50.000000000","message":"Uploaded patch set 21.","accounts_in_message":[],"_revision_number":21},{"id":"d6e27bf9a2ff8877b08dcd40f9356b75e54cce5d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-08 03:33:32.000000000","message":"Patch Set 21: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/81e38eae86d845eca9dea59248aab6c9 : SUCCESS in 2m 27s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/83ad5b682c104ea9aec6a18a1b1e9330 : SUCCESS in 3m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c158240b13924899b1e7dbe8afaf6c49 : SUCCESS in 3m 16s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/9439710391e74194b3290ea68335ce43 : SUCCESS in 3m 31s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/f5163ee67d1c46758104fb0678a9fee0 : SUCCESS in 4m 16s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/54e6c6d175bf4e2b8081cd56a260d4ce : SUCCESS in 5m 20s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/beaf442f0c2c484eae445b2b41e53b52 : SUCCESS in 31m 20s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/3efd292fb03e4858ac3b72bf66153bb5 : SUCCESS in 31m 56s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/d7cbf16437634881be4c466c976d79eb : SUCCESS in 3m 28s","accounts_in_message":[],"_revision_number":21},{"id":"6917e767cb4df79db0546decaa03a363fb9e583a","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-08 05:58:07.000000000","message":"Patch Set 22: Commit message was updated.","accounts_in_message":[],"_revision_number":22},{"id":"2a63dcc3ddf91f978f36ab3f9e442a6e8f1b9f0a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-08 06:38:33.000000000","message":"Patch Set 22: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/d7f127b034ad481391d859f0cc82e7dd : SUCCESS in 2m 29s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/0616f5229a4646f18e7f31091e8b7eaf : SUCCESS in 4m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/37e7e65cf0fe47aa848ad7c4cfb64d60 : SUCCESS in 3m 55s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f186c448aaf0466287cfa80479bbd74f : SUCCESS in 6m 20s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/295854a2e48340b6a04d57bf223f73ed : SUCCESS in 4m 18s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/534ee94d3f094c7ea5474649cf8e6148 : SUCCESS in 5m 53s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/a7869af47f1c47d384a33191d4304eba : SUCCESS in 32m 41s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/f9c93e1f887643ce8f16fbed2bade904 : SUCCESS in 33m 02s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/85afa763d95e40338a9f9fcf4a9431e6 : SUCCESS in 4m 18s","accounts_in_message":[],"_revision_number":22},{"id":"4bed8214eb0be308851dc4aa26d19b314ea84fc7","author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"date":"2020-09-08 08:09:25.000000000","message":"Patch Set 22: Code-Review+2\n\nLGTM","accounts_in_message":[],"_revision_number":22},{"id":"12f780b701dfe9d1a34e5e95cac048ee91689d85","author":{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},"date":"2020-09-09 01:28:02.000000000","message":"Patch Set 22: Code-Review+1\n\n(1 comment)\n\nPlease look at my comment in line.","accounts_in_message":[],"_revision_number":22},{"id":"c81441460ab0c8f4d72774c68785b257e349817d","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-09-09 10:04:01.000000000","message":"Patch Set 22: Code-Review-1\n\n(7 comments)","accounts_in_message":[],"_revision_number":22},{"id":"98a2dcb1ad3228ec63abd5ca05764357f175a86d","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-09-09 10:39:00.000000000","message":"Patch Set 22:\n\n(1 comment)","accounts_in_message":[],"_revision_number":22},{"id":"ab4c789647b6b5770516e44910ede513c4784338","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-10 02:56:59.000000000","message":"Uploaded patch set 23: Patch Set 22 was rebased.","accounts_in_message":[],"_revision_number":23},{"id":"64c7e20240b64bae07f83f51a2b055a8021dba02","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-10 03:38:22.000000000","message":"Patch Set 23: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/b6e6631f833e4eac9aa33f2add581adf : SUCCESS in 4m 40s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/f2efac01b02c4030b7ea23053ab650f2 : SUCCESS in 5m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7f3c57b01533469787ce8fec287f6f70 : SUCCESS in 3m 59s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/7202bb5b898347e3a3568792078fdf8e : SUCCESS in 5m 05s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/acdae90714284c0db6985cb1bc6dc28f : SUCCESS in 4m 35s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e871554d026649749f7e9208df4d3c57 : SUCCESS in 15m 02s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/5d856f61d0834b35af5d0a27bc72de61 : SUCCESS in 29m 13s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/b5b10d650ac14713bb2899016008ba88 : SUCCESS in 39m 00s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/e711652c650d42eda70ed9fe951e4752 : SUCCESS in 4m 28s","accounts_in_message":[],"_revision_number":23},{"id":"0229e6cf6a0473f02c0cfbc3955c8450f2d969fe","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-10 09:36:56.000000000","message":"Patch Set 24: Published edit on patch set 23.","accounts_in_message":[],"_revision_number":24},{"id":"20a244bc396b95ab1b033e8f3d3e3bd8a2b5ada0","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-10 09:40:03.000000000","message":"Patch Set 24:\n\n(4 comments)\n\nThanks Brin, careful catch.","accounts_in_message":[],"_revision_number":24},{"id":"085998244b7bf61bf55f27dbd96700e563daea86","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-10 10:21:11.000000000","message":"Patch Set 24: Verified-1\n\n(1 comment)\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/8ce96a73dff1469c909ec897c62a3d8a : SUCCESS in 3m 55s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/45ac2cd90b3945058ad3c5674552de5f : SUCCESS in 5m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a6b0eb7f313f4b85bb01ac9ba10d1b6d : FAILURE in 4m 59s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/36c6577d676e4b1fb3f53f58866af14a : SUCCESS in 6m 52s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/5daa019adc694982af6d913e3a55d070 : SUCCESS in 5m 14s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/589358171f2346a3afa09b8f9b1a07f4 : SUCCESS in 15m 26s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/90ea5b7e191044e7a66c94c434f57f84 : SUCCESS in 34m 00s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/31e85c09b7b044a3a7f60f5769906ebc : SUCCESS in 35m 53s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/130f582ea6bb4a73a211664ba259f6b2 : SUCCESS in 5m 18s","accounts_in_message":[],"_revision_number":24},{"id":"1e3e326c1635ca2c161e6b44fdd926046b0aa619","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-10 12:13:53.000000000","message":"Patch Set 25: Published edit on patch set 24.","accounts_in_message":[],"_revision_number":25},{"id":"7c62eb13278a97ae7841913579410d9349aa711d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-10 12:53:10.000000000","message":"Patch Set 25: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/f0109d63035941459aca98b85bfdc947 : SUCCESS in 4m 28s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/14b773fa49804516b1a9d0575d5e2d8b : SUCCESS in 5m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4ef93142cfca484a9ba600cdd2bde266 : SUCCESS in 4m 19s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/89b91b44f65245b58b4587b7f7d7090d : SUCCESS in 4m 27s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/5c8f073e818b4c849f818b1e5507121e : SUCCESS in 4m 04s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/244bb134b2534aa7a865a1f2a2f97953 : SUCCESS in 15m 03s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/6f7931c0aad44919a799bc00af3e0bae : SUCCESS in 31m 22s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/27491d008d2d44ec9e5bf5a77eee722f : SUCCESS in 33m 02s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/c27493c20cad4e44a0574559207803a0 : SUCCESS in 4m 48s","accounts_in_message":[],"_revision_number":25},{"id":"95100370ff6512f6cd2b0bbecf6eb810e89a1eda","author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"date":"2020-09-11 02:34:29.000000000","message":"Patch Set 25: Code-Review+2\n\nLGTM","accounts_in_message":[],"_revision_number":25},{"id":"9f7ad4dbf028c6c4208a860064ca595c855761e9","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-09-11 02:41:11.000000000","message":"Patch Set 25: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":25},{"id":"4a0d88b861e96eacae47d7ca7653d7a1f1a293e8","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-09-11 02:43:05.000000000","message":"Patch Set 25:\n\nNeed to add a releasenote to record this change, in this patch we were introducing the new policy (need to display the roles), and decreprated the old roles.","accounts_in_message":[],"_revision_number":25},{"id":"e1c64b57d4670ed3e82799f7b932253d609f5388","author":{"_account_id":14107,"name":"zhurong","email":"aaronzhu1121@gmail.com","username":"zhurong"},"date":"2020-09-11 04:01:12.000000000","message":"Patch Set 25: Code-Review+1\n\nWhen all works done, will add the release note.","accounts_in_message":[],"_revision_number":25},{"id":"63f0bc172e55e2cf64f0891b07fa5f4587381b2a","author":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"date":"2020-09-11 05:57:20.000000000","message":"Patch Set 25: Code-Review+2\n\nLGTM.","accounts_in_message":[],"_revision_number":25},{"id":"a60ca430bbecc993802e182b4e2d6fe6133c8243","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-11 06:14:53.000000000","message":"Patch Set 25:\n\n(1 comment)","accounts_in_message":[],"_revision_number":25},{"id":"854311a70b190a52916ce4b5cb6f5a4c85288abd","author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"date":"2020-09-11 08:41:17.000000000","message":"Patch Set 25: Code-Review+1\n\n(3 comments)","accounts_in_message":[],"_revision_number":25},{"id":"3a43e919a92f0379987a7c2bc89ea9497d3e55f5","author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"date":"2020-09-11 10:04:21.000000000","message":"Uploaded patch set 26: Patch Set 25 was rebased.","accounts_in_message":[],"_revision_number":26},{"id":"3b76abc453b635ba55e4b8af42ff38a284683be6","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-11 10:48:11.000000000","message":"Patch Set 26: Verified+1\n\nBuild succeeded (check pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/d95cfd52f5b547f99e984dd77836029c : SUCCESS in 2m 52s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/1cb47359b50c42a097e0ba26b5f5b026 : SUCCESS in 4m 48s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/fae157e5f54144d4ba82c9a197232482 : SUCCESS in 4m 32s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/be5084b4eb9943dd9f4b9b6cacffcdbf : SUCCESS in 4m 12s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/1a562fa3cafd463d991d438856436d21 : SUCCESS in 5m 35s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/036307d757cf4116b005b8a757d7e3dc : SUCCESS in 15m 29s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/d946ad7a8b59462184e192b660c4b111 : SUCCESS in 34m 25s\n- cyborg-tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/f0f61b63873a4da4b8cb816f0ca7fb17 : SUCCESS in 33m 55s (non-voting)\n- cyborg-tox-bandit https://zuul.opendev.org/t/openstack/build/09ae6e9fddaf4444aaddb6a27e6ce1b3 : SUCCESS in 4m 27s","accounts_in_message":[],"_revision_number":26},{"id":"7435b5aabc2a9a2ee027c508c81971e71830685d","author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"date":"2020-09-14 07:27:34.000000000","message":"Patch Set 26: Code-Review+2 Workflow+1\n\n\u003e Need to add a releasenote to record this change, in this patch we\n \u003e were introducing the new policy (need to display the roles), and\n \u003e decreprated the old roles.\n\nBoost my vote.\nThe releasenote has submited in https://review.opendev.org/#/c/751227/1, although I think it should be in the same patch, this is fine.","accounts_in_message":[],"_revision_number":26},{"id":"ca095729e4b37475fc2038bd8ae430632ab5080c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-14 07:27:46.000000000","message":"Patch Set 26: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":26},{"id":"2a2e2157564b1c1c41f3532035d644a9ac9aaecf","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-14 08:23:00.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":26},{"id":"a49ef6d4fe44f0ff128755325e787f93fafaeb1e","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-14 08:23:00.000000000","message":"Patch Set 26: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- test-release-openstack https://zuul.opendev.org/t/openstack/build/3ec26c7c8044424999105e2f91f427a0 : SUCCESS in 3m 37s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3b8600592a4c47048ffe9ffb730e5c13 : SUCCESS in 5m 23s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/cd27b0ac084145f996a0d61da9719545 : SUCCESS in 6m 10s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/d05c6477cac842e3915cfeb8f1510395 : SUCCESS in 5m 17s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9224bd99b8d047a7a916f1e86eb9cf67 : SUCCESS in 13m 45s\n- cyborg-tempest https://zuul.opendev.org/t/openstack/build/9bdcb4eca63f43359167cd8e572b528b : SUCCESS in 35m 35s","accounts_in_message":[],"_revision_number":26},{"id":"4fcfc4908121efc3bee68ef372e00842b61740a7","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-09-14 08:25:58.000000000","message":"Patch Set 26:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1574c1c2c1064d0084daea5ee73af7cf : SUCCESS in 2m 06s","accounts_in_message":[],"_revision_number":26}],"current_revision_number":26,"current_revision":"270d12e9a83241692cd2007f71b69acfe1a08f74","revisions":{"1b43746431b1ca3199343b180d1848ceff215623":{"kind":"REWORK","_number":1,"created":"2020-07-11 06:53:53.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/1"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-11 06:53:24.000000000","tz":480},"subject":"[WIP] Refresh cyborg basic_policies and device_profile_policies","message":"[WIP] Refresh cyborg basic_policies and device_profile_policies\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy files into a more logical way:\n    1. added system_scoped and project_scoped roles to basic policies\nand marked legacy roles as deprecated.\n    2. Updated device_profile APIs\n    2. extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch shows the changes of base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1b43746431b1ca3199343b180d1848ceff215623"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1b43746431b1ca3199343b180d1848ceff215623"}]},"branch":"refs/heads/master"},"1496bc99168edb95d7e204119bfb0fc49b4c6b13":{"kind":"REWORK","_number":2,"created":"2020-07-11 07:05:48.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/2"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-11 07:04:57.000000000","tz":0},"subject":"[WIP] Refresh cyborg basic_policies and device_profile_policies","message":"[WIP] Refresh cyborg basic_policies and device_profile_policies\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy files into a more logical way:\n    1. added system_scoped and project_scoped roles to basic policies\nand marked legacy roles as deprecated.\n    2. Updated device_profile APIs\n    2. extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch shows the changes of base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1496bc99168edb95d7e204119bfb0fc49b4c6b13"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1496bc99168edb95d7e204119bfb0fc49b4c6b13"}]},"branch":"refs/heads/master"},"5ce7e6a3b2ec6fb0b510331723366608d9998f0a":{"kind":"REWORK","_number":3,"created":"2020-07-15 08:11:11.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/3"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-15 06:03:25.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/5ce7e6a3b2ec6fb0b510331723366608d9998f0a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/5ce7e6a3b2ec6fb0b510331723366608d9998f0a"}]},"branch":"refs/heads/master"},"fc86f31c5735649602ff0535b689e796cde9bd12":{"kind":"REWORK","_number":4,"created":"2020-07-16 11:09:38.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/4"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-16 11:09:18.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/fc86f31c5735649602ff0535b689e796cde9bd12"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/fc86f31c5735649602ff0535b689e796cde9bd12"}]},"branch":"refs/heads/master"},"2ceaf0cd30bc2288491584b8e8ccfca48f133cd3":{"kind":"TRIVIAL_REBASE","_number":5,"created":"2020-07-16 11:23:02.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/5"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-16 11:23:02.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/2ceaf0cd30bc2288491584b8e8ccfca48f133cd3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/2ceaf0cd30bc2288491584b8e8ccfca48f133cd3"}]},"branch":"refs/heads/master"},"25ae6b671e19701f7be83fb7f89850b7da49286e":{"kind":"REWORK","_number":6,"created":"2020-07-16 11:52:40.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/6"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-16 11:52:21.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/25ae6b671e19701f7be83fb7f89850b7da49286e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/25ae6b671e19701f7be83fb7f89850b7da49286e"}]},"branch":"refs/heads/master"},"9b24241f03d7feb9ca602a782b59fab655762bf8":{"kind":"TRIVIAL_REBASE","_number":7,"created":"2020-07-16 11:54:36.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/7"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-16 11:54:36.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9b24241f03d7feb9ca602a782b59fab655762bf8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9b24241f03d7feb9ca602a782b59fab655762bf8"}]},"branch":"refs/heads/master"},"ca0d41b9efc794acb572cb1f2e51c045b52d60f6":{"kind":"REWORK","_number":8,"created":"2020-07-23 01:50:35.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/8"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-22 09:24:41.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ca0d41b9efc794acb572cb1f2e51c045b52d60f6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ca0d41b9efc794acb572cb1f2e51c045b52d60f6"}]},"branch":"refs/heads/master"},"5246fe9455882465953cfb200aa24b3b1413cd88":{"kind":"TRIVIAL_REBASE","_number":9,"created":"2020-07-23 01:52:07.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/9"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-23 01:52:07.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/5246fe9455882465953cfb200aa24b3b1413cd88"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/5246fe9455882465953cfb200aa24b3b1413cd88"}]},"branch":"refs/heads/master"},"f93bf16ffbdbf1049a0f928ed6d9b2ce7c28bb44":{"kind":"NO_CODE_CHANGE","_number":10,"created":"2020-07-23 02:02:57.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/10"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-23 02:02:39.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nDebug info of this patch can be found in [1], one can easily reproduce by \ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/f93bf16ffbdbf1049a0f928ed6d9b2ce7c28bb44"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/f93bf16ffbdbf1049a0f928ed6d9b2ce7c28bb44"}]},"branch":"refs/heads/master"},"04e4344fae0c0b48aab0c3e38da1902c9c9919a2":{"kind":"REWORK","_number":11,"created":"2020-07-24 02:49:30.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/11","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/11","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/11"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-24 02:40:17.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/04e4344fae0c0b48aab0c3e38da1902c9c9919a2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/04e4344fae0c0b48aab0c3e38da1902c9c9919a2"}]},"branch":"refs/heads/master"},"31488998aba7c2bee7a9abf9e85a3819adf4b62d":{"kind":"REWORK","_number":12,"created":"2020-07-24 06:52:42.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/12","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/12","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/12"}}},"commit":{"parents":[{"commit":"1f20a36c1f4acdcd8c05508a44f2c38a567abbb9","subject":"Merge \"Removed unused image api methods\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1f20a36c1f4acdcd8c05508a44f2c38a567abbb9"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-24 06:52:21.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/31488998aba7c2bee7a9abf9e85a3819adf4b62d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/31488998aba7c2bee7a9abf9e85a3819adf4b62d"}]},"branch":"refs/heads/master"},"a705732769b605efd15b00c038f2f093c4253fa3":{"kind":"TRIVIAL_REBASE","_number":13,"created":"2020-07-24 06:53:12.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/13","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/13","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/13 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/13 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/13 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/13"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-24 06:53:12.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable five personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    3. extract authorize_wsgi.py out from policy.py\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/a705732769b605efd15b00c038f2f093c4253fa3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/a705732769b605efd15b00c038f2f093c4253fa3"}]},"branch":"refs/heads/master"},"592ffb6146e672442fef2098000d407c9a896c0e":{"kind":"NO_CODE_CHANGE","_number":14,"created":"2020-07-24 09:18:40.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/14","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/14","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/14 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/14 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/14 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/14"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-24 09:18:31.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * project admin_or_owner\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nDebug info of this patch can be found in [1], one can easily reproduce by\ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/592ffb6146e672442fef2098000d407c9a896c0e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/592ffb6146e672442fef2098000d407c9a896c0e"}]},"branch":"refs/heads/master"},"1699f0426817f6b615feedb9198a060e4c54801e":{"kind":"REWORK","_number":15,"created":"2020-07-29 08:49:14.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/15","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/15","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/15 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/15 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/15 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/15"}}},"commit":{"parents":[{"commit":"0eb12a9892ebba71d18816132f8e8c4e646ba412","subject":"Merge \"update API documentation\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0eb12a9892ebba71d18816132f8e8c4e646ba412"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-07-29 08:46:10.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * project admin_or_owner\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nDebug info of this patch can be found in [1], one can easily reproduce by\ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1699f0426817f6b615feedb9198a060e4c54801e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1699f0426817f6b615feedb9198a060e4c54801e"}]},"branch":"refs/heads/master"},"8a40894f1c44d4bcbc2a8b44f93e71cea5e8996d":{"kind":"NO_CHANGE","_number":16,"created":"2020-08-02 09:49:32.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/16","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/16","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/16 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/16 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/16 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/16"}}},"commit":{"parents":[{"commit":"40259a25ecc00520c19e88789b77306d8db1b272","subject":"Revert \"Add new default policy\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/40259a25ecc00520c19e88789b77306d8db1b272"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-08-02 09:49:32.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * project admin_or_owner\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nDebug info of this patch can be found in [1], one can easily reproduce by\ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/8a40894f1c44d4bcbc2a8b44f93e71cea5e8996d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/8a40894f1c44d4bcbc2a8b44f93e71cea5e8996d"}]},"branch":"refs/heads/master"},"b5a9ac1a35254261907aa2244a2df71cff1524d2":{"kind":"REWORK","_number":17,"created":"2020-08-03 02:44:01.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/17","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/17","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/17 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/17 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/17 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/17"}}},"commit":{"parents":[{"commit":"40259a25ecc00520c19e88789b77306d8db1b272","subject":"Revert \"Add new default policy\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/40259a25ecc00520c19e88789b77306d8db1b272"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-08-03 02:43:35.000000000","tz":480},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * project admin_or_owner\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nDebug info of this patch can be found in [1], one can easily reproduce by\ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/b5a9ac1a35254261907aa2244a2df71cff1524d2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/b5a9ac1a35254261907aa2244a2df71cff1524d2"}]},"branch":"refs/heads/master"},"60f978ce4256b4b06c87614fb9ff06adb41ae7b1":{"kind":"NO_CODE_CHANGE","_number":18,"created":"2020-08-04 05:37:51.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/18","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/18","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/18 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/18 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/18 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/18"}}},"commit":{"parents":[{"commit":"40259a25ecc00520c19e88789b77306d8db1b272","subject":"Revert \"Add new default policy\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/40259a25ecc00520c19e88789b77306d8db1b272"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-08-04 05:37:47.000000000","tz":0},"subject":"P0: Refresh cyborg basic_policies and device_profile_policies","message":"P0: Refresh cyborg basic_policies and device_profile_policies\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * project admin_or_owner\n2. Rewrite check string(authorization rules) using new personas for all APIs\n3. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) Updated device_profile APIs\n    3) extract API_policies from policy.py to indenpendent policy files\n    4) extract authorize_wsgi.py out from policy.py\nPolicy Unittest will be submitted in a seperated patch, which will be a\nbig work.Although,there are no policy UT,current device_profile API\ntests can be the validator, because they also require the API request\nto pass the policy check,otherwise the API UT will fail.\nSo, in order to show all the changes in this patch can work and\nwon\u0027t destroy current code.One can find the debug info of this patch\nin [1], one can easily reproduce by\ndebugging test_device_profiles.TestDeviceProfileController.test_create.\n\nAll changes in this patch will show a full framwork of the new policies, and\nthis patch implements the changes for base_policies and device_profile_policies.\nChanges for other policies such as device_policies, deployable_policies\nwill be followed in the next patches.\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]http://paste.openstack.org/show/796229/\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/60f978ce4256b4b06c87614fb9ff06adb41ae7b1"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/60f978ce4256b4b06c87614fb9ff06adb41ae7b1"}]},"branch":"refs/heads/master"},"d11a58f6a17965257f58aca7ea12b89e576d4361":{"kind":"REWORK","_number":19,"created":"2020-09-07 08:20:12.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/19","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/19","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/19 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/19 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/19 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/19"}}},"commit":{"parents":[{"commit":"407b96603ad01cb89c29302a8cbfc3eb308534e7","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/407b96603ad01cb89c29302a8cbfc3eb308534e7"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-09-07 08:19:37.000000000","tz":480},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n5. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/d11a58f6a17965257f58aca7ea12b89e576d4361"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/d11a58f6a17965257f58aca7ea12b89e576d4361"}]},"branch":"refs/heads/master"},"0c6b26f4ee49c1871eaebb5d97a21e895945eb42":{"kind":"NO_CODE_CHANGE","_number":20,"created":"2020-09-07 12:11:16.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/20","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/20","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/20 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/20 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/20 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/20"}}},"commit":{"parents":[{"commit":"407b96603ad01cb89c29302a8cbfc3eb308534e7","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/407b96603ad01cb89c29302a8cbfc3eb308534e7"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-09-07 12:11:13.000000000","tz":0},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] and new policy rules[1] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n5. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n[1]https://wiki.openstack.org/wiki/Cyborg/Policy\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0c6b26f4ee49c1871eaebb5d97a21e895945eb42"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0c6b26f4ee49c1871eaebb5d97a21e895945eb42"}]},"branch":"refs/heads/master"},"f82b50fc89700f48b03c81aa36bf48e6a93e08b9":{"kind":"TRIVIAL_REBASE_WITH_MESSAGE_UPDATE","_number":21,"created":"2020-09-08 02:55:50.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/21","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/21","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/21 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/21 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/21 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/21"}}},"commit":{"parents":[{"commit":"07aee5014d37b1683b4540e8c0afc785590956ae","subject":"Merge \"Add releasenote for add project_id for arq patch api\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/07aee5014d37b1683b4540e8c0afc785590956ae"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-09-07 11:56:04.000000000","tz":480},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n5. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40313\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/f82b50fc89700f48b03c81aa36bf48e6a93e08b9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/f82b50fc89700f48b03c81aa36bf48e6a93e08b9"}]},"branch":"refs/heads/master"},"1cb665716c806f4762bda3dc8c3030c49ac22d00":{"kind":"NO_CODE_CHANGE","_number":22,"created":"2020-09-08 05:58:07.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/22","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/22","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/22 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/22 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/22 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/22"}}},"commit":{"parents":[{"commit":"07aee5014d37b1683b4540e8c0afc785590956ae","subject":"Merge \"Add releasenote for add project_id for arq patch api\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/07aee5014d37b1683b4540e8c0afc785590956ae"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-09-08 05:58:03.000000000","tz":0},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n5. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40835\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1cb665716c806f4762bda3dc8c3030c49ac22d00"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/1cb665716c806f4762bda3dc8c3030c49ac22d00"}]},"branch":"refs/heads/master"},"ece65660440ccdd09f3745be90abbfbc1f087a51":{"kind":"TRIVIAL_REBASE","_number":23,"created":"2020-09-10 02:56:59.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/23","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/23","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/23 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/23 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/23 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/23"}}},"commit":{"parents":[{"commit":"0ad4e8c8bd843eb0bdb17d73903c1f36102d0797","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0ad4e8c8bd843eb0bdb17d73903c1f36102d0797"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-09-08 07:36:30.000000000","tz":480},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable six personas to cyborg and deprecate old ones:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, Users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n5. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added five personas to basic policies and deprecated legacy roles\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40835\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ece65660440ccdd09f3745be90abbfbc1f087a51"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/ece65660440ccdd09f3745be90abbfbc1f087a51"}]},"branch":"refs/heads/master"},"9046d8cd3d5dd4743ac2d3e62151577178e51f1c":{"kind":"REWORK","_number":24,"created":"2020-09-10 09:36:56.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/24","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/24","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/24 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/24 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/24 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/24"}}},"commit":{"parents":[{"commit":"0ad4e8c8bd843eb0bdb17d73903c1f36102d0797","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0ad4e8c8bd843eb0bdb17d73903c1f36102d0797"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-09-10 09:36:49.000000000","tz":0},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable seven personas to cyborg and mark old\n   ones as deprecated roles:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added seven personas to basic policies and marked legacy roles\n       as deprecated ones.\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40835\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9046d8cd3d5dd4743ac2d3e62151577178e51f1c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/9046d8cd3d5dd4743ac2d3e62151577178e51f1c"}]},"branch":"refs/heads/master"},"0bb806b9dc7f7c74998c9b03efe1b8bf2153f1f3":{"kind":"REWORK","_number":25,"created":"2020-09-10 12:13:53.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/25","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/25","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/25 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/25 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/25 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/25"}}},"commit":{"parents":[{"commit":"0ad4e8c8bd843eb0bdb17d73903c1f36102d0797","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0ad4e8c8bd843eb0bdb17d73903c1f36102d0797"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"YumengBao","email":"yumeng_bao@yahoo.com","date":"2020-09-10 12:13:49.000000000","tz":0},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable seven personas to cyborg and mark old\n   ones as deprecated roles:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added seven personas to basic policies and marked legacy roles\n       as deprecated ones.\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40835\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0bb806b9dc7f7c74998c9b03efe1b8bf2153f1f3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/0bb806b9dc7f7c74998c9b03efe1b8bf2153f1f3"}]},"branch":"refs/heads/master"},"270d12e9a83241692cd2007f71b69acfe1a08f74":{"kind":"TRIVIAL_REBASE","_number":26,"created":"2020-09-11 10:04:21.000000000","uploader":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"ref":"refs/changes/42/740542/26","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cyborg","ref":"refs/changes/42/740542/26","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/26 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/26 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cyborg refs/changes/42/740542/26 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cyborg refs/changes/42/740542/26"}}},"commit":{"parents":[{"commit":"27d5a7de3904e01a13aa450eba1045634a312d9c","subject":"Add policies tests for existing device_profile APIs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/27d5a7de3904e01a13aa450eba1045634a312d9c"}]}],"author":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-07-09 05:48:04.000000000","tz":480},"committer":{"name":"Yumeng Bao","email":"yumeng_bao@yahoo.com","date":"2020-09-11 06:27:15.000000000","tz":480},"subject":"Add new default rules and mapping in policy base class","message":"Add new default rules and mapping in policy base class\n\nCyborg Policy Default Refresh is one of the planned blueprints for victoria\nrelease, the specification[0] has been merged in ussuri. To be brief, we need\nto do the followings to incorporate authorization scopes into cyborg:\n1. Add protection test for all APIs.\n   A protection test is similar to an API test, but purely focused on the\n   authoritative outcome.In other words, protection testing is sufficient when\n   we can assert that a user is or isn’t allowed to do or see something. For\n   example, users with a reader role on the system or a project shouldn’t be\n   able to make writable changes.\n2. Add the following applicable seven personas to cyborg and mark old\n   ones as deprecated roles:\n   * project reader\n   * project member\n   * project admin\n   * system reader\n   * system admin\n   * system admin or owner\n   * system or project reader\n3. Rewrite check string(authorization rules) using new personas for all APIs\n4. Update policy documentation on cyborg-doc page\n\nThis patch refreshed cyborg default RBAC policy to scoped RBAC policy, and\nreorganized the policy framework into a more logical way:\n    1) added seven personas to basic policies and marked legacy roles\n       as deprecated ones.\n    2) extract API_policies from policy.py to indenpendent policy files\n    3) extract authorize_wsgi.py out from policy.py\n\n[0]https://specs.openstack.org/openstack/cyborg-specs/specs/ussuri/approved/policy-defaults-refresh.html\n\nStory: 2007024\nTask: 40835\n\nChange-Id: I948d0202ddcd82a532c4de2c1850893cbfaf003d\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/270d12e9a83241692cd2007f71b69acfe1a08f74"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cyborg/commit/270d12e9a83241692cd2007f71b69acfe1a08f74"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
