Exemplo n.º 1
0
    def test_discover_version(self):
        """
        Test call to __discover_version
        when using different versions
        """
        version = {
            ("3000", None): {
                (b"v3000.0rc2-12-g44fe283a77\n", "3000rc2-12-g44fe283a77"),
                (b"v3000", "3000"),
                (b"1234567", "3000-n/a-1234567"),
            },
            (2019, 2): {
                (b"v2019.2.0rc2-12-g44fe283a77\n",
                 "2019.2.0rc2-12-g44fe283a77"),
                (b"v2019.2.0", "2019.2.0"),
                (b"afc9830198dj", "2019.2.0-n/a-afc9830198dj"),
            },
        }
        for maj_min, test_v in version.items():
            for tag_ver, exp in version[maj_min]:
                salt_ver = SaltStackVersion(major=maj_min[0],
                                            minor=maj_min[1],
                                            bugfix=None)
                attrs = {
                    "communicate.return_value": (tag_ver, b""),
                    "returncode.return_value": 0,
                }
                proc_ret = MagicMock(**attrs)
                proc_mock = patch("subprocess.Popen", return_value=proc_ret)
                patch_os = patch("os.path.exists", return_value=True)

                with proc_mock, patch_os:
                    ret = getattr(salt.version, "__discover_version")(salt_ver)
                assert ret == exp
Exemplo n.º 2
0
    def test_version_repr(self):
        """
        Test SaltStackVersion repr for both date
        and new versioning scheme
        """
        expect = (
            (
                (3000, 1, None, None, "", 0, 0, None),
                "<SaltStackVersion name='Neon' major=3000 minor=1>",
            ),
            (
                (3000, 0, None, None, "", 0, 0, None),
                "<SaltStackVersion name='Neon' major=3000>",
            ),
            (
                (2019, 2, 3, None, "", 0, 0, None),
                "<SaltStackVersion name='Fluorine' major=2019 minor=2 bugfix=3>",
            ),
            (
                (2019, 2, 3, None, "rc", 1, 0, None),
                "<SaltStackVersion name='Fluorine' major=2019 minor=2 bugfix=3 rc=1>",
            ),
        )

        for ver, repr_ret in expect:
            assert repr(SaltStackVersion(*ver)) == repr_ret
Exemplo n.º 3
0
    def test_discover_version(self):
        '''
        Test call to __discover_version
        when using different versions
        '''
        version = {
            ('3000', None): {
                (b'v3000.0rc2-12-g44fe283a77\n', '3000rc2-12-g44fe283a77'),
                (b'v3000', '3000'),
                (b'1234567', '3000-n/a-1234567'),
            },
            (2019, 2): {
                (b'v2019.2.0rc2-12-g44fe283a77\n',
                 '2019.2.0rc2-12-g44fe283a77'),
                (b'v2019.2.0', '2019.2.0'),
                (b'afc9830198dj', '2019.2.0-n/a-afc9830198dj'),
            },
        }
        for maj_min, test_v in version.items():
            for tag_ver, exp in version[maj_min]:
                salt_ver = SaltStackVersion(major=maj_min[0],
                                            minor=maj_min[1],
                                            bugfix=None)
                attrs = {
                    'communicate.return_value': (tag_ver, b''),
                    'returncode.return_value': 0
                }
                proc_ret = MagicMock(**attrs)
                proc_mock = patch('subprocess.Popen', return_value=proc_ret)
                patch_os = patch('os.path.exists', return_value=True)

                with proc_mock, patch_os:
                    ret = getattr(salt.version, '__discover_version')(salt_ver)
                assert ret == exp
Exemplo n.º 4
0
 def test_bugfix_string(self):
     '''
     test when bugfix is an empty string
     '''
     ret = SaltStackVersion(3000, 1, '', 0, 0, None)
     assert ret.info == (3000, 1)
     assert ret.minor == 1
     assert ret.bugfix is None
Exemplo n.º 5
0
def test_bugfix_string():
    """
    test when bugfix is an empty string
    """
    ret = SaltStackVersion(3000, 1, "", 0, 0, None)
    assert ret.info == (3000, 1)
    assert ret.minor == 1
    assert ret.bugfix is None
Exemplo n.º 6
0
def test_info_new_version(major, minor, bugfix):
    """
    test info property method with new versioning scheme
    """
    ver = SaltStackVersion(major=major, minor=minor, bugfix=bugfix)
    if minor:
        assert ver.info == (major, minor)
    else:
        assert ver.info == (major, )
Exemplo n.º 7
0
def test_info_old_version(major, minor, bugfix):
    """
    test info property method with old versioning scheme
    """
    ver = SaltStackVersion(major=major, minor=minor, bugfix=bugfix)
    if bugfix is None:
        assert ver.info == (major, minor, 0, 0)
    else:
        assert ver.info == (major, minor, bugfix, 0)
Exemplo n.º 8
0
def test_string_new_version():
    """
    Validate string property method
    using new versioning scheme
    """
    maj_ver = "3000"
    ver = SaltStackVersion(major=maj_ver)
    assert not ver.minor
    assert not ver.bugfix
    assert maj_ver == ver.string
Exemplo n.º 9
0
 def test_string_new_version(self):
     '''
     Validate string property method
     using new versioning scheme
     '''
     maj_ver = '3000'
     ver = SaltStackVersion(major=maj_ver)
     assert not ver.minor
     assert not ver.bugfix
     assert maj_ver == ver.string
Exemplo n.º 10
0
def test_string_new_version_minor_as_string():
    """
    Validate string property method
    using new versioning scheme alongside
    minor version
    """
    maj_ver = "3000"
    min_ver = "1"
    ver = SaltStackVersion(major=maj_ver, minor=min_ver)
    assert ver.minor == int(min_ver)
    assert not ver.bugfix
    assert ver.string == "{}.{}".format(maj_ver, min_ver)

    # This only seems to happen on a cloned repo without its tags
    maj_ver = "3000"
    min_ver = ""
    ver = SaltStackVersion(major=maj_ver, minor=min_ver)
    assert ver.minor is None, "{!r} is not {!r}".format(ver.minor, min_ver)
    assert not ver.bugfix
    assert ver.string == maj_ver
Exemplo n.º 11
0
 def test_string_old_version(self):
     '''
     Validate string property method
     using old versioning scheme alongside
     minor version
     '''
     maj_ver = '2019'
     min_ver = '2'
     ver = SaltStackVersion(major=maj_ver, minor=min_ver)
     assert ver.bugfix == 0
     assert ver.string == '{0}.{1}.0'.format(maj_ver, min_ver)
Exemplo n.º 12
0
    def test_string_new_version_minor_as_string(self):
        '''
        Validate string property method
        using new versioning scheme alongside
        minor version
        '''
        maj_ver = '3000'
        min_ver = '1'
        ver = SaltStackVersion(major=maj_ver, minor=min_ver)
        assert ver.minor == int(min_ver)
        assert not ver.bugfix
        assert ver.string == '{0}.{1}'.format(maj_ver, min_ver)

        # This only seems to happen on a cloned repo without its tags
        maj_ver = '3000'
        min_ver = ''
        ver = SaltStackVersion(major=maj_ver, minor=min_ver)
        assert ver.minor is None, '{!r} is not {!r}'.format(ver.minor, min_ver)  # pylint: disable=repr-flag-used-in-string
        assert not ver.bugfix
        assert ver.string == maj_ver
Exemplo n.º 13
0
 def test_info_old_version(self):
     """
     test info property method with old versioning scheme
     """
     vers = ((2019, 2, 1), (2018, 3, 0), (2017, 7, None))
     for maj_ver, min_ver, bug_fix in vers:
         ver = SaltStackVersion(major=maj_ver, minor=min_ver, bugfix=bug_fix)
         if bug_fix is None:
             assert ver.info == (maj_ver, min_ver, 0, 0)
         else:
             assert ver.info == (maj_ver, min_ver, bug_fix, 0)
Exemplo n.º 14
0
 def test_info_new_version(self):
     """
     test info property method with new versioning scheme
     """
     vers = ((3000, None, None), (3000, 1, None), (3001, 0, None))
     for maj_ver, min_ver, bug_fix in vers:
         ver = SaltStackVersion(major=maj_ver, minor=min_ver, bugfix=bug_fix)
         if min_ver:
             assert ver.info == (maj_ver, min_ver)
         else:
             assert ver.info == (maj_ver,)
Exemplo n.º 15
0
def test_string_old_version():
    """
    Validate string property method
    using old versioning scheme alongside
    minor version
    """
    maj_ver = "2019"
    min_ver = "2"
    ver = SaltStackVersion(major=maj_ver, minor=min_ver)
    assert ver.bugfix == 0
    assert ver.string == "{}.{}.0".format(maj_ver, min_ver)
Exemplo n.º 16
0
def test_string_new_version_minor():
    """
    Validate string property method
    using new versioning scheme alongside
    minor version
    """
    maj_ver = 3000
    min_ver = 1
    ver = SaltStackVersion(major=maj_ver, minor=min_ver)
    assert ver.minor == min_ver
    assert not ver.bugfix
    assert ver.string == "{}.{}".format(maj_ver, min_ver)
Exemplo n.º 17
0
 def test_string_new_version_minor(self):
     '''
     Validate string property method
     using new versioning scheme alongside
     minor version
     '''
     maj_ver = 3000
     min_ver = 1
     ver = SaltStackVersion(major=maj_ver, minor=min_ver)
     assert ver.minor == min_ver
     assert not ver.bugfix
     assert ver.string == '{0}.{1}'.format(maj_ver, min_ver)
Exemplo n.º 18
0
def test_discover_version(major, minor, tag, expected):
    """
    Test call to __discover_version
    when using different versions
    """
    salt_ver = SaltStackVersion(major=major, minor=minor, bugfix=None)
    attrs = {
        "communicate.return_value": (tag, b""),
        "returncode.return_value": 0,
    }
    proc_ret = MagicMock(**attrs)
    proc_mock = patch("subprocess.Popen", return_value=proc_ret)
    patch_os = patch("os.path.exists", return_value=True)

    with proc_mock, patch_os:
        ret = getattr(salt.version, "__discover_version")(salt_ver)
    assert ret == expected
Exemplo n.º 19
0
# This file was auto-generated by salt's setup on Wednesday, 10 May 2017 @ 14:05:15 UTC.

from salt.version import SaltStackVersion

__saltstack_version__ = SaltStackVersion(2016, 11, 5, 0, '', 0, 0, None)
Exemplo n.º 20
0
# This file was auto-generated by salt's setup on Friday, 17 April 2015 @ 18:04:25 UTC.

from salt.version import SaltStackVersion

__saltstack_version__ = SaltStackVersion(2014, 7, 5, 0, 0, 0, None)
Exemplo n.º 21
0
Set up the version of Salt
'''

# Import python libs
import sys
import pkg_resources

# Import salt libs
from salt.version import SaltStackVersion, __version__ as __saltversion__


# ----- Hardcoded Salt Fuse Version Information ------------------------------>
#
# Please bump version information for __saltstack_version__ on new releases
# ----------------------------------------------------------------------------
__saltstack_version__ = SaltStackVersion(0, 4, 0)
__version_info__ = __saltstack_version__.info
__version__ = __saltstack_version__.string
# <---- Hardcoded Salt Fuse Version Information -------------------------------


# ----- Dynamic/Runtime Salt Fuse Version Information ------------------------>
def __get_version(version, version_info):
    '''
    If we can get a version provided at installation time or from Git, use
    that instead, otherwise we carry on.
    '''
    try:
        # Try to import the version information provided at install time
        from saltfuse._version import __version__, __version_info__  # pylint: disable=E0611
        return __version__, __version_info__
Exemplo n.º 22
0
from __future__ import absolute_import
import re

# Import third party libs
#import salt.ext.six as six

# Import salt libs
from salt.exceptions import (
    #CommandExecutionError,
    SaltInvocationError)
from salt.utils import warn_until

from salt.version import (__version__, SaltStackVersion)
# is there not SaltStackVersion.current() to get
# the version of the salt running this code??
CUR_VER = SaltStackVersion(__version__[0], __version__[1])
BORON = SaltStackVersion.from_name('Boron')

# pylint: disable=import-error
HAS_GLANCE = False
try:
    from glanceclient import client
    from glanceclient import exc
    HAS_GLANCE = True
except ImportError:
    pass

# Workaround, as the Glance API v2 requires you to
# already have a keystone session token
HAS_KEYSTONE = False
try:
Exemplo n.º 23
0
def test_version_repr(version_tuple, expected):
    """
    Test SaltStackVersion repr for both date
    and new versioning scheme
    """
    assert repr(SaltStackVersion(*version_tuple)) == expected
Exemplo n.º 24
0
# This file was auto-generated by salt's setup

from salt.version import SaltStackVersion

__saltstack_version__ = SaltStackVersion(2019, 2, 0, 0, u'', 0, 0, None)
Exemplo n.º 25
0
# This file was auto-generated by salt's setup on Tuesday, 22 March 2016 @ 22:03:14 UTC.

from salt.version import SaltStackVersion

__saltstack_version__ = SaltStackVersion(2015, 8, 8, 0, 0, 0, None)
Exemplo n.º 26
0
import re

# Import third party libs
#import salt.ext.six as six

# Import salt libs
from salt.exceptions import (
    #CommandExecutionError,
    SaltInvocationError)
from salt.utils import warn_until

from salt.version import (__version__, SaltStackVersion)
# is there not SaltStackVersion.current() to get
# the version of the salt running this code??
_version_ary = __version__.split('.')
CUR_VER = SaltStackVersion(_version_ary[0], _version_ary[1])
BORON = SaltStackVersion.from_name('Boron')

# pylint: disable=import-error
HAS_GLANCE = False
try:
    from glanceclient import client
    from glanceclient import exc
    HAS_GLANCE = True
except ImportError:
    pass

# Workaround, as the Glance API v2 requires you to
# already have a keystone session token
HAS_KEYSTONE = False
try: