Skip to content

Commit e51637a

Browse files
author
Jacob Truman
committed
Fix issue parsing version
1 parent 51a9522 commit e51637a

File tree

1 file changed

+7
-15
lines changed

1 file changed

+7
-15
lines changed

buildrunner/config/loader.py

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,16 @@
3131
load_config,
3232
)
3333

34+
try:
35+
from buildrunner.version import __version__ as BUILDRUNNER_VERSION
36+
except ImportError:
37+
# If the version module doesn't exist, set a default version
38+
BUILDRUNNER_VERSION = "0.0.DEVELOPMENT"
39+
3440
from .models import GlobalConfig
3541

3642
from . import fetch, jinja_context
3743

38-
3944
MASTER_GLOBAL_CONFIG_FILE = "/etc/buildrunner/buildrunner.yaml"
4045
VERSION_FILE_PATH = (
4146
f"{os.path.realpath(os.path.join(os.path.dirname(__file__), '..'))}/version.py"
@@ -124,27 +129,14 @@ def _validate_version(config: dict) -> None:
124129
buildrunner. If the config version is greater than the buildrunner version or any parsing error occurs
125130
it will raise a buildrunner exception.
126131
"""
127-
buildrunner_version = None
128-
129132
if not os.path.exists(VERSION_FILE_PATH):
130133
LOGGER.warning(
131134
f"File {VERSION_FILE_PATH} does not exist. This could indicate an error with "
132135
f"the buildrunner installation. Unable to validate version."
133136
)
134137
return
135138

136-
with open(VERSION_FILE_PATH, "r", encoding="utf-8") as version_file:
137-
for line in version_file.readlines():
138-
if "__version__" in line:
139-
try:
140-
version_values = (
141-
line.split("=")[1].strip().replace("'", "").split(".")
142-
)
143-
buildrunner_version = f"{version_values[0]}.{version_values[1]}"
144-
except IndexError as exception:
145-
raise ConfigVersionFormatError(
146-
f'couldn\'t parse version from "{line}"'
147-
) from exception
139+
buildrunner_version = ".".join((BUILDRUNNER_VERSION.split(".") + ["0", "0"])[:2])
148140

149141
if not buildrunner_version:
150142
raise BuildRunnerVersionError("unable to determine buildrunner version")

0 commit comments

Comments
 (0)