)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"988c1302fb4cf69f99af19f6b5ee7b1a7a571439","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2017-03-23 02:47:30 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add description to policies in admin_actions"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"blueprint policy-docs"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I0df77cc2fa7db7852416e87e30fd28730ac54abd"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"ffe62b97_410a7326","line":8,"updated":"2017-03-24 12:03:49.000000000","message":"Could you add\n\n  The \u0027discoverable\u0027 policy is not documented as it will be removed in a\n  future change.\n\nplease, for future folks looking at ze code :)","commit_id":"aa2b249f282895b63116b15e70145b1b328153fe"}],"nova/policies/admin_actions.py":[{"author":{"_account_id":18337,"name":"Sujitha","email":"sujitha.neti@intel.com","username":"Sujitha"},"change_message_id":"0a3cc84c0443e3dabc9c25d182050f29c9ad8401","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        name\u003dPOLICY_ROOT % \u0027inject_network_info\u0027,"},{"line_number":34,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":35,"context_line":"    policy.RuleDefault("},{"line_number":36,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":37,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":38,"context_line":"    policy.RuleDefault("},{"line_number":39,"context_line":"        name\u003dPOLICY_ROOT % \u0027reset_network\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba2be162_a098526b","side":"PARENT","line":36,"updated":"2017-03-03 19:10:50.000000000","message":"This policy rule is not being used anywhere in the project. Removing this.","commit_id":"616486cd01091431c84a9fc422fb79b6e8cb910d"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"a6878a7dfbee79c26d11a61e0ca27f80a5662a9b","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        name\u003dPOLICY_ROOT % \u0027inject_network_info\u0027,"},{"line_number":34,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":35,"context_line":"    policy.RuleDefault("},{"line_number":36,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":37,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":38,"context_line":"    policy.RuleDefault("},{"line_number":39,"context_line":"        name\u003dPOLICY_ROOT % \u0027reset_network\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a1ced50_b9e739e3","side":"PARENT","line":36,"in_reply_to":"ba2be162_a098526b","updated":"2017-03-17 18:56:08.000000000","message":"I would remove it in a follow up change, just add a TODO. We need a reno note for this.","commit_id":"616486cd01091431c84a9fc422fb79b6e8cb910d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"22f89a827e06b68e80a21289ee96eb3c2c0d4574","unresolved":false,"context_lines":[{"line_number":21,"context_line":"BASE_POLICY_NAME \u003d \u0027os_compute_api:os-admin-actions\u0027"},{"line_number":22,"context_line":"POLICY_ROOT \u003d \u0027os_compute_api:os-admin-actions:%s\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"admin_actions_policies \u003d ["},{"line_number":26,"context_line":"    policy.RuleDefault("},{"line_number":27,"context_line":"        name\u003dPOLICY_ROOT % \u0027discoverable\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a1ced50_2cc21c34","side":"PARENT","line":24,"updated":"2017-03-18 11:31:03.000000000","message":"this is extra change, we should remove","commit_id":"54166356cf2feb3f8d7179e71241583936ee6ec1"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"22f89a827e06b68e80a21289ee96eb3c2c0d4574","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    policy.RuleDefault("},{"line_number":26,"context_line":"        name\u003dPOLICY_ROOT % \u0027discoverable\u0027,"},{"line_number":27,"context_line":"        check_str\u003dbase.RULE_ANY),"},{"line_number":28,"context_line":"    policy.RuleDefault("},{"line_number":29,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":30,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":31,"context_line":"    base.create_rule_default("},{"line_number":32,"context_line":"        POLICY_ROOT % \u0027reset_state\u0027,"},{"line_number":33,"context_line":"        base.RULE_ADMIN_API,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a1ced50_8ce790e3","line":30,"range":{"start_line":28,"start_character":4,"end_line":30,"end_character":38},"updated":"2017-03-18 11:31:03.000000000","message":"Looks like this isn\u0027t used by any API, we probably can remove it in another patch. Just as John said, we better to leave a TODO note at here.","commit_id":"89ae77b37b7fc367fea49425b4f473078f1dc842"},{"author":{"_account_id":18337,"name":"Sujitha","email":"sujitha.neti@intel.com","username":"Sujitha"},"change_message_id":"6adacb3f82e7b57f5008c62ea55e3e4850a4d614","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    policy.RuleDefault("},{"line_number":26,"context_line":"        name\u003dPOLICY_ROOT % \u0027discoverable\u0027,"},{"line_number":27,"context_line":"        check_str\u003dbase.RULE_ANY),"},{"line_number":28,"context_line":"    policy.RuleDefault("},{"line_number":29,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":30,"context_line":"        check_str\u003dbase.RULE_ADMIN_API),"},{"line_number":31,"context_line":"    base.create_rule_default("},{"line_number":32,"context_line":"        POLICY_ROOT % \u0027reset_state\u0027,"},{"line_number":33,"context_line":"        base.RULE_ADMIN_API,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a1ced50_fb924e9e","line":30,"range":{"start_line":28,"start_character":4,"end_line":30,"end_character":38},"in_reply_to":"1a1ced50_8ce790e3","updated":"2017-03-20 17:27:34.000000000","message":"Done","commit_id":"89ae77b37b7fc367fea49425b4f473078f1dc842"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"30e961bc9679700c6e0b37fafef5e47c3aa361c4","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":40,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\")\u0027"},{"line_number":41,"context_line":"            }"},{"line_number":42,"context_line":"        ]),"},{"line_number":43,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_8d391244","line":40,"range":{"start_line":40,"start_character":52,"end_line":40,"end_character":53},"updated":"2017-03-21 02:00:07.000000000","message":"action name?\n\n\u0027/servers/{server_id}/action (os-resetState)\u0027","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"ae6c98404282aa0b28556f5579b78a6dbca4ea91","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":40,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\")\u0027"},{"line_number":41,"context_line":"            }"},{"line_number":42,"context_line":"        ]),"},{"line_number":43,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_e818a720","line":40,"range":{"start_line":40,"start_character":52,"end_line":40,"end_character":53},"in_reply_to":"1a1ced50_8d391244","updated":"2017-03-21 09:54:46.000000000","message":"Yeah, thats what we said in the spec:\nhttp://specs.openstack.org/openstack/nova-specs/specs/pike/approved/policy-docs.html","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":18337,"name":"Sujitha","email":"sujitha.neti@intel.com","username":"Sujitha"},"change_message_id":"f98a29e02cb3aa61efc815647fb1c4e52aa6266d","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":40,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\")\u0027"},{"line_number":41,"context_line":"            }"},{"line_number":42,"context_line":"        ]),"},{"line_number":43,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_31af79e3","line":40,"range":{"start_line":40,"start_character":52,"end_line":40,"end_character":53},"in_reply_to":"1a1ced50_e818a720","updated":"2017-03-21 15:36:24.000000000","message":"yeah..I missed it. Thanks for pointing that.","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"30e961bc9679700c6e0b37fafef5e47c3aa361c4","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        ["},{"line_number":48,"context_line":"            {"},{"line_number":49,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":50,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\")\u0027"},{"line_number":51,"context_line":"            }"},{"line_number":52,"context_line":"        ]),"},{"line_number":53,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_cd222a01","line":50,"range":{"start_line":50,"start_character":52,"end_line":50,"end_character":53},"updated":"2017-03-21 02:00:07.000000000","message":"(injectNetworkInfo)\u0027","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":18337,"name":"Sujitha","email":"sujitha.neti@intel.com","username":"Sujitha"},"change_message_id":"f98a29e02cb3aa61efc815647fb1c4e52aa6266d","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        ["},{"line_number":48,"context_line":"            {"},{"line_number":49,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":50,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\")\u0027"},{"line_number":51,"context_line":"            }"},{"line_number":52,"context_line":"        ]),"},{"line_number":53,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_51b8752a","line":50,"range":{"start_line":50,"start_character":52,"end_line":50,"end_character":53},"in_reply_to":"1a1ced50_cd222a01","updated":"2017-03-21 15:36:24.000000000","message":"Done","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"30e961bc9679700c6e0b37fafef5e47c3aa361c4","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        ["},{"line_number":58,"context_line":"            {"},{"line_number":59,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":60,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\u0027"},{"line_number":61,"context_line":"            }"},{"line_number":62,"context_line":"        ])"},{"line_number":63,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_0d1d22bd","line":60,"range":{"start_line":60,"start_character":52,"end_line":60,"end_character":53},"updated":"2017-03-21 02:00:07.000000000","message":"(resetNetwork)\u0027","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":18337,"name":"Sujitha","email":"sujitha.neti@intel.com","username":"Sujitha"},"change_message_id":"f98a29e02cb3aa61efc815647fb1c4e52aa6266d","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        ["},{"line_number":58,"context_line":"            {"},{"line_number":59,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":60,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action\u0027"},{"line_number":61,"context_line":"            }"},{"line_number":62,"context_line":"        ])"},{"line_number":63,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":8,"id":"1a1ced50_71b5712f","line":60,"range":{"start_line":60,"start_character":52,"end_line":60,"end_character":53},"in_reply_to":"1a1ced50_0d1d22bd","updated":"2017-03-21 15:36:24.000000000","message":"Done","commit_id":"89df9b079aab994d591771d15ae4ff7089d257e3"},{"author":{"_account_id":17814,"name":"fengzhr","email":"fengzhr@awcloud.com","username":"space"},"change_message_id":"f2e79de1c70ca1a2ae23b12f31a36b16f22d6a2b","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    base.create_rule_default("},{"line_number":54,"context_line":"        POLICY_ROOT % \u0027reset_network\u0027,"},{"line_number":55,"context_line":"        base.RULE_ADMIN_API,"},{"line_number":56,"context_line":"        \"Reset networking on a server.\","},{"line_number":57,"context_line":"        ["},{"line_number":58,"context_line":"            {"},{"line_number":59,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"}],"source_content_type":"text/x-python","patch_set":10,"id":"1a1ced50_e5c7c995","line":56,"range":{"start_line":56,"start_character":37,"end_line":56,"end_character":38},"updated":"2017-03-22 02:23:13.000000000","message":"Just a little advice, consistent with above.","commit_id":"e3f439786f7bfa6ee3c3cd7d6291a40e31e0f42b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"988c1302fb4cf69f99af19f6b5ee7b1a7a571439","unresolved":false,"context_lines":[{"line_number":37,"context_line":"        ["},{"line_number":38,"context_line":"            {"},{"line_number":39,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":40,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action (os-resetState)\")\u0027"},{"line_number":41,"context_line":"            }"},{"line_number":42,"context_line":"        ]),"},{"line_number":43,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":12,"id":"ffe62b97_0156ab2a","line":40,"range":{"start_line":40,"start_character":68,"end_line":40,"end_character":70},"updated":"2017-03-24 12:03:49.000000000","message":"typo?","commit_id":"aa2b249f282895b63116b15e70145b1b328153fe"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"988c1302fb4cf69f99af19f6b5ee7b1a7a571439","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        ["},{"line_number":48,"context_line":"            {"},{"line_number":49,"context_line":"                \u0027method\u0027: \u0027POST\u0027,"},{"line_number":50,"context_line":"                \u0027path\u0027: \u0027/servers/{server_id}/action (injectNetworkInfo)\")\u0027"},{"line_number":51,"context_line":"            }"},{"line_number":52,"context_line":"        ]),"},{"line_number":53,"context_line":"    base.create_rule_default("}],"source_content_type":"text/x-python","patch_set":12,"id":"ffe62b97_2159af59","line":50,"range":{"start_line":50,"start_character":72,"end_line":50,"end_character":74},"updated":"2017-03-24 12:03:49.000000000","message":"I don\u0027t think this should be here?","commit_id":"aa2b249f282895b63116b15e70145b1b328153fe"}]}
