#!/usr/bin/env python

import sys
import os
import argparse

from jinjaninja.core import validate_template

def parse():
    parser = argparse.ArgumentParser()
    parser.add_argument('filenames', nargs='+', type=str)
    return parser.parse_args()

def show_errors(errors):
    for error in errors:
        print(error)

def main():
    args = parse()
    errors = []
    for filename in args.filenames:
        if os.path.isdir(filename):
            for root, dirs, files in os.walk(filename):
                for f in files:
                    errors += validate_template(os.path.join(root, f))
            continue
        errors += validate_template(filename)

    show_errors(errors)
    sys.exit(1 if errors else 0)

if __name__ == '__main__':
    main()
