From 4763d29a4cabccd5fc1121d779497901d2e389eb Mon Sep 17 00:00:00 2001 From: jobevers Date: Wed, 15 Feb 2017 18:50:38 -0600 Subject: [PATCH] set the build type --- appveyor.yml | 3 ++- build.sh | 3 ++- set_build.py | 29 +++++++++++++++++++++++++++++ set-version.py => set_version.py | 0 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 set_build.py rename set-version.py => set_version.py (100%) diff --git a/appveyor.yml b/appveyor.yml index f87d7f873..fe649bb3d 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -10,7 +10,8 @@ clone_folder: C:\projects\lbry-electron install: # needed to deal with submodules - git submodule update --init --recursive - - python set-version.py + - python set_version.py + - python set_build.py # Get the latest stable version of Node.js or io.js - ps: Install-Product node $env:nodejs_version # install modules diff --git a/build.sh b/build.sh index 6a0ac2f35..e6435b27a 100755 --- a/build.sh +++ b/build.sh @@ -30,7 +30,8 @@ if [ "$FULL_BUILD" == "true" ]; then source "$VENV/bin/activate" set -u pip install -U pip setuptools pyinstaller - python set-version.py + python set_version.py + python set_build.py fi npm install diff --git a/set_build.py b/set_build.py new file mode 100644 index 000000000..d9ebff51a --- /dev/null +++ b/set_build.py @@ -0,0 +1,29 @@ +"""Set the build version to be 'dev', 'qa', 'rc', 'release'""" + +import json +import os.path +import re +import subprocess +import sys + + +def main(): + build = get_build() + with open(os.path.join('lbry', 'lbrynet', 'build_type.py'), 'w') as f: + f.write('BUILD = "{}"'.format(build)) + + +def get_build(): + try: + tag = subprocess.check_output(['git', 'describe', '--exact-match']).strip() + if re.match('v\d+\.\d+\.\d+rc\d+', tag): + return 'rc' + else: + return 'release' + except subprocess.CalledProcessError: + # if the build doesn't have a tag + return 'qa' + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/set-version.py b/set_version.py similarity index 100% rename from set-version.py rename to set_version.py