#!/usr/bin/env python

import argparse
import logging
import os
import shutil
import sys

import buildcat

logging.basicConfig(level=logging.INFO)
log = logging.getLogger()
log.name = os.path.basename(sys.argv[0])

parser = argparse.ArgumentParser("Install buildcat integration files into the current directory.")
arguments = parser.parse_args()

buildcat_dir = os.path.dirname(buildcat.__file__)
integrations_dir = os.path.join(buildcat_dir, "integrations")
target_dir = os.getcwd()

log.info("Copying files from {}".format(integrations_dir))
for dirpath, dirnames, filenames in os.walk(integrations_dir):
    for filename in filenames:
        relative_path = os.path.join(os.path.basename(dirpath), filename)
        log.info("Copying {}".format(relative_path))
        if not os.path.exists(os.path.basename(dirpath)):
            os.makedirs(os.path.basename(dirpath))
        shutil.copy2(os.path.join(dirpath, filename), relative_path)
log.info("Installation complete.")
