Skip to content

Commit 6cc0f92

Browse files
committed
Update core.osg_release() to use PackageVersion
This allows for easier comparisons and adds a layer of indirection so that we don't have to worry about osg-release vs osg-release-itb
1 parent 73ac571 commit 6cc0f92

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

osgtest/library/core.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ class PackageVersion:
9191
def __init__(self, pkgname):
9292
e,n,v,r,a = get_package_envra(pkgname)
9393
self.evr = e,v,r
94+
self.version = v
9495

9596
def __repr__(self):
9697
return "%s:%s-%s" % self.evr
@@ -629,16 +630,16 @@ def el_release():
629630

630631
def osg_release(update_state=False):
631632
"""
632-
Return the version of osg-release. If the query fails, the test module fails.
633+
Return a PackageVersion instance of osg-release. If the query fails, the test module fails.
633634
"""
634635
if not update_state and 'general.osg_release_ver' in state:
635636
return state['general.osg_release_ver']
636637
try:
637-
_, _, osg_release_ver, _, _ = get_package_envra('osg-release')
638+
release = PackageVersion('osg-release')
638639
except OSError:
639-
_, _, osg_release_ver, _, _ = get_package_envra('osg-release-itb')
640-
state['general.osg_release_ver'] = osg_release_ver
641-
return osg_release_ver
640+
release = PackageVersion('osg-release-itb')
641+
state['general.osg_release_ver'] = release
642+
return release
642643

643644

644645
def get_hostname():
@@ -750,10 +751,10 @@ def test_bar_34_only(self):
750751
releases = map(str, releases) # convert float args to str
751752
def osg_release_decorator(fn):
752753
def run_fn_if_osg_release_ok(*args, **kwargs):
753-
if osg_release() in releases:
754+
if osg_release().version in releases:
754755
return fn(*args, **kwargs)
755756
else:
756-
msg = "excluding for OSG %s" % osg_release()
757+
msg = "excluding for OSG %s" % osg_release().version
757758
raise osgunittest.ExcludedException(msg)
758759
return run_fn_if_osg_release_ok
759760
return osg_release_decorator

osgtest/tests/special_install.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def test_02_install_packages(self):
3232

3333
# HACK: Install Slurm and osg-tested-internal out of development-like repos.
3434
# SOFTWARE-1733 may one day give us a generalized solution.
35-
if float(core.osg_release()) > 3.4:
35+
if core.osg_release() > '3.4':
3636
devops_repo = 'devops-itb'
3737
else:
3838
devops_repo = 'osg-development'

0 commit comments

Comments
 (0)