This is an automated email from the ASF dual-hosted git repository. lfrolov pushed a commit to branch DLAB-1961 in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
The following commit(s) were added to refs/heads/DLAB-1961 by this push: new bef18ec [DLAB-1961]: pip now upgrades lib if version is not specified and new version is available bef18ec is described below commit bef18ec41e6c52232394ac59355767529d5cf598 Author: leonidfrolov <frolovl...@gmail.com> AuthorDate: Thu Jul 23 13:53:19 2020 +0300 [DLAB-1961]: pip now upgrades lib if version is not specified and new version is available --- infrastructure-provisioning/src/general/lib/os/fab.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/infrastructure-provisioning/src/general/lib/os/fab.py b/infrastructure-provisioning/src/general/lib/os/fab.py index c6c1f53..1592313 100644 --- a/infrastructure-provisioning/src/general/lib/os/fab.py +++ b/infrastructure-provisioning/src/general/lib/os/fab.py @@ -68,7 +68,7 @@ def install_pip_pkg(requisites, pip_version, lib_group): else: version = pip_pkg[1] pip_pkg = "{}=={}".format(pip_pkg[0], pip_pkg[1]) - sudo('{0} install {1} --no-cache-dir 2>&1 | tee /tmp/tee.tmp; if ! grep -w -i -E "({2})" /tmp/tee.tmp > /tmp/{0}install_{1}.log; then echo "" > /tmp/{0}install_{1}.log;fi'.format(pip_version, pip_pkg, error_parser)) + sudo('{0} install -U {1} --no-cache-dir 2>&1 | tee /tmp/tee.tmp; if ! grep -w -i -E "({2})" /tmp/tee.tmp > /tmp/{0}install_{1}.log; then echo "" > /tmp/{0}install_{1}.log;fi'.format(pip_version, pip_pkg, error_parser)) err = sudo('cat /tmp/{0}install_{1}.log'.format(pip_version, pip_pkg)).replace('"', "'") sudo('{0} freeze | if ! grep -w -i {1} > /tmp/{0}install_{1}.list; then echo "" > /tmp/{0}install_{1}.list;fi'.format(pip_version, pip_pkg)) res = sudo('cat /tmp/{0}install_{1}.list'.format(pip_version, pip_pkg)) @@ -79,7 +79,9 @@ def install_pip_pkg(requisites, pip_version, lib_group): sudo('{0} freeze | if ! grep -w -i {1} > /tmp/{0}install_{1}.list; then echo "" > ' '/tmp/{0}install_{1}.list;fi'.format(pip_version, changed_pip_pkg)) res = sudo('cat /tmp/{0}install_{1}.list'.format(pip_version, changed_pip_pkg)) - if res: + if err: + status_msg = 'failed' + elif res: res = res.lower() ansi_escape = re.compile(r'\x1b[^m]*m') ver = ansi_escape.sub('', res).split("\r\n") @@ -88,9 +90,7 @@ def install_pip_pkg(requisites, pip_version, lib_group): else: version = \ [i for i in ver if pip_pkg.split("==")[0].lower() in i][0].split('==')[1] - status_msg = "installed" - else: - status_msg = 'failed' + status_msg = "installed" versions = [] if 'Could not find a version that satisfies the requirement' in err: versions = err[err.find("(from versions: ") + 16: err.find(")\r\n")] @@ -442,12 +442,12 @@ def install_r_pkg(requisites): err = sudo('cat /tmp/install_{0}.log'.format(name)).replace('"', "'") sudo('R -e \'installed.packages()[,c(3:4)]\' | if ! grep -w {0} > /tmp/install_{0}.list; then echo "" > /tmp/install_{0}.list;fi'.format(name)) res = sudo('cat /tmp/install_{0}.list'.format(name)) - if res: + if err: + status_msg = 'failed' + elif res: ansi_escape = re.compile(r'\x1b[^m]*m') version = ansi_escape.sub('', res).split("\r\n")[0].split('"')[1] status_msg = 'installed' - else: - status_msg = 'failed' if 'Error in download_version_url(package, version, repos, type) :' in err: sudo('R -e \'install.packages("versions", repos="https://cloud.r-project.org", dep=TRUE)\'') versions = sudo('R -e \'library(versions); available.versions("' + name + '")\' 2>&1 | grep -A 50 ' --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@dlab.apache.org For additional commands, e-mail: commits-h...@dlab.apache.org