def line_has_bad_flag()

in hack/verify-flags-underscore.py [0:0]


def line_has_bad_flag(line, flagre):
    results  = flagre.findall(line)
    for result in results:
        if not "_" in result:
            return False
        # this should exclude many cases where jinja2 templates use kube flags
        # as variables, except it uses _ for the variable name
        if "{% set" + result + "= \"" in line:
            return False
        if "pillar[" + result + "]" in line:
            return False
        if "grains" + result in line:
            return False
        # These are usually yaml definitions
        if result.endswith(":"):
            return False
         # something common in juju variables...
        if "template_data[" + result + "]" in line:
            return False
        return True
    return False