You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by lf...@apache.org on 2020/07/16 14:35:33 UTC
[incubator-dlab] 04/05: [DLAB-1748]: added versions for R
dependencies
This is an automated email from the ASF dual-hosted git repository.
lfrolov pushed a commit to branch DLAB-1748
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 45e328dd69734a0b7711bce7c825747f028727ab
Author: leonidfrolov <fr...@gmail.com>
AuthorDate: Thu Jul 16 17:34:59 2020 +0300
[DLAB-1748]: added versions for R dependencies
---
.../src/general/lib/os/fab.py | 28 +++++++++++-----------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/infrastructure-provisioning/src/general/lib/os/fab.py b/infrastructure-provisioning/src/general/lib/os/fab.py
index abec2fb..15671eb 100644
--- a/infrastructure-provisioning/src/general/lib/os/fab.py
+++ b/infrastructure-provisioning/src/general/lib/os/fab.py
@@ -417,25 +417,25 @@ def install_r_pkg(requisites):
try:
for r_pkg in requisites:
name, vers = r_pkg
- if vers != '' and vers !='N/A':
- if name == 'sparklyr':
- run('sudo -i R -e \'devtools::install_version("{0}", version = "{1}", repos = "http://cran.us.r-project.org", dep=TRUE)\' 2>&1 | '
+ if vers =='N/A':
+ vers = ''
+ else:
+ vers = '"{}"'.format(vers)
+ if name == 'sparklyr':
+ run('sudo -i R -e \'devtools::install_version("{0}", version = {1}, repos = "http://cran.us.r-project.org", dep=TRUE)\' 2>&1 | '
'tee /tmp/tee.tmp; if ! grep -w -E "({2})" /tmp/tee.tmp > /tmp/install_{0}.log; then echo "" > /tmp/install_{0}.log;fi'.format(name, vers, error_parser))
- else:
- sudo('R -e \'devtools::install_version("{0}", version = "{1}", repos = "http://cran.us.r-project.org", dep=TRUE)\' 2>&1 | '
- 'tee /tmp/tee.tmp; if ! grep -w -E "({2})" /tmp/tee.tmp > /tmp/install_{0}.log; then echo "" > /tmp/install_{0}.log;fi'.format(name, vers, error_parser))
else:
- if name == 'sparklyr':
- run('sudo -i R -e \'install.packages("{0}", repos="https://cloud.r-project.org", dep=TRUE)\' 2>&1 | '
- 'tee /tmp/tee.tmp; if ! grep -w -E "({1})" /tmp/tee.tmp > /tmp/install_{0}.log; then echo "" > /tmp/install_{0}.log;fi'.format(name, error_parser))
- else:
- sudo('R -e \'install.packages("{0}", repos="https://cloud.r-project.org", dep=TRUE)\' 2>&1 | '
- 'tee /tmp/tee.tmp; if ! grep -w -E "({1})" /tmp/tee.tmp > /tmp/install_{0}.log; then echo "" > /tmp/install_{0}.log;fi'.format(name, error_parser))
- dep = sudo('grep "(NA -> " /tmp/tee.tmp | awk \'{print $1}\'').replace('\r\n', ' ')
- if dep == name or dep == '':
+ sudo('R -e \'devtools::install_version("{0}", version = "{1}", repos = "https://cloud.r-project.org", dep=TRUE)\' 2>&1 | '
+ 'tee /tmp/tee.tmp; if ! grep -w -E "({2})" /tmp/tee.tmp > /tmp/install_{0}.log; then echo "" > /tmp/install_{0}.log;fi'.format(name, vers, error_parser))
+ dep = sudo('grep "(NA" /tmp/tee.tmp | awk \'{print $1}\'').replace('\r\n', ' ')
+ dep_ver = sudo('grep "(NA" /tmp/tee.tmp | awk \'{print $4}\'').replace('\r\n', ' ').replace(')', '').split(' ')
+ if dep == '':
dep = []
else:
dep = dep.split(' ')
+ for n, i in enumerate(dep):
+ dep[n] = '{} v.{}'.format(dep[n], dep_ver[n])
+ dep = [i for i in dep if i]
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))
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org