def METHOD_NAME(template_name, new_root, config, read=False):
    files = []
    template_root = path_join(TEMPLATES_DIR, template_name)
    if not dir_exists(template_root):
        return files
    for root, _, template_files in os.walk(template_root):
        for template_file in template_files:
            if not template_file.endswith(('.pyc', '.pyo')):
                if template_file == 'README.md' and config.get('support_type') in ('partner', 'contrib'):
                    # Custom README for the marketplace/partner support_type integrations
                    if config.get('support_type') == 'partner':
                        template_path = path_join(TEMPLATES_DIR, 'marketplace/', 'README.md')
                        file_path = path_join(config.get('check_name'), "README.md")
                    # Custom README for tile apps
                    elif config.get('support_type') == 'contrib':
                        template_path = path_join(TEMPLATES_DIR, 'tile/{check_name}', 'README.md')
                        file_path = path_join(config.get('check_name'), "README.md")
                    else:
                        template_path = path_join(root, template_file)
                        file_path = template_path.replace(template_root, '')
                # Use a special readme file for media carousel information
                # .gitkeep currently only used for images, but double check anyway
                elif template_file == '.gitkeep' and 'images' in root:
                    image_guidelines = 'IMAGES_README.md'
                    template_path = path_join(TEMPLATES_DIR, 'marketplace/', image_guidelines)
                    file_path = path_join(config.get('check_name'), "images", image_guidelines)
                else:
                    template_path = path_join(root, template_file)
                    file_path = os.path.relpath(template_path, template_root)
                file_path = os.path.join(new_root, file_path.format(**config))
                files.append(File(file_path, template_path, config, read=read))
    return files