예제 #1
0
    def help(self):
        '''Return the help string of the task'''
        # This returns a help string for a given task of the form:
        #
        # ==================================================
        # <name>
        # ============================== (If supplied)
        # <docstring>
        # ============================== (If overrides other tasks)
        # Overrides <other task file>
        # ==============================
        # From <file> on <line>
        # ==============================
        # <name>(Argspec)
        result = ['=' * 50, self.name]

        # And the doc, if it exists
        if self.doc:
            result.extend(['=' * 30, self.doc])

        override = self.overrides
        while override:
            if isinstance(override, Shovel):
                result.append('Overrides module')
            else:
                result.append('Overrides %s' % override.file)
            override = override.overrides

        # Print where we read this function in from
        result.extend([
            '=' * 30,
            'From %s on line %i' % (self.file, self.line), '=' * 30,
            '%s%s' % (self.name, str(Args(self.spec)))
        ])
        return os.linesep.join(result)
예제 #2
0
파일: tasks.py 프로젝트: pmaccamp/shovel
 def dry(self, *args, **kwargs):
     '''Perform a dry-run of the task'''
     return 'Would have executed:\n%s%s' % (
         self.name, Args(self.spec).explain(*args, **kwargs))