)]}'
{"kayobe/plugins/action/kolla_ansible_host_vars.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    \"\"\""},{"line_number":24,"context_line":"    This class provides an Ansible action module that returns facts"},{"line_number":25,"context_line":"    representing host variables to be passed to Kolla Ansible."},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    TRANSFERS_FILES \u003d False"},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_4991da46","line":26,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: H404  multi line docstring should start without a leading new line","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":23,"context_line":"    \"\"\""},{"line_number":24,"context_line":"    This class provides an Ansible action module that returns facts"},{"line_number":25,"context_line":"    representing host variables to be passed to Kolla Ansible."},{"line_number":26,"context_line":"    \"\"\""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    TRANSFERS_FILES \u003d False"},{"line_number":29,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_29946636","line":26,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: H405  multi line docstring summary not separated with an empty line","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        for network in external_networks:"},{"line_number":68,"context_line":"            try:"},{"line_number":69,"context_line":"                iface \u003d self._get_external_interface(network[\"network\"],"},{"line_number":70,"context_line":"                                                    network[\"required\"])"},{"line_number":71,"context_line":"                if iface and iface not in external_interfaces:"},{"line_number":72,"context_line":"                    external_interfaces.append(iface)"},{"line_number":73,"context_line":"            except ConfigError as e:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_8997723a","line":70,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":112,"context_line":"        condition \u003d \"{{ \u0027%s\u0027 in network_interfaces }}\" % net_name"},{"line_number":113,"context_line":"        condition \u003d self._templar.template(condition)"},{"line_number":114,"context_line":"        if condition:"},{"line_number":115,"context_line":"            iface \u003d self._templar.template(\"{{ \u0027%s\u0027 | net_interface }}\" % net_name)"},{"line_number":116,"context_line":"            if iface:"},{"line_number":117,"context_line":"                # When these networks are VLANs, we need to use the"},{"line_number":118,"context_line":"                # underlying tagged bridge interface rather than the"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_699ade61","line":115,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: E501 line too long (83 \u003e 79 characters)","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":119,"context_line":"                # untagged interface. We therefore strip the .\u003cvlan\u003e suffix"},{"line_number":120,"context_line":"                # of the interface name. We use a union here as a single"},{"line_number":121,"context_line":"                # tagged interface may be shared between these networks."},{"line_number":122,"context_line":"                vlan \u003d self._templar.template(\"{{ \u0027%s\u0027 | net_vlan }}\" % net_name)"},{"line_number":123,"context_line":"                if vlan and iface.endswith(\".%s\" % vlan):"},{"line_number":124,"context_line":"                    iface \u003d iface.replace(\".%s\" % vlan, \"\")"},{"line_number":125,"context_line":"                return iface"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_c9a4caa8","line":122,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":134,"context_line":"    def _get_external_interface_facts(self, external_interfaces):"},{"line_number":135,"context_line":"        neutron_bridge_names \u003d []"},{"line_number":136,"context_line":"        neutron_external_interfaces \u003d []"},{"line_number":137,"context_line":"        bridge_suffix \u003d self._templar.template(\"{{ network_bridge_suffix_ovs }}\")"},{"line_number":138,"context_line":"        patch_prefix \u003d self._templar.template(\"{{ network_patch_prefix }}\")"},{"line_number":139,"context_line":"        patch_suffix \u003d self._templar.template(\"{{ network_patch_suffix_ovs }}\")"},{"line_number":140,"context_line":"        for interface in external_interfaces:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_a99fd64d","line":137,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: E501 line too long (81 \u003e 79 characters)","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":152,"context_line":"            neutron_external_interfaces.append(external_interface)"},{"line_number":153,"context_line":"        return {"},{"line_number":154,"context_line":"            \"kolla_neutron_bridge_names\": \",\".join(neutron_bridge_names),"},{"line_number":155,"context_line":"            \"kolla_neutron_external_interfaces\": \",\".join(neutron_external_interfaces),"},{"line_number":156,"context_line":"        }"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_09ab6274","line":155,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: E501 line too long (87 \u003e 79 characters)","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"}],"kayobe/tests/unit/plugins/action/test_kolla_ansible_host_vars.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"import copy"},{"line_number":16,"context_line":"import unittest"},{"line_number":17,"context_line":"from unittest import mock"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import jinja2"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_e9a54ea0","line":17,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: F401 \u0027mock\u0027 imported but unused","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"fd7c5db6cab7fc7b76b1ea90928a478466a58a4f","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    return [name for name in names"},{"line_number":37,"context_line":"            if (_net_interface(context, name) or \"\").startswith(\"br\")]"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    "},{"line_number":40,"context_line":"class FakeTemplar(object):"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def __init__(self, variables):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_49ba7ac0","line":39,"updated":"2020-08-10 18:28:03.000000000","message":"pep8: W293 blank line contains whitespace","commit_id":"39bb4d6988c7d0cc2a4fe0025afb8a092580e6e9"}]}
