)]}'
{"tripleo_ansible/ansible_plugins/filter/helpers.py":[{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"656d53e07e4723e3b09dc7fce28902bc06da255e","unresolved":false,"context_lines":[{"line_number":555,"context_line":"            nodes_data \u003d dict()"},{"line_number":556,"context_line":"            nodes_data[\u0027uuid\u0027] \u003d node[\u0027id\u0027]"},{"line_number":557,"context_line":"            properties \u003d node[\u0027properties\u0027]"},{"line_number":558,"context_line":"            caps \u003d properties.get(\u0027capabilities\u0027, \u0027\u0027)"},{"line_number":559,"context_line":"            capabilities_dict \u003d dict([key.split(\u0027:\u0027, 1) for key in caps.split(\u0027,\u0027)])"},{"line_number":560,"context_line":"            nodes_data[\u0027profile\u0027] \u003d capabilities_dict.get(\u0027profile\u0027)"},{"line_number":561,"context_line":"            nodes_datas.append(nodes_data)"}],"source_content_type":"text/x-python","patch_set":5,"id":"1f493fa4_ae2163fe","line":558,"range":{"start_line":558,"start_character":27,"end_line":558,"end_character":30},"updated":"2020-04-22 07:37:42.000000000","message":"tox -epy36 -vv   doesn\u0027t like that \n      File \"/home/zuul/src/opendev.org/openstack/tripleo-ansible/tripleo_ansible/ansible_plugins/filter/helpers.py\", line 558, in get_node_profile\n    caps \u003d properties.get(\u0027capabilities\u0027, \u0027\u0027)\n\n    AttributeError: \u0027str\u0027 object has no attribute \u0027get\u0027\n\n\nhttps://zuul.opendev.org/t/openstack/build/58150bfa7def492286fa0e3e0e4dd3a4","commit_id":"e1a63873ad3ac222873c8390bb21ec0021215551"},{"author":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"change_message_id":"7c55db8937f3284cac975d441fcdef729d9e8b95","unresolved":false,"context_lines":[{"line_number":555,"context_line":"            nodes_data \u003d dict()"},{"line_number":556,"context_line":"            nodes_data[\u0027uuid\u0027] \u003d node[\u0027id\u0027]"},{"line_number":557,"context_line":"            properties \u003d node[\u0027properties\u0027]"},{"line_number":558,"context_line":"            caps \u003d properties.get(\u0027capabilities\u0027, \u0027\u0027)"},{"line_number":559,"context_line":"            capabilities_dict \u003d dict([key.split(\u0027:\u0027, 1) for key in caps.split(\u0027,\u0027)])"},{"line_number":560,"context_line":"            nodes_data[\u0027profile\u0027] \u003d capabilities_dict.get(\u0027profile\u0027)"},{"line_number":561,"context_line":"            nodes_datas.append(nodes_data)"}],"source_content_type":"text/x-python","patch_set":5,"id":"1f493fa4_556487e4","line":558,"range":{"start_line":558,"start_character":27,"end_line":558,"end_character":30},"in_reply_to":"1f493fa4_ae2163fe","updated":"2020-04-23 14:09:54.000000000","message":"Done","commit_id":"e1a63873ad3ac222873c8390bb21ec0021215551"},{"author":{"_account_id":8833,"name":"Rabi Mishra","email":"ramishra@redhat.com","username":"rabi"},"change_message_id":"3a0b0aacacf7ca0d7f7768dcb4fcac03399aaca1","unresolved":false,"context_lines":[{"line_number":486,"context_line":""},{"line_number":487,"context_line":"    @staticmethod"},{"line_number":488,"context_line":"    def get_filtered_resource_chains(resources, role_name):"},{"line_number":489,"context_line":"        \"\"\"Returned filtered service chains"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"        :param resources: Dictionary of resources"},{"line_number":492,"context_line":"        :type resources: Dictionary"}],"source_content_type":"text/x-python","patch_set":6,"id":"1f493fa4_60f8a848","line":489,"range":{"start_line":489,"start_character":12,"end_line":489,"end_character":43},"updated":"2020-04-27 10:03:17.000000000","message":"This and the above two methods have the same description and look quite confusing.\n\nThis looks like returning the RoleServiceChain resource for a role name that has the ResourceChains in value[\u0027resources\u0027]\n\nIt would be good to have some relevant examples in tests.","commit_id":"fa286ef964e6f4c4df4daa72d8231d3d959403da"},{"author":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"change_message_id":"a40bf1439ae5298ca03a65fc1d5899a33b802b5c","unresolved":false,"context_lines":[{"line_number":486,"context_line":""},{"line_number":487,"context_line":"    @staticmethod"},{"line_number":488,"context_line":"    def get_filtered_resource_chains(resources, role_name):"},{"line_number":489,"context_line":"        \"\"\"Returned filtered service chains"},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"        :param resources: Dictionary of resources"},{"line_number":492,"context_line":"        :type resources: Dictionary"}],"source_content_type":"text/x-python","patch_set":6,"id":"1f493fa4_6d7b7cbd","line":489,"range":{"start_line":489,"start_character":12,"end_line":489,"end_character":43},"in_reply_to":"1f493fa4_60f8a848","updated":"2020-04-27 12:55:12.000000000","message":"Done","commit_id":"fa286ef964e6f4c4df4daa72d8231d3d959403da"},{"author":{"_account_id":10969,"name":"Shnaidman Sagi (Sergey)","display_name":"Shnaidman Sagi","email":"sshnaidm@redhat.com","username":"sergsh"},"change_message_id":"112cad211d8dc050ad84d411903d02865ae95370","unresolved":false,"context_lines":[{"line_number":446,"context_line":"            return_list.append({k: v})"},{"line_number":447,"context_line":"        return return_list"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @staticmethod"},{"line_number":450,"context_line":"    def get_filtered_service_chain(resource_chains, role_chain_resources):"},{"line_number":451,"context_line":"        \"\"\"Returned filtered service chains."},{"line_number":452,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1f493fa4_68788ac3","line":449,"range":{"start_line":449,"start_character":3,"end_line":449,"end_character":17},"updated":"2020-04-27 13:11:03.000000000","message":"any reason to use staticmethod in these filters in particular? Just curios","commit_id":"eaa10c1b5bdb4379d83615ef7c0f3165a6cea663"},{"author":{"_account_id":3153,"name":"Emilien Macchi","email":"emilien@redhat.com","username":"emilienm"},"change_message_id":"043012d410ace7022cecc7ea54e365b29a5505bc","unresolved":false,"context_lines":[{"line_number":446,"context_line":"            return_list.append({k: v})"},{"line_number":447,"context_line":"        return return_list"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @staticmethod"},{"line_number":450,"context_line":"    def get_filtered_service_chain(resource_chains, role_chain_resources):"},{"line_number":451,"context_line":"        \"\"\"Returned filtered service chains."},{"line_number":452,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1f493fa4_09673ebf","line":449,"range":{"start_line":449,"start_character":3,"end_line":449,"end_character":17},"in_reply_to":"1f493fa4_68788ac3","updated":"2020-04-27 19:45:23.000000000","message":"i asked the same and there is no particular reason. Just some best practice in python i guess.","commit_id":"eaa10c1b5bdb4379d83615ef7c0f3165a6cea663"},{"author":{"_account_id":7353,"name":"Kevin Carter","email":"kevin@cloudnull.com","username":"cloudnull"},"change_message_id":"d966c90e668f77a2cb5554202c651ba3d1582f4c","unresolved":false,"context_lines":[{"line_number":446,"context_line":"            return_list.append({k: v})"},{"line_number":447,"context_line":"        return return_list"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @staticmethod"},{"line_number":450,"context_line":"    def get_filtered_service_chain(resource_chains, role_chain_resources):"},{"line_number":451,"context_line":"        \"\"\"Returned filtered service chains."},{"line_number":452,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"1f493fa4_a9fa8ab9","line":449,"range":{"start_line":449,"start_character":3,"end_line":449,"end_character":17},"in_reply_to":"1f493fa4_68788ac3","updated":"2020-04-27 19:46:48.000000000","message":"none of these methods use `self`.","commit_id":"eaa10c1b5bdb4379d83615ef7c0f3165a6cea663"}]}
