Пример #1
0
def __virtual__():
    '''
    Only works on Windows systems with WMI and WinAPI
    '''
    if not salt.utils.is_windows():
        return False, 'win_status.py: Requires Windows'

    if not HAS_WMI:
        return False, 'win_status.py: Requires WMI and WinAPI'

    # Namespace modules from `status.py`
    global ping_master, time_
    ping_master = _namespaced_function(ping_master, globals())
    time_ = _namespaced_function(time_, globals())

    return __virtualname__
Пример #2
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if salt.utils.is_windows():
        if HAS_WINDOWS_MODULES:
            global check_perms, get_managed, makedirs_perms, manage_file
            global source_list, mkdir, __clean_tmp, makedirs, file_exists

            check_perms = _namespaced_function(check_perms, globals())
            get_managed = _namespaced_function(get_managed, globals())
            makedirs_perms = _namespaced_function(makedirs_perms, globals())
            makedirs = _namespaced_function(makedirs, globals())
            manage_file = _namespaced_function(manage_file, globals())
            source_list = _namespaced_function(source_list, globals())
            mkdir = _namespaced_function(mkdir, globals())
            file_exists = _namespaced_function(file_exists, globals())
            __clean_tmp = _namespaced_function(__clean_tmp, globals())

            return 'file'
        log.warn(salt.utils.required_modules_error(__file__, __doc__))
    return False
Пример #3
0
 def parse_rpm(path):
     try:
         from salt.modules.yumpkg5 import __QUERYFORMAT, _parse_pkginfo
         from salt.utils import namespaced_function as _namespaced_function
         _parse_pkginfo = _namespaced_function(_parse_pkginfo, globals())
     except ImportError:
         log.critical('Error importing helper functions. This is almost '
                      'certainly a bug.')
         return '', ''
     pkginfo = __salt__['cmd.run_all'](
         'rpm -qp --queryformat {0!r} {1!r}'.format(__QUERYFORMAT, path)
     ).get('stdout', '').strip()
     pkginfo = _parse_pkginfo(pkginfo)
     if pkginfo is None:
         return '', ''
     else:
         return pkginfo.name, pkginfo.version
Пример #4
0
 def parse_rpm(path):
     try:
         import collections  # needed by _parse_pkginfo, DO NOT REMOVE
         from salt.modules.yumpkg5 import __QUERYFORMAT, _parse_pkginfo
         from salt.utils import namespaced_function as _namespaced_function
         _parse_pkginfo = _namespaced_function(_parse_pkginfo, globals())
     except ImportError:
         log.critical('Error importing helper functions. This is almost '
                      'certainly a bug.')
         return '', ''
     pkginfo = __salt__['cmd.run_all'](
         'rpm -qp --queryformat {0!r} {1!r}'.format(
             __QUERYFORMAT, path)).get('stdout', '').strip()
     pkginfo = _parse_pkginfo(pkginfo)
     if pkginfo is None:
         return '', ''
     else:
         return pkginfo.name, pkginfo.version
Пример #5
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if salt.utils.is_windows():
        if HAS_WINDOWS_MODULES:
            global check_perms, get_managed, makedirs_perms, manage_file
            global source_list, mkdir, __clean_tmp, makedirs

            check_perms = _namespaced_function(check_perms, globals())
            get_managed = _namespaced_function(get_managed, globals())
            makedirs_perms = _namespaced_function(makedirs_perms, globals())
            makedirs = _namespaced_function(makedirs, globals())
            manage_file = _namespaced_function(manage_file, globals())
            source_list = _namespaced_function(source_list, globals())
            mkdir = _namespaced_function(mkdir, globals())
            __clean_tmp = _namespaced_function(__clean_tmp, globals())

            return __virtualname__
        log.warn(salt.utils.required_modules_error(__file__, __doc__))
    return False
Пример #6
0
 def parse_rpm_redhat(path):
     try:
         from salt.modules.yumpkg import __QUERYFORMAT, _parse_pkginfo
         from salt.utils import namespaced_function as _namespaced_function
         _parse_pkginfo = _namespaced_function(_parse_pkginfo, globals())
     except ImportError:
         log.critical('Error importing helper functions. This is almost '
                      'certainly a bug.')
         return '', ''
     pkginfo = __salt__['cmd.run_stdout'](
         'rpm -qp --queryformat {0!r} {1!r}'.format(
             # Binary packages have no REPOID, replace this so the rpm
             # command does not fail with "invalid tag" error
             __QUERYFORMAT.replace('%{REPOID}', 'binarypkg'),
             path)).strip()
     pkginfo = _parse_pkginfo(pkginfo)
     if pkginfo is None:
         return '', ''
     else:
         return pkginfo.name, pkginfo.version
Пример #7
0
    def parse_rpm(path):
        try:
            import collections  # needed by _parse_pkginfo, DO NOT REMOVE
            from salt.modules.yumpkg5 import __QUERYFORMAT, _parse_pkginfo
            from salt.utils import namespaced_function as _namespaced_function

            _parse_pkginfo = _namespaced_function(_parse_pkginfo, globals())
        except ImportError:
            log.critical("Error importing helper functions. This is almost " "certainly a bug.")
            return "", ""
        pkginfo = (
            __salt__["cmd.run_all"]("rpm -qp --queryformat {0!r} {1!r}".format(__QUERYFORMAT, path))
            .get("stdout", "")
            .strip()
        )
        pkginfo = _parse_pkginfo(pkginfo)
        if pkginfo is None:
            return "", ""
        else:
            return pkginfo.name, pkginfo.version
Пример #8
0
def __virtual__():
    '''
    Only used if yum_provider is set to 'yumpkg_api'
    '''
    if __opts__.get('yum_provider') == 'yumpkg_api':
        global _parse_repo_file, list_repos, mod_repo, get_repo
        global del_repo, expand_repo_def
        _parse_repo_file = _namespaced_function(_parse_repo_file, globals())
        list_repos = _namespaced_function(list_repos, globals())
        mod_repo = _namespaced_function(mod_repo, globals())
        get_repo = _namespaced_function(get_repo, globals())
        del_repo = _namespaced_function(del_repo, globals())
        expand_repo_def = _namespaced_function(expand_repo_def, globals())
        return __virtualname__
    return False
Пример #9
0
def __virtual__():
    '''
    Only used if yum_provider is set to 'yumpkg_api'
    '''
    if __opts__.get('yum_provider') == 'yumpkg_api':
        global _parse_repo_file, list_repos, mod_repo, get_repo
        global del_repo, expand_repo_def
        _parse_repo_file = _namespaced_function(_parse_repo_file, globals())
        list_repos = _namespaced_function(list_repos, globals())
        mod_repo = _namespaced_function(mod_repo, globals())
        get_repo = _namespaced_function(get_repo, globals())
        del_repo = _namespaced_function(del_repo, globals())
        expand_repo_def = _namespaced_function(expand_repo_def, globals())
        return __virtualname__
    return False
Пример #10
0
 def parse_rpm(path):
     try:
         from salt.modules.yumpkg5 import __QUERYFORMAT, _parse_pkginfo
         from salt.utils import namespaced_function as _namespaced_function
         _parse_pkginfo = _namespaced_function(_parse_pkginfo, globals())
     except ImportError:
         log.critical('Error importing helper functions. This is almost '
                      'certainly a bug.')
         return '', ''
     pkginfo = __salt__['cmd.run_stdout'](
         'rpm -qp --queryformat {0!r} {1!r}'.format(
             # Binary packages have no REPOID, replace this so the rpm
             # command does not fail with "invalid tag" error
             __QUERYFORMAT.replace('%{REPOID}', 'binarypkg'),
             path.encode('ascii','ignore')
         )
     ).strip()
     pkginfo = _parse_pkginfo(pkginfo)
     if pkginfo is None:
         return '', ''
     else:
         return pkginfo.name, pkginfo.version
Пример #11
0
def __virtual__():
    '''
    Confine this module to yum based systems
    '''
    # Work only on RHEL/Fedora based distros with python 2.5 and below
    try:
        os_grain = __grains__['os']
        os_family = __grains__['os_family']
        os_major_version = int(__grains__['osrelease'].split('.')[0])
    except Exception:
        return False

    valid = False
    # Fedora <= 10 need to use this module
    if os_grain == 'Fedora' and os_major_version < 11:
        valid = True
    # XCP == 1.x uses a CentOS 5 base
    elif os_grain == 'XCP':
        if os_major_version == 1:
            valid = True
    # XenServer 6 and earlier uses a CentOS 5 base
    elif os_grain == 'XenServer':
        if os_major_version <= 6:
            valid = True
    elif os_grain == 'Amazon':
        valid = True
    else:
        # RHEL <= 5 and all variants need to use this module
        if os_family == 'RedHat' and os_major_version <= 5:
            valid = True
    if valid:
        global mod_repo, _parse_repo_file, list_repos, get_repo
        global expand_repo_def, del_repo
        mod_repo = _namespaced_function(mod_repo, globals())
        _parse_repo_file = _namespaced_function(_parse_repo_file, globals())
        list_repos = _namespaced_function(list_repos, globals())
        get_repo = _namespaced_function(get_repo, globals())
        expand_repo_def = _namespaced_function(expand_repo_def, globals())
        del_repo = _namespaced_function(del_repo, globals())
        return 'pkg'
    return False
Пример #12
0
def __virtual__():
    '''
    Confine this module to yum based systems
    '''
    # Work only on RHEL/Fedora based distros with python 2.5 and below
    try:
        os_grain = __grains__['os']
        os_family = __grains__['os_family']
        os_major_version = int(__grains__['osrelease'].split('.')[0])
    except Exception:
        return False

    valid = False
    # Fedora <= 10 need to use this module
    if os_grain == 'Fedora' and os_major_version < 11:
        valid = True
    # XCP == 1.x uses a CentOS 5 base
    elif os_grain == 'XCP':
        if os_major_version == 1:
            valid = True
    # XenServer 6 and earlier uses a CentOS 5 base
    elif os_grain == 'XenServer':
        if os_major_version <= 6:
            valid = True
    else:
        # RHEL <= 5 and all variants need to use this module
        if os_family == 'RedHat' and os_major_version <= 5:
            valid = True
    if valid:
        global mod_repo, _parse_repo_file, list_repos, get_repo
        global expand_repo_def, del_repo
        mod_repo = _namespaced_function(mod_repo, globals())
        _parse_repo_file = _namespaced_function(_parse_repo_file, globals())
        list_repos = _namespaced_function(list_repos, globals())
        get_repo = _namespaced_function(get_repo, globals())
        expand_repo_def = _namespaced_function(expand_repo_def, globals())
        del_repo = _namespaced_function(del_repo, globals())
        return __virtualname__
    return False
Пример #13
0
      pkg.installed
'''

# Import python libs
import logging
import os
import re

# Import salt libs
import salt.utils
from salt.utils import namespaced_function as _namespaced_function
from salt._compat import string_types
from salt.exceptions import CommandExecutionError, MinionError
from salt.modules.pkg_resource import _repack_pkgs

_repack_pkgs = _namespaced_function(_repack_pkgs, globals())

if salt.utils.is_windows():
    from salt.modules.win_pkg import _get_package_info
    from salt.modules.win_pkg import get_repo_data
    from salt.modules.win_pkg import _get_latest_pkg_version
    from salt.modules.win_pkg import _reverse_cmp_pkg_versions
    _get_package_info = _namespaced_function(_get_package_info, globals())
    get_repo_data = _namespaced_function(get_repo_data, globals())
    _get_latest_pkg_version = \
        _namespaced_function(_get_latest_pkg_version, globals())
    _reverse_cmp_pkg_versions = \
        _namespaced_function(_reverse_cmp_pkg_versions, globals())
    # The following imports are used by the namespaced win_pkg funcs
    # and need to be included in their globals.
    # pylint: disable=W0611
Пример #14
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if not salt.utils.is_windows():
        return False, "Module win_network: Only available on Windows"

    if not HAS_DEPENDENCIES:
        return False, "Module win_network: Missing dependencies"

    global wol, get_hostname, interface, interface_ip, subnets6, ip_in_subnet
    global convert_cidr, calc_net, get_fqdn, ifacestartswith, iphexval

    wol = _namespaced_function(wol, globals())
    get_hostname = _namespaced_function(get_hostname, globals())
    interface = _namespaced_function(interface, globals())
    interface_ip = _namespaced_function(interface_ip, globals())
    subnets6 = _namespaced_function(subnets6, globals())
    ip_in_subnet = _namespaced_function(ip_in_subnet, globals())
    convert_cidr = _namespaced_function(convert_cidr, globals())
    calc_net = _namespaced_function(calc_net, globals())
    get_fqdn = _namespaced_function(get_fqdn, globals())
    ifacestartswith = _namespaced_function(ifacestartswith, globals())
    iphexval = _namespaced_function(iphexval, globals())

    return __virtualname__
Пример #15
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if salt.utils.is_windows():
        if HAS_WINDOWS_MODULES:
            global check_perms, get_managed, makedirs_perms, manage_file
            global source_list, mkdir, __clean_tmp, makedirs, file_exists
            global check_managed, check_file_meta, remove, append
            global directory_exists, patch, sed_contains, touch, contains
            global contains_regex, contains_regex_multiline, contains_glob
            global sed, find, psed, get_sum, check_hash, get_hash
            global uncomment, comment, get_diff
            global access, copy, readdir, rmdir, truncate

            remove = _namespaced_function(remove, globals())
            append = _namespaced_function(append, globals())
            check_perms = _namespaced_function(check_perms, globals())
            get_managed = _namespaced_function(get_managed, globals())
            check_managed = _namespaced_function(check_managed, globals())
            check_file_meta = _namespaced_function(check_file_meta, globals())
            makedirs_perms = _namespaced_function(makedirs_perms, globals())
            makedirs = _namespaced_function(makedirs, globals())
            manage_file = _namespaced_function(manage_file, globals())
            source_list = _namespaced_function(source_list, globals())
            mkdir = _namespaced_function(mkdir, globals())
            file_exists = _namespaced_function(file_exists, globals())
            __clean_tmp = _namespaced_function(__clean_tmp, globals())
            directory_exists = _namespaced_function(directory_exists,
                                                    globals())
            patch = _namespaced_function(patch, globals())
            sed_contains = _namespaced_function(sed_contains, globals())
            touch = _namespaced_function(touch, globals())
            contains = _namespaced_function(contains, globals())
            contains_regex = _namespaced_function(contains_regex, globals())
            contains_regex_multiline = _namespaced_function(
                contains_regex_multiline, globals())
            contains_glob = _namespaced_function(contains_glob, globals())
            sed = _namespaced_function(sed, globals())
            find = _namespaced_function(find, globals())
            psed = _namespaced_function(psed, globals())
            get_sum = _namespaced_function(get_sum, globals())
            check_hash = _namespaced_function(check_hash, globals())
            get_hash = _namespaced_function(get_hash, globals())
            uncomment = _namespaced_function(uncomment, globals())
            comment = _namespaced_function(comment, globals())
            get_diff = _namespaced_function(get_diff, globals())
            access = _namespaced_function(access, globals())
            copy = _namespaced_function(copy, globals())
            readdir = _namespaced_function(readdir, globals())
            rmdir = _namespaced_function(rmdir, globals())
            truncate = _namespaced_function(truncate, globals())

            return __virtualname__
        log.warn(salt.utils.required_modules_error(__file__, __doc__))
    return False
Пример #16
0
import logging
import os
import re

# Import salt libs
import salt.utils
from salt.exceptions import CommandExecutionError
from salt.modules.pkg_resource import _repack_pkgs

if salt.utils.is_windows():
    from salt.utils import namespaced_function as _namespaced_function
    from salt.modules.win_pkg import _get_package_info
    from salt.modules.win_pkg import get_repo_data
    from salt.modules.win_pkg import _get_latest_pkg_version
    from salt.modules.win_pkg import _reverse_cmp_pkg_versions
    _get_package_info = _namespaced_function(_get_package_info, globals())
    get_repo_data = _namespaced_function(get_repo_data, globals())
    _get_latest_pkg_version = \
            _namespaced_function(_get_latest_pkg_version, globals())
    _reverse_cmp_pkg_versions = \
            _namespaced_function(_reverse_cmp_pkg_versions, globals())
    # The following imports are used by the namespaced win_pkg funcs
    # and need to be included in their globals.
    import msgpack
    from distutils.version import LooseVersion  # pylint: disable=E0611,F0401

log = logging.getLogger(__name__)


def __virtual__():
    '''
Пример #17
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if salt.utils.is_windows():
        if HAS_WINDOWS_MODULES:
            global check_perms, get_managed, makedirs_perms, manage_file
            global source_list, mkdir, __clean_tmp, makedirs_, file_exists
            global check_managed, check_managed_changes, check_file_meta
            global remove, append, _error, directory_exists, touch, contains
            global contains_regex, contains_regex_multiline, contains_glob
            global find, psed, get_sum, check_hash, get_hash, delete_backup
            global get_diff, _get_flags, extract_hash, comment_line
            global access, copy, readdir, rmdir, truncate, replace, search
            global _binary_replace, _get_bkroot, list_backups, restore_backup
            global blockreplace, prepend, seek_read, seek_write, rename, lstat
            global write, pardir, join, _add_flags
            global path_exists_glob, comment, uncomment, _mkstemp_copy

            replace = _namespaced_function(replace, globals())
            search = _namespaced_function(search, globals())
            _get_flags = _namespaced_function(_get_flags, globals())
            _binary_replace = _namespaced_function(_binary_replace, globals())
            _error = _namespaced_function(_error, globals())
            _get_bkroot = _namespaced_function(_get_bkroot, globals())
            list_backups = _namespaced_function(list_backups, globals())
            restore_backup = _namespaced_function(restore_backup, globals())
            delete_backup = _namespaced_function(delete_backup, globals())
            extract_hash = _namespaced_function(extract_hash, globals())
            remove = _namespaced_function(remove, globals())
            append = _namespaced_function(append, globals())
            check_perms = _namespaced_function(check_perms, globals())
            get_managed = _namespaced_function(get_managed, globals())
            check_managed = _namespaced_function(check_managed, globals())
            check_managed_changes = _namespaced_function(check_managed_changes, globals())
            check_file_meta = _namespaced_function(check_file_meta, globals())
            makedirs_perms = _namespaced_function(makedirs_perms, globals())
            makedirs_ = _namespaced_function(makedirs_, globals())
            manage_file = _namespaced_function(manage_file, globals())
            source_list = _namespaced_function(source_list, globals())
            mkdir = _namespaced_function(mkdir, globals())
            file_exists = _namespaced_function(file_exists, globals())
            __clean_tmp = _namespaced_function(__clean_tmp, globals())
            directory_exists = _namespaced_function(directory_exists, globals())
            touch = _namespaced_function(touch, globals())
            contains = _namespaced_function(contains, globals())
            contains_regex = _namespaced_function(contains_regex, globals())
            contains_regex_multiline = _namespaced_function(contains_regex_multiline, globals())
            contains_glob = _namespaced_function(contains_glob, globals())
            find = _namespaced_function(find, globals())
            psed = _namespaced_function(psed, globals())
            get_sum = _namespaced_function(get_sum, globals())
            check_hash = _namespaced_function(check_hash, globals())
            get_hash = _namespaced_function(get_hash, globals())
            get_diff = _namespaced_function(get_diff, globals())
            access = _namespaced_function(access, globals())
            copy = _namespaced_function(copy, globals())
            readdir = _namespaced_function(readdir, globals())
            rmdir = _namespaced_function(rmdir, globals())
            truncate = _namespaced_function(truncate, globals())
            blockreplace = _namespaced_function(blockreplace, globals())
            prepend = _namespaced_function(prepend, globals())
            seek_read = _namespaced_function(seek_read, globals())
            seek_write = _namespaced_function(seek_write, globals())
            rename = _namespaced_function(rename, globals())
            lstat = _namespaced_function(lstat, globals())
            path_exists_glob = _namespaced_function(path_exists_glob, globals())
            write = _namespaced_function(write, globals())
            pardir = _namespaced_function(pardir, globals())
            join = _namespaced_function(join, globals())
            comment = _namespaced_function(comment, globals())
            uncomment = _namespaced_function(uncomment, globals())
            comment_line = _namespaced_function(comment_line, globals())
            _mkstemp_copy = _namespaced_function(_mkstemp_copy, globals())
            _add_flags = _namespaced_function(_add_flags, globals())

            return __virtualname__
    return False
Пример #18
0
def __virtual__():
    '''
    Only works on Windows systems
    '''
    if salt.utils.is_windows():
        if HAS_WINDOWS_MODULES:
            global check_perms, get_managed, makedirs_perms, manage_file
            global source_list, mkdir, __clean_tmp, makedirs, file_exists
            global check_managed, check_file_meta, remove, append
            global directory_exists, patch, sed_contains, touch, contains
            global contains_regex, contains_regex_multiline, contains_glob
            global sed, find, psed, get_sum, check_hash, get_hash
            global uncomment, comment, get_diff
            global access, copy, readdir, rmdir, truncate

            remove = _namespaced_function(remove, globals())
            append = _namespaced_function(append, globals())
            check_perms = _namespaced_function(check_perms, globals())
            get_managed = _namespaced_function(get_managed, globals())
            check_managed = _namespaced_function(check_managed, globals())
            check_file_meta = _namespaced_function(check_file_meta, globals())
            makedirs_perms = _namespaced_function(makedirs_perms, globals())
            makedirs = _namespaced_function(makedirs, globals())
            manage_file = _namespaced_function(manage_file, globals())
            source_list = _namespaced_function(source_list, globals())
            mkdir = _namespaced_function(mkdir, globals())
            file_exists = _namespaced_function(file_exists, globals())
            __clean_tmp = _namespaced_function(__clean_tmp, globals())
            directory_exists = _namespaced_function(directory_exists, globals())
            patch = _namespaced_function(patch, globals())
            sed_contains = _namespaced_function(sed_contains, globals())
            touch = _namespaced_function(touch, globals())
            contains = _namespaced_function(contains, globals())
            contains_regex = _namespaced_function(contains_regex, globals())
            contains_regex_multiline = _namespaced_function(contains_regex_multiline, globals())
            contains_glob = _namespaced_function(contains_glob, globals())
            sed = _namespaced_function(sed, globals())
            find = _namespaced_function(find, globals())
            psed = _namespaced_function(psed, globals())
            get_sum = _namespaced_function(get_sum, globals())
            check_hash = _namespaced_function(check_hash, globals())
            get_hash = _namespaced_function(get_hash, globals())
            uncomment = _namespaced_function(uncomment, globals())
            comment = _namespaced_function(comment, globals())
            get_diff = _namespaced_function(get_diff, globals())
            access = _namespaced_function(access, globals())
            copy = _namespaced_function(copy, globals())
            readdir = _namespaced_function(readdir, globals())
            rmdir = _namespaced_function(rmdir, globals())
            truncate = _namespaced_function(truncate, globals())

            return __virtualname__
    return False