mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
We also need to be PEP440 compliant when there's no git history
This commit is contained in:
parent
60eb525c77
commit
9173f08d72
3 changed files with 22 additions and 21 deletions
|
@ -59,7 +59,7 @@ class SaltStackVersion:
|
|||
r"(?:\.(?P<bugfix>[\d]{0,2}))?"
|
||||
r"(?:\.(?P<mbugfix>[\d]{0,2}))?"
|
||||
r"(?:(?P<pre_type>rc|a|b|alpha|beta|nb)(?P<pre_num>[\d]+))?"
|
||||
r"(?:(?:.*)(?:\+|-)(?P<noc>(?:[\d]+|n/a))(?:-|\.)" + git_sha_regex + r")?"
|
||||
r"(?:(?:.*)(?:\+|-)(?P<noc>(?:0na|[\d]+|n/a))(?:-|\.)" + git_sha_regex + r")?"
|
||||
)
|
||||
git_sha_regex = r"^" + git_sha_regex
|
||||
|
||||
|
@ -241,7 +241,7 @@ class SaltStackVersion:
|
|||
|
||||
if noc is None:
|
||||
noc = 0
|
||||
elif isinstance(noc, str) and noc == "n/a":
|
||||
elif isinstance(noc, str) and noc in ("0na", "n/a"):
|
||||
noc = -1
|
||||
elif isinstance(noc, str):
|
||||
noc = int(noc)
|
||||
|
@ -384,7 +384,7 @@ class SaltStackVersion:
|
|||
if self.noc and self.sha:
|
||||
noc = self.noc
|
||||
if noc < 0:
|
||||
noc = "n/a"
|
||||
noc = "0na"
|
||||
version_string += "+{}.{}".format(noc, self.sha)
|
||||
return version_string
|
||||
|
||||
|
@ -489,7 +489,7 @@ class SaltStackVersion:
|
|||
parts.append("{}={}".format(self.pre_type, self.pre_num))
|
||||
noc = self.noc
|
||||
if noc == -1:
|
||||
noc = "n/a"
|
||||
noc = "0na"
|
||||
if noc and self.sha:
|
||||
parts.extend(["noc={}".format(noc), "sha={}".format(self.sha)])
|
||||
return "<{} {}>".format(self.__class__.__name__, " ".join(parts))
|
||||
|
|
|
@ -52,8 +52,9 @@ def test_wheel(virtualenv, cache_dir):
|
|||
if re.search(r"^\d.\d*", x)
|
||||
][0]
|
||||
whl_ver_cmp = whl_ver.replace("_", "-")
|
||||
salt_ver_cmp = salt.version.__version__.replace("/", "-").replace("+", "-")
|
||||
assert whl_ver_cmp == salt_ver_cmp, "{} != {}".format(whl_ver_cmp, salt_ver_cmp)
|
||||
assert whl_ver_cmp == salt.version.__version__, "{} != {}".format(
|
||||
whl_ver_cmp, salt.version.__version__
|
||||
)
|
||||
|
||||
# Because bdist_wheel supports pep517, we don't have to pre-install Salt's
|
||||
# dependencies before installing the wheel package
|
||||
|
@ -70,8 +71,8 @@ def test_wheel(virtualenv, cache_dir):
|
|||
pytest.fail("Salt was not found installed")
|
||||
|
||||
# Let's compare the installed version with the version salt reports
|
||||
assert installed_version == salt_ver_cmp, "{} != {}".format(
|
||||
installed_version, salt_ver_cmp
|
||||
assert installed_version == salt.version.__version__, "{} != {}".format(
|
||||
installed_version, salt.version.__version__
|
||||
)
|
||||
|
||||
# Let's also ensure we have a salt/_version.py from the installed salt wheel
|
||||
|
@ -165,8 +166,9 @@ def test_egg(virtualenv, cache_dir):
|
|||
if re.search(r"^\d.\d*", x)
|
||||
][0]
|
||||
egg_ver_cmp = egg_ver.replace("_", "-")
|
||||
salt_ver_cmp = salt.version.__version__.replace("/", "-").replace("+", "-")
|
||||
assert egg_ver_cmp == salt_ver_cmp, "{} != {}".format(egg_ver_cmp, salt_ver_cmp)
|
||||
assert egg_ver_cmp == salt.version.__version__, "{} != {}".format(
|
||||
egg_ver_cmp, salt.version.__version__
|
||||
)
|
||||
|
||||
# We cannot pip install an egg file, let's go old school
|
||||
venv.run(venv.venv_python, "-m", "easy_install", str(salt_generated_package))
|
||||
|
@ -182,8 +184,8 @@ def test_egg(virtualenv, cache_dir):
|
|||
pytest.fail("Salt was not found installed")
|
||||
|
||||
# Let's compare the installed version with the version salt reports
|
||||
assert installed_version == salt_ver_cmp, "{} != {}".format(
|
||||
installed_version, salt_ver_cmp
|
||||
assert installed_version == salt.version.__version__, "{} != {}".format(
|
||||
installed_version, salt.version.__version__
|
||||
)
|
||||
|
||||
# Let's also ensure we have a salt/_version.py from the installed salt egg
|
||||
|
@ -263,8 +265,7 @@ def test_sdist(virtualenv, cache_dir):
|
|||
sdist_ver_cmp = salt_generated_package.name.split(".tar.gz")[0].split("salt-")[
|
||||
-1
|
||||
]
|
||||
salt_ver_cmp = salt.version.__version__.replace("/", "-").replace("+", "-")
|
||||
assert sdist_ver_cmp == salt_ver_cmp, "{} != {}".format(
|
||||
assert sdist_ver_cmp == salt.version.__version__, "{} != {}".format(
|
||||
sdist_ver_cmp, salt.version.__version__
|
||||
)
|
||||
|
||||
|
@ -299,8 +300,8 @@ def test_sdist(virtualenv, cache_dir):
|
|||
pytest.fail("Salt was not found installed")
|
||||
|
||||
# Let's compare the installed version with the version salt reports
|
||||
assert installed_version == salt_ver_cmp, "{} != {}".format(
|
||||
installed_version, salt_ver_cmp
|
||||
assert installed_version == salt.version.__version__, "{} != {}".format(
|
||||
installed_version, salt.version.__version__
|
||||
)
|
||||
|
||||
|
||||
|
@ -351,10 +352,9 @@ def test_setup_install(virtualenv, cache_dir):
|
|||
else:
|
||||
pytest.fail("Salt was not found installed")
|
||||
|
||||
salt_ver_cmp = salt.version.__version__.replace("/", "-").replace("+", "-")
|
||||
# Let's compare the installed version with the version salt reports
|
||||
assert installed_version == salt_ver_cmp, "{} != {}".format(
|
||||
installed_version, salt_ver_cmp
|
||||
assert installed_version == salt.version.__version__, "{} != {}".format(
|
||||
installed_version, salt.version.__version__
|
||||
)
|
||||
|
||||
# Let's also ensure we have a salt/_version.py from the installed salt
|
||||
|
|
|
@ -58,6 +58,7 @@ def test_version_parsing(version_string, full_info, version):
|
|||
STRIP_INITIAL_NON_NUMBERS_REGEX.search(version_string)
|
||||
.group("vs") # Strip leading non numeric chars
|
||||
# Now, make it Wheel metadata 1.2 compliant post release
|
||||
.replace("n/a", "0na")
|
||||
.replace("-", "+", 1)
|
||||
.replace("-", ".", 1)
|
||||
)
|
||||
|
@ -281,10 +282,10 @@ def test_full_info_all_versions(vstr, full_info):
|
|||
(3000, None, b"v3000.0rc2-12-g44fe283a77\n", "3000rc2-12-g44fe283a77"),
|
||||
(3000, None, b"v3000.0rc2-0-g44fe283a77\n", "3000rc2"),
|
||||
(3000, None, b"v3000", "3000"),
|
||||
(3000, None, b"1234567", "3000-n/a-1234567"),
|
||||
(3000, None, b"1234567", "3000-0na-1234567"),
|
||||
(2019, 2, b"v2019.2.0rc2-12-g44fe283a77\n", "2019.2.0rc2-12-g44fe283a77"),
|
||||
(2019, 2, b"v2019.2.0", "2019.2.0"),
|
||||
(2019, 2, b"afc9830198dj", "2019.2.0-n/a-afc9830198dj"),
|
||||
(2019, 2, b"afc9830198dj", "2019.2.0-0na-afc9830198dj"),
|
||||
],
|
||||
)
|
||||
def test_discover_version(major, minor, tag, expected):
|
||||
|
|
Loading…
Add table
Reference in a new issue