mirror of
https://github.com/ARM-software/workload-automation.git
synced 2025-01-19 12:24:32 +00:00
2dbb6e8c18
Add a function to return WA version suffixed with the commit hash for current HEAD. This only works if WA was deployed via python setup.py develop otherwise, the output is identical to get_wa_version().
49 lines
1.3 KiB
Python
49 lines
1.3 KiB
Python
# Copyright 2014-2015 ARM Limited
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
import os
|
|
from collections import namedtuple
|
|
from subprocess import Popen, PIPE
|
|
|
|
|
|
VersionTuple = namedtuple('Version', ['major', 'minor', 'revision'])
|
|
|
|
version = VersionTuple(3, 0, 0)
|
|
|
|
|
|
def get_wa_version():
|
|
version_string = '{}.{}.{}'.format(
|
|
version.major, version.minor, version.revision)
|
|
return version_string
|
|
|
|
|
|
def get_wa_version_with_commit():
|
|
version_string = get_wa_version()
|
|
commit = get_commit()
|
|
if commit:
|
|
return '{}-{}'.format(version_string, commit)
|
|
else:
|
|
return version_string
|
|
|
|
|
|
def get_commit():
|
|
p = Popen(['git', 'rev-parse', 'HEAD'],
|
|
cwd=os.path.dirname(__file__), stdout=PIPE)
|
|
std, _ = p.communicate()
|
|
p.wait()
|
|
if p.returncode:
|
|
return None
|
|
return std[:8]
|