From a32099c05d3684b9388045abde527b8418b4727d Mon Sep 17 00:00:00 2001 From: Masatake Iwasaki Date: Fri, 7 Jun 2024 12:43:59 +0000 Subject: [PATCH] BIGTOP-4122. Fix test failure of SparkR on openEuler due to lack of R deployment. --- .../puppet/modules/spark/manifests/init.pp | 23 ++++++++----------- .../src/rpm/spark/SPECS/spark.spec | 5 ++++ bigtop_toolchain/manifests/renv.pp | 9 +------- 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/bigtop-deploy/puppet/modules/spark/manifests/init.pp b/bigtop-deploy/puppet/modules/spark/manifests/init.pp index 034dc14b21..79a0577f35 100644 --- a/bigtop-deploy/puppet/modules/spark/manifests/init.pp +++ b/bigtop-deploy/puppet/modules/spark/manifests/init.pp @@ -162,25 +162,20 @@ } class sparkr { - # BIGTOP-3579. On these distros, the default version of R is earlier than 3.5.0, - # which is required to run SparkR. So the newer version of R is installed here. - if (($operatingsystem == 'Ubuntu' and versioncmp($operatingsystemmajrelease, '18.04') <= 0) or - ($operatingsystem == 'Debian' and versioncmp($operatingsystemmajrelease, '10') < 0)) { + if ($operatingsystem == 'openEuler') { $url = "http://cran.r-project.org/src/base/R-3/" $rfile = "R-3.6.3.tar.gz" $rdir = "R-3.6.3" $pkgs = [ - "g++", - "gcc", - "gfortran", - "libbz2-dev", - "libcurl4-gnutls-dev", - "liblzma-dev", - "libpcre3-dev", - "libreadline-dev", - "libz-dev", - "make", + "bzip2-devel", + "gcc-c++", + "gcc-gfortran", + "libcurl-devel", + "perl-Digest-SHA", + "pcre-devel", + "readline-devel", + "xz-devel", ] package { $pkgs: ensure => installed, diff --git a/bigtop-packages/src/rpm/spark/SPECS/spark.spec b/bigtop-packages/src/rpm/spark/SPECS/spark.spec index 0d9177ff05..5bea9ba2db 100644 --- a/bigtop-packages/src/rpm/spark/SPECS/spark.spec +++ b/bigtop-packages/src/rpm/spark/SPECS/spark.spec @@ -164,7 +164,12 @@ Spark YARN Shuffle Service %package -n %{spark_pkg_name}-sparkr Summary: R package for Apache Spark Group: Development/Libraries + +%if 0%{?openEuler} +Requires: %{spark_pkg_name}-core = %{version}-%{release} +%else Requires: %{spark_pkg_name}-core = %{version}-%{release}, R +%endif %description -n %{spark_pkg_name}-sparkr SparkR is an R package that provides a light-weight frontend to use Apache Spark from R. diff --git a/bigtop_toolchain/manifests/renv.pp b/bigtop_toolchain/manifests/renv.pp index e08886cfe2..316c9a2311 100644 --- a/bigtop_toolchain/manifests/renv.pp +++ b/bigtop_toolchain/manifests/renv.pp @@ -75,14 +75,7 @@ } } - - # BIGTOP-3483: - # Upgrade R version to 3.6.3 to build Spark 3.0.1 on Ubuntu 16.04 and 18.04 - # - # Then Install required R packages dependency - if (($operatingsystem == 'Ubuntu' and versioncmp($operatingsystemmajrelease, '18.04') <= 0) or - ($operatingsystem == 'Debian' and versioncmp($operatingsystemmajrelease, '10') <= 0) or - ($operatingsystem == 'openEuler')) { + if ($operatingsystem == 'openEuler') { $rurl = "https://cran.r-project.org/src/base/R-3/" $rfile = "R-3.6.3.tar.gz" $rdir = "R-3.6.3"