)]}'
{"examples/policies/health_policy_poll.yaml":[{"author":{"_account_id":22998,"name":"XueFengLiu","email":"liu.xuefeng1@zte.com.cn","username":"sgfeng"},"change_message_id":"c5415cc68ea3f071f874945b3c24cce08c26135e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"description: A policy for maintaining node health from a cluster."},{"line_number":5,"context_line":"properties:"},{"line_number":6,"context_line":"  detection:"},{"line_number":7,"context_line":"    # Type for health checking, valid values include:"},{"line_number":8,"context_line":"    # NODE_STATUS_POLLING, LB_STATUS_POLLING, VM_LIFECYCLE_EVENTS"},{"line_number":9,"context_line":"    type: NODE_STATUS_POLLING"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9ad45d7e_d39a2e13","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":44},"updated":"2016-08-12 01:32:54.000000000","message":"tpyes better?","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"ff02fa81fd4ab10acf02b95d865dc116cc8da785","unresolved":false,"context_lines":[{"line_number":4,"context_line":"description: A policy for maintaining node health from a cluster."},{"line_number":5,"context_line":"properties:"},{"line_number":6,"context_line":"  detection:"},{"line_number":7,"context_line":"    # Type for health checking, valid values include:"},{"line_number":8,"context_line":"    # NODE_STATUS_POLLING, LB_STATUS_POLLING, VM_LIFECYCLE_EVENTS"},{"line_number":9,"context_line":"    type: NODE_STATUS_POLLING"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9ad45d7e_760ff036","line":7,"range":{"start_line":7,"start_character":38,"end_line":7,"end_character":44},"in_reply_to":"9ad45d7e_d39a2e13","updated":"2016-08-12 02:03:26.000000000","message":"values enumerate the allowed range for the Type.","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":22998,"name":"XueFengLiu","email":"liu.xuefeng1@zte.com.cn","username":"sgfeng"},"change_message_id":"c5415cc68ea3f071f874945b3c24cce08c26135e","unresolved":false,"context_lines":[{"line_number":5,"context_line":"properties:"},{"line_number":6,"context_line":"  detection:"},{"line_number":7,"context_line":"    # Type for health checking, valid values include:"},{"line_number":8,"context_line":"    # NODE_STATUS_POLLING, LB_STATUS_POLLING, VM_LIFECYCLE_EVENTS"},{"line_number":9,"context_line":"    type: NODE_STATUS_POLLING"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"    options:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9ad45d7e_f6012006","line":8,"range":{"start_line":8,"start_character":46,"end_line":8,"end_character":65},"updated":"2016-08-12 01:32:54.000000000","message":"why not named \"POLLING\"?","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":22998,"name":"XueFengLiu","email":"liu.xuefeng1@zte.com.cn","username":"sgfeng"},"change_message_id":"18ddd44daad8edba7f7430cdb511ab31035478cd","unresolved":false,"context_lines":[{"line_number":5,"context_line":"properties:"},{"line_number":6,"context_line":"  detection:"},{"line_number":7,"context_line":"    # Type for health checking, valid values include:"},{"line_number":8,"context_line":"    # NODE_STATUS_POLLING, LB_STATUS_POLLING, VM_LIFECYCLE_EVENTS"},{"line_number":9,"context_line":"    type: NODE_STATUS_POLLING"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"    options:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9ad45d7e_fcde1f3c","line":8,"range":{"start_line":8,"start_character":46,"end_line":8,"end_character":65},"in_reply_to":"9ad45d7e_211ff45b","updated":"2016-08-12 02:43:46.000000000","message":"So,the example file health_policy_poll.yaml named health_policy.yaml better?","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"ff02fa81fd4ab10acf02b95d865dc116cc8da785","unresolved":false,"context_lines":[{"line_number":5,"context_line":"properties:"},{"line_number":6,"context_line":"  detection:"},{"line_number":7,"context_line":"    # Type for health checking, valid values include:"},{"line_number":8,"context_line":"    # NODE_STATUS_POLLING, LB_STATUS_POLLING, VM_LIFECYCLE_EVENTS"},{"line_number":9,"context_line":"    type: NODE_STATUS_POLLING"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"    options:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9ad45d7e_211ff45b","line":8,"range":{"start_line":8,"start_character":46,"end_line":8,"end_character":65},"in_reply_to":"9ad45d7e_f6012006","updated":"2016-08-12 02:03:26.000000000","message":"NODE_STATUS_POLLING is the way based on polling. EVENTS is based on listener.","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"}],"senlin/engine/actions/cluster_action.py":[{"author":{"_account_id":8246,"name":"Qiming Teng","email":"tengqm@outlook.com","username":"tengqm"},"change_message_id":"8ca0449b9da1aa8012d219ae301bb43edebdb50c","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_864026a7","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"updated":"2016-08-16 02:17:26.000000000","message":"remove line 540, then line 541-544 can be changed to:\n\n  fencing_type \u003d pd.get(fencing)\n  force_delete \u003d fencing_type and \u0027COMPUTE\u0027 in fencing_type","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":8246,"name":"Qiming Teng","email":"tengqm@outlook.com","username":"tengqm"},"change_message_id":"89f63654a88f55e6107d63a5ec845d4d815e9be9","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_badff967","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_0a3edbb7","updated":"2016-08-16 23:53:29.000000000","message":"ah, yes, how about this:\n\n  fencing_type \u003d pd.get(fencing)\n  force_delete \u003d fencing_type not None and \u0027COMPUTE\u0027 in fencing_type","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":8246,"name":"Qiming Teng","email":"tengqm@outlook.com","username":"tengqm"},"change_message_id":"2bf078609585c2151be59f0a98b89a87efe84ace","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_c45b1a2d","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_3373564f","updated":"2016-08-16 13:51:34.000000000","message":"my suggested logic will set force_delete to a boolean, right?","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"137029b59bc8971ce4c9f224695729510cf528b5","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_3373564f","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_864026a7","updated":"2016-08-16 13:14:15.000000000","message":"we need to set it as true or false, instead of None...","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"4c389f9837e5ed4d2c81b8d3ad15d3f68eed323f","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_ef3c0aca","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_b4af0529","updated":"2016-08-17 06:27:33.000000000","message":"Forget to mention, \u0027\u003d\u003d\u0027 does not work in the same way as \u0027is\u0027 or \u0027not\u0027.","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"6e480118cd55af9328c4383dc6b3b31a6ba9e0af","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_b4af0529","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_badff967","updated":"2016-08-17 06:20:13.000000000","message":"If insist to remove nested if, we need to use below connector:\nforce_delete \u003d fencing_type !\u003d None and \u0027COMPUTE\u0027 in fencing_type","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"9f9223a745fab8aa0f07a842e119be179048d4f7","unresolved":false,"context_lines":[{"line_number":538,"context_line":"        recover_action \u003d pd.get(\u0027recover_action\u0027, \u0027RECREATE\u0027)"},{"line_number":539,"context_line":""},{"line_number":540,"context_line":"        force_delete \u003d False"},{"line_number":541,"context_line":"        if \u0027fencing\u0027 in pd:"},{"line_number":542,"context_line":"            fencing_type \u003d pd.get(\u0027fencing\u0027)"},{"line_number":543,"context_line":"            if \u0027COMPUTE\u0027 in fencing_type:"},{"line_number":544,"context_line":"                force_delete \u003d True"},{"line_number":545,"context_line":""},{"line_number":546,"context_line":"        reason \u003d _(\u0027Cluster recovery succeeded.\u0027)"},{"line_number":547,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_0a3edbb7","line":544,"range":{"start_line":541,"start_character":0,"end_line":544,"end_character":35},"in_reply_to":"3ac371cc_c45b1a2d","updated":"2016-08-16 14:19:29.000000000","message":"if the fencing_type is None, the suggested equation will return None.","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"}],"senlin/tests/unit/engine/actions/test_cluster_action.py":[{"author":{"_account_id":22998,"name":"XueFengLiu","email":"liu.xuefeng1@zte.com.cn","username":"sgfeng"},"change_message_id":"c5415cc68ea3f071f874945b3c24cce08c26135e","unresolved":false,"context_lines":[{"line_number":1433,"context_line":"            cause\u003dab.CAUSE_DERIVED,"},{"line_number":1434,"context_line":"            inputs\u003d{"},{"line_number":1435,"context_line":"                \u0027operation\u0027: \u0027RECREATE\u0027,"},{"line_number":1436,"context_line":"                \u0027force\u0027: False,"},{"line_number":1437,"context_line":"            }"},{"line_number":1438,"context_line":"        )"},{"line_number":1439,"context_line":"        mock_dep.assert_called_once_with(action.context, [\u0027NODE_ACTION_ID\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"9ad45d7e_e06696b9","line":1436,"range":{"start_line":1436,"start_character":30,"end_line":1436,"end_character":31},"updated":"2016-08-12 01:32:54.000000000","message":"Extra comma?Maybe it\u0027s not a problem,keep the unified style?\nAlso,line1307...","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":15857,"name":"Xinhui Li","email":"lxinhui@vmware.com","username":"Cindia-blue"},"change_message_id":"137029b59bc8971ce4c9f224695729510cf528b5","unresolved":false,"context_lines":[{"line_number":1433,"context_line":"            cause\u003dab.CAUSE_DERIVED,"},{"line_number":1434,"context_line":"            inputs\u003d{"},{"line_number":1435,"context_line":"                \u0027operation\u0027: \u0027RECREATE\u0027,"},{"line_number":1436,"context_line":"                \u0027force\u0027: False,"},{"line_number":1437,"context_line":"            }"},{"line_number":1438,"context_line":"        )"},{"line_number":1439,"context_line":"        mock_dep.assert_called_once_with(action.context, [\u0027NODE_ACTION_ID\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_33aa3671","line":1436,"range":{"start_line":1436,"start_character":30,"end_line":1436,"end_character":31},"in_reply_to":"3ac371cc_0661d639","updated":"2016-08-16 13:14:15.000000000","message":"Done","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"},{"author":{"_account_id":8246,"name":"Qiming Teng","email":"tengqm@outlook.com","username":"tengqm"},"change_message_id":"8ca0449b9da1aa8012d219ae301bb43edebdb50c","unresolved":false,"context_lines":[{"line_number":1433,"context_line":"            cause\u003dab.CAUSE_DERIVED,"},{"line_number":1434,"context_line":"            inputs\u003d{"},{"line_number":1435,"context_line":"                \u0027operation\u0027: \u0027RECREATE\u0027,"},{"line_number":1436,"context_line":"                \u0027force\u0027: False,"},{"line_number":1437,"context_line":"            }"},{"line_number":1438,"context_line":"        )"},{"line_number":1439,"context_line":"        mock_dep.assert_called_once_with(action.context, [\u0027NODE_ACTION_ID\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_0661d639","line":1436,"range":{"start_line":1436,"start_character":30,"end_line":1436,"end_character":31},"in_reply_to":"9ad45d7e_e06696b9","updated":"2016-08-16 02:17:26.000000000","message":"agree to consistency ...\n\nhowever, the convention is to leave the comma at the end of the line so next time when you add a new dict item, you only need to change one line instead of having to add a comma here.","commit_id":"8df7354f466fb706e90bfc9c6ed845992510767b"}]}
