Example #1
0
    def execute(self, ns, package, _type=None):
        properties = [
                ('Name'),
                ('Type', lambda i: software.FILE_TYPES[i.FileType]),
                ('FileSize', lambda i: i.FileSize),
                ('Passed', lambda i: len(i.FailedFlags) < 1)]
        if _type is not None:
            del properties[1]

        pkgs = list(software.find_package(ns, pkg_spec=package[0]))
        if len(pkgs) < 1:
            raise errors.LmiFailed(
                    'no package matching "%s" found' % package[0])
        if len(pkgs) > 1:
            LOG().warn('more than one package found for "%s": %s',
                    package[0], ', '.join(p.ElementName for p in pkgs))

        return ( properties
               , software.list_package_files(ns, pkgs[-1], file_type=_type))
Example #2
0
    def execute(self, ns, package, _type=None):
        properties = [('Name'),
                      ('Type', lambda i: software.FILE_TYPES[i.FileType]
                       if i.FileExists else 'Missing'),
                      ('FileSize', lambda i: i.FileSize),
                      ('Passed', lambda i: len(i.FailedFlags) < 1)]
        if _type is not None:
            del properties[1]

        pkgs = list(p.to_instance()
                    for p in software.find_package(ns, pkg_spec=package))
        pkgs = [p for p in pkgs if software.is_package_installed(p)]
        if len(pkgs) < 1:
            raise errors.LmiFailed('No package matching "%s" found.' % package)
        if len(pkgs) > 1:
            LOG().warn('More than one package found for "%s": %s', package,
                       ', '.join(p.ElementName for p in pkgs))

        return (properties,
                software.list_package_files(ns, pkgs[-1], file_type=_type))
Example #3
0
    def execute(self, ns, package, _type=None):
        properties = [
                ('Name'),
                ('Type', lambda i:
                         software.FILE_TYPES[i.FileType]
                    if   i.FileExists
                    else 'Missing'),
                ('FileSize', lambda i: i.FileSize),
                ('Passed', lambda i: len(i.FailedFlags) < 1)]
        if _type is not None:
            del properties[1]

        pkgs = list(p.to_instance() for p in software.find_package(
                ns, pkg_spec=package))
        pkgs = [p for p in pkgs if software.is_package_installed(p)]
        if len(pkgs) < 1:
            raise errors.LmiFailed(
                    'No package matching "%s" found.' % package)
        if len(pkgs) > 1:
            LOG().warn('More than one package found for "%s": %s', package,
                    ', '.join(p.ElementName for p in pkgs))

        return ( properties
               , software.list_package_files(ns, pkgs[-1], file_type=_type))