当前位置: 首页>>代码示例>>Python>>正文


Python Feedback.error方法代码示例

本文整理汇总了Python中feedback.Feedback.error方法的典型用法代码示例。如果您正苦于以下问题:Python Feedback.error方法的具体用法?Python Feedback.error怎么用?Python Feedback.error使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在feedback.Feedback的用法示例。


在下文中一共展示了Feedback.error方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: DevToolsDpkg

# 需要导入模块: from feedback import Feedback [as 别名]
# 或者: from feedback.Feedback import error [as 别名]
class DevToolsDpkg(DebPackage):
    """
    Class for managing packages via 'dpkg'
    """
    def __init__(self):
        
        # Get the apt cache
        self.cache = Cache()
        
        # Feedback module
        self.feedback = Feedback()
        
    def installdeb(self, pkg):
        """
        Install the Debian package.
        
        :param pkg: The path to the package to install
        :type  pkg: str
        """
        
        # Get the DebPackage object and the filename
        dpkg     = DebPackage(filename=pkg, cache=self.cache)
        pkg_name = basename(pkg)
            
        # Look for package conflicts
        if not dpkg.check_conflicts():
            self.feedback.block(dpkg.conflicts, 'CONFLICT')
            self.feedback.error('Cannot install package <{0}>, conflicts with:'.format(pkg_name))
            return False
        
        # Get any version in cache
        cache_version = dpkg.compare_to_version_in_cache()
        action        = 'Installed'
        
        # Not installed
        if cache_version == dpkg.VERSION_NONE:
            self.feedback.info('Package <{0}> not installed'.format(pkg_name))
            
        # Upgrading
        if cache_version == dpkg.VERSION_OUTDATED:
            self.feedback.info('Package <{0}> outdated, upgrading'.format(pkg_name))
            action = 'Updated'
            
        # Same version
        if cache_version == dpkg.VERSION_SAME:
            return self.feedback.info('Package <{0}> already installed'.format(pkg_name))
        
        # Installed is newer
        if cache_version == dpkg.VERSION_NEWER:
            return self.feedback.info('Package <{0}> has newer version installed'.format(pkg_name))
            
        # Install the package
        dpkg.install()
        self.feedback.success('{0}: {1}'.format(action, pkg_name))
开发者ID:pombredanne,项目名称:lense-devtools,代码行数:56,代码来源:dpkg.py

示例2: Feedback

# 需要导入模块: from feedback import Feedback [as 别名]
# 或者: from feedback.Feedback import error [as 别名]
#!/usr/bin/env python3
from sys import path
path.append('{PYTHON_PATH}')
from feedback import Feedback

# Create new instance
feedback = Feedback()

# Test basic messages
i_back = feedback.info('Testing information message')
s_back = feedback.success('Testing success message')
w_back = feedback.warn('Testing warning message')
e_back = feedback.error('Testing error message')

# Test user input
feedback.input('Ask the user for some data: ', key='key_one')
feedback.input('Ask the user a "y" or "n" question? (y/n): ', key='key_two', yes_no=True)
feedback.input('Ask the user for a password and confirm: ', key='key_three', secure=True, confirm=True)
feedback.input('This input has a default value (123): ', key='key_four', default=123)

# Test block display and response retrieval
feedback.block([
    'This is a block of indented text, and here is some stuff to look at:',
    'Response 1: {0}'.format(feedback.get_response('key_one')),
    'Response 2: {0}'.format(feedback.get_response('key_two')),
    'Response 3: {0}'.format(feedback.get_response('key_three')),
    'Response 4: {0}'.format(feedback.get_response('key_four')),
    'Info Returned: {0}'.format(i_back),
    'Success Returned: {0}'.format(s_back),
    'Warn Returned: {0}'.format(w_back),
    'Error Returned: {0}'.format(e_back),
开发者ID:djtaylor,项目名称:python-feedback,代码行数:33,代码来源:feedback.py3.py

示例3: _NGUtilService

# 需要导入模块: from feedback import Feedback [as 别名]
# 或者: from feedback.Feedback import error [as 别名]
class _NGUtilService(object):
    """
    Simple class wrapper for handling Linux services.
    """
    def __init__(self, name):
        
        # Service name
        self.name = name
        
        # Feedback handler
        self.feedback = Feedback(use_timestamp=True)
        
    def is_running(self):
        """
        Check if the service is running.
        """
        proc = Popen(['service', self.name, 'status'], stdout=PIPE, stderr=PIPE)
        out, err = proc.communicate()
        
        # Return the status
        return True if ('running' in out.rstrip()) else False
        
    def _do_service(self, state):
        """
        Wrapper for handling the service command argument.
        """
        proc = Popen(['service', self.name, state], stdout=PIPE, stderr=PIPE)
        out, err = proc.communicate()
        
        # Set the message prefix
        prefix = {
            'restart': 'Restarted',
            'stop':    'Stopped',
            'start':   'Started',
            'reload':  'Reloaded',
            'save':    'Saved'
        }
        
        # If error code returned
        if not proc.returncode == 0:
            self.feedback.error('Failed to {0} service \'{1}\': {2}'.format(state, self.name, err.rstrip()))
            return False
            
        # Service command success
        self.feedback.success('{0} \'{1}\' service...'.format(prefix[state], self.name))
        return True
        
    def _do_chkconfig(self, state):
        """
        Wrapper for running chkconfig.
        """
        proc = Popen(['chkconfig', self.name, state], stdout=PIPE, stderr=PIPE)
        out, err = proc.communicate()
        
        # State string
        state_str = ('enable', 'Enabled') if (state == 'on') else ('disable', 'Disabled')
        
        # Make sure the command succeeded
        if not proc.returncode == 0:
            self.feedback.error('Failed to {0} service: {1}, error={2}'.format(state_str[0], self.name, err.rstrip()))
            return False
            
        # Chkconfig command success
        self.feedback.success('{0} service: {1}'.format(state_str[1], self.name))
        return True
        
    def disable(self):
        """
        Disable the service.
        """
        self._do_chkconfig('off')
        
    def enable(self):
        """
        Enable the service.
        """
        self._do_chkconfig('on')
        
    def save(self):
        """
        Save the service (if the service supports this command).
        """
        self._do_service('save')
        
    def reload(self):
        """
        Reload the service.
        """
        self._do_service('reload')
        
    def stop(self):
        """
        Stop the service.
        """
        self._do_service('stop')
        
    def start(self):
        """
        Start the service.
        """
#.........这里部分代码省略.........
开发者ID:carriercomm,项目名称:ngutil,代码行数:103,代码来源:service.py

示例4: _NGUtilCommon

# 需要导入模块: from feedback import Feedback [as 别名]
# 或者: from feedback.Feedback import error [as 别名]
class _NGUtilCommon(object):
    """
    Common class for sharing methods and attributes between NGUtil classes.
    """
    def __init__(self):
        
        # Feedback handler
        self.feedback = Feedback(use_timestamp=True)
        
        # Data directory
        self._DATA  = '{0}/data'.format(__root__)
        
        # Template ID / file mappings
        self._TEMPLATES = {
            'FPM':      self._data_map('fpm.conf.template'),
            'NG_REPO':  self._data_map('nginx.repo.template'),
            'NG_CONF':  self._data_map('nginx.conf.template'),
            'NG_HTTP':  self._data_map('site.http.conf'),
            'NG_HTTPS': self._data_map('site.https.conf')
        }
        
    def die(self, msg, code=1):
        """
        Print on stderr and die.
        """
        self.feedback.error(msg)
        exit(code)
        
    def _data_map(self, FILE):
        """
        Map a file to the data directory.
        """
        return '{0}/{1}'.format(self._DATA, FILE)
        
    def mkpath(self, _path):
        """
        Extract the directory from a file name and make sure the path exists.
        """
        self.mkdir(path.dirname(_path))
        
    def mkfile(self, _path, contents=None, overwrite=False):
        """
        Make a new file and optionally write data to it.
        """
        if path.isfile(_path) and not overwrite:
            self.die('Cannot make file "{0}". Already exists and overwrite={1}'.format(_path, repr(overwrite)))
        
        # Make sure the directory exists
        self.mkpath(_path)
        
        # Make the file
        fh = open(_path, 'w')
        
        # If writing contents
        if contents:
            fh.write(contents)
        
        # Close the file
        fh.close()
        
        # Return the path
        return _path
        
    def mkdir(self, dir):
        """
        Make directory if it doesn't exist.
        """
        if not path.isdir(dir):
            makedirs(dir)
            self.feedback.success('Created directory: {0}'.format(dir))
        else:
            self.feedback.info('Directory \'{0}\' already exists, skipping...'.format(dir))
        
    def run_command(self, cmd, expects=0, shell=False, stdout=PIPE, stderr=PIPE):
        """
        Run a shell command with Popen
        """
        
        # If the command argument is a string
        if isinstance(cmd, str):
            cmd = cmd.split(' ')
        
        # Open the process
        try:
            proc = Popen(cmd, stdout=stdout, stderr=stderr, shell=shell)
            out, err = proc.communicate()
            
            # Make sure the expected return code is found
            if not proc.returncode == expects:
                self.die('Failed to run command \'{0}\', ERROR={1}'.format(str(cmd), err))
                
            # Return exit code / stdout / stderr
            return proc.returncode, out, err
        except Exception as e:
            self.die('Failed to run command \'{0}\': ERROR={1}'.format(str(cmd), str(e)))
开发者ID:carriercomm,项目名称:ngutil,代码行数:97,代码来源:common.py

示例5: DevToolsCommon

# 需要导入模块: from feedback import Feedback [as 别名]
# 或者: from feedback.Feedback import error [as 别名]
class DevToolsCommon(object):
    """
    Common class for the development buider modules.
    """
    def __init__(self):
        self.feedback  = Feedback()
        
        # Configuration / workspace / projects / disabled projects
        self.config    = self._get_config()
        self.workspace = self._get_workspace()
        self.projects  = self._get_projects()
        self.disabled  = self._get_disabled()
        
    def _get_config(self):
        """
        Look for a configuration at: /etc/lense_devtools/config.json
        
        :rtype: dict
        """
        config = '/etc/lense_devtools/config.json'
        if not path.isfile(config):
            raise Exception('Configuration file missing: <{0}> not found'.format(config))
        
        try:
            return json_loads(open(config, 'r').read())
        except Exception as e:
            self.die('Failed to parse <{0}>: {1}'.format(config, str(e.message)))
        
    def _get_disabled(self):
        """
        Return a list of disable projects.
        """
        return {} if not 'DISABLED' in self.config else self.config['DISABLED']
        
    def _get_projects(self):
        """
        Retrieve a dict of configured projects.
        
        :rtype: dict
        """
        if not 'PROJECTS' in self.config:
            self.die('Missing required <PROJECTS> key in: {0}'.format(self.config))
        
        # Projects must be a dict
        if not isinstance(self.config['PROJECTS'], dict):
            self.die('Required key <PROJECTS> must be a dict'.format(self.config))
        
        # Project validation manifest
        vattrs = '/usr/share/lense_devtools/project.json'
        
        # Try to load the validation manifest
        if not path.isfile(vattrs):
            self.die('Could not locate project attributes manifest: {0}'.format(vattrs))
        vattrs = json_loads(open(vattrs, 'r').read())
        
        # Validate projects
        for pk,pa in self.config['PROJECTS'].iteritems():
            if not pk in vattrs['supported']:
                self.die('Unsupported project: {0}'.format(pk))
                
            # Make sure required attributes are set
            for k in vattrs['attributes']['required']:
                if not k in pa:
                    self.die('Missing required project attribute <{0}> for <{1}>'.format(k, pk))
        
        # Return projects
        return self.config['PROJECTS']
        
    def _get_workspace(self):
        """
        Retrieve the devtools workspace path.
        
        :rtype: str
        """
        if not 'WORKSPACE' in self.config:
            self.die('Missing required <WORKSPACE> key in: {0}'.format(self.config))
        return self.mkdir(path.expanduser('~/{0}'.format(self.config['WORKSPACE'])))
        
    def validate_projects(self, projects):
        """
        Validate a list of projects to make sure they are supported.
        
        :param projects: A list of project names
        :type  projects: list
        :rtype: list
        """
        for project in projects:
            if not project in self.projects:
                self.die('Project <{0}> not in supported list: {1}'.format(project, ', '.join(self.projects.keys())))
        return projects
        
    def die(self, message='An error ocurred', code=1):
        """
        Print error and quit.
        
        :param message: The error message
        :type  message: str
        """
        self.feedback.error(message)
        exit(code)
#.........这里部分代码省略.........
开发者ID:pombredanne,项目名称:lense-devtools,代码行数:103,代码来源:common.py


注:本文中的feedback.Feedback.error方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。