aboutsummaryrefslogtreecommitdiff
path: root/dev/run-tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'dev/run-tests.py')
-rwxr-xr-xdev/run-tests.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/dev/run-tests.py b/dev/run-tests.py
index f689425ee4..4fd703a7c2 100755
--- a/dev/run-tests.py
+++ b/dev/run-tests.py
@@ -209,6 +209,18 @@ def run_python_style_checks():
run_cmd([os.path.join(SPARK_HOME, "dev", "lint-python")])
+def run_sparkr_style_checks():
+ set_title_and_block("Running R style checks", "BLOCK_R_STYLE")
+
+ if which("R"):
+ # R style check should be executed after `install-dev.sh`.
+ # Since warnings about `no visible global function definition` appear
+ # without the installation. SEE ALSO: SPARK-9121.
+ run_cmd([os.path.join(SPARK_HOME, "dev", "lint-r")])
+ else:
+ print("Ignoring SparkR style check as R was not found in PATH")
+
+
def build_spark_documentation():
set_title_and_block("Building Spark Documentation", "BLOCK_DOCUMENTATION")
os.environ["PRODUCTION"] = "1 jekyll build"
@@ -387,7 +399,6 @@ def run_sparkr_tests():
set_title_and_block("Running SparkR tests", "BLOCK_SPARKR_UNIT_TESTS")
if which("R"):
- run_cmd([os.path.join(SPARK_HOME, "R", "install-dev.sh")])
run_cmd([os.path.join(SPARK_HOME, "R", "run-tests.sh")])
else:
print("Ignoring SparkR tests as R was not found in PATH")
@@ -438,6 +449,12 @@ def main():
if java_version.minor < 8:
print("[warn] Java 8 tests will not run because JDK version is < 1.8.")
+ # install SparkR
+ if which("R"):
+ run_cmd([os.path.join(SPARK_HOME, "R", "install-dev.sh")])
+ else:
+ print("Can't install SparkR as R is was not found in PATH")
+
if os.environ.get("AMPLAB_JENKINS"):
# if we're on the Amplab Jenkins build servers setup variables
# to reflect the environment settings
@@ -485,6 +502,8 @@ def main():
run_scala_style_checks()
if not changed_files or any(f.endswith(".py") for f in changed_files):
run_python_style_checks()
+ if not changed_files or any(f.endswith(".R") for f in changed_files):
+ run_sparkr_style_checks()
# determine if docs were changed and if we're inside the amplab environment
# note - the below commented out until *all* Jenkins workers can get `jekyll` installed