From e25260fcdbd7f04edaf027e86d21c6ffb3538562 Mon Sep 17 00:00:00 2001 From: Doug Hellmann Date: Wed, 11 Apr 2018 15:12:16 -0400 Subject: [PATCH] skip virtualenv setup when there is already a virtualenv Support local use more easily by skipping the installation step if it looks like the user has already done that once manually. This makes running the script multiple times much much faster. Change-Id: Id2a139c9d68c2ebcee558cbc493b47167d2a2e1d Signed-off-by: Doug Hellmann --- .../files/project-requirements-change.py | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/playbooks/files/project-requirements-change.py b/playbooks/files/project-requirements-change.py index ca0a9aa12e..87e47ae8c2 100755 --- a/playbooks/files/project-requirements-change.py +++ b/playbooks/files/project-requirements-change.py @@ -72,14 +72,18 @@ def tempdir(): def install_and_load_requirements(reqroot, reqdir): - sha = run_command("git --git-dir %s/.git rev-parse HEAD" % reqdir)[0] - print("requirements git sha: %s" % sha) - req_venv = os.path.join(reqroot, 'venv') - req_pip = os.path.join(req_venv, 'bin/pip') - req_lib = os.path.join(req_venv, 'lib/python2.7/site-packages') - out, err = run_command("virtualenv " + req_venv) - out, err = run_command(req_pip + " install " + reqdir) - sys.path.append(req_lib) + if os.environ.get('VIRTUAL_ENV'): + print('It looks like we are running from a virtualenv.') + print('SKIPPING INSTALLATION') + else: + sha = run_command("git --git-dir %s/.git rev-parse HEAD" % reqdir)[0] + print("requirements git sha: %s" % sha) + req_venv = os.path.join(reqroot, 'venv') + req_pip = os.path.join(req_venv, 'bin/pip') + req_lib = os.path.join(req_venv, 'lib/python2.7/site-packages') + out, err = run_command("virtualenv " + req_venv) + out, err = run_command(req_pip + " install " + reqdir) + sys.path.append(req_lib) global check global project global requirement