view piecrust/processing/copy.py @ 1140:8e1a0b4d08c5 3.2.0

cm: Regenerate the CHANGELOG.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 20 May 2018 22:37:48 -0700
parents 4850f8c21b6e
children
line wrap: on
line source

import os.path
import shutil
import logging
from piecrust.processing.base import Processor, PRIORITY_LAST


logger = logging.getLogger(__name__)


class CopyFileProcessor(Processor):
    PROCESSOR_NAME = 'copy'

    def __init__(self):
        super(CopyFileProcessor, self).__init__()
        self.priority = PRIORITY_LAST

    def matches(self, path):
        return True

    def getOutputFilenames(self, filename):
        return [filename]

    def process(self, path, out_dir):
        out_path = os.path.join(out_dir, os.path.basename(path))
        logger.debug("Copying: %s -> %s" % (path, out_path))
        shutil.copyfile(path, out_path)
        return True