[javapackages] [mvn_build] Fail gracefully if xmvn/gradle-local is not installed
by Michal Srb
commit b01e877fdd203e205291cce68ab1a643e54b5df6
Author: Michal Srb <msrb(a)redhat.com>
Date: Tue Dec 8 10:29:46 2015 +0100
[mvn_build] Fail gracefully if xmvn/gradle-local is not installed
java-utils/mvn_build.py | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
---
diff --git a/java-utils/mvn_build.py b/java-utils/mvn_build.py
index 2ad9ae4..1836e4d 100644
--- a/java-utils/mvn_build.py
+++ b/java-utils/mvn_build.py
@@ -39,7 +39,7 @@ import sys
from javapackages.maven.artifact import Artifact
from javapackages.xmvn.xmvn_config import XMvnConfig
-from javapackages.common.util import args_to_unicode
+from javapackages.common.util import args_to_unicode, command_exists
from javapackages.common.mock import socket_path as mock_socket
@@ -109,6 +109,15 @@ if __name__ == "__main__":
base_goal = "verify"
mvn_args = ["xmvn", "--batch-mode"]
+ if not command_exists(mvn_args[0]):
+ if options.gradle:
+ print("gradle-local package is not installed, please install it to proceed", file=sys.stderr)
+ else:
+ # xmvn command is provided by xmvn package, but maven-local
+ # pulls in bunch of maven plugins which may come handy
+ print("maven-local package is not installed, please install it to proceed", file=sys.stderr)
+ sys.exit(1)
+
if not options.bootstrap:
mvn_args.append("--offline")
8 years, 5 months
[javapackages] Move command availability detection code to common.util
by Michal Srb
commit 6104174c220dfdb90d90276ea234ae6895d67ebc
Author: Michal Srb <msrb(a)redhat.com>
Date: Tue Dec 8 10:04:09 2015 +0100
Move command availability detection code to common.util
python/javapackages/common/util.py | 6 ++++++
python/javapackages/xmvn/xmvn_resolve.py | 7 ++-----
2 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/python/javapackages/common/util.py b/python/javapackages/common/util.py
index b892bba..d9b349a 100644
--- a/python/javapackages/common/util.py
+++ b/python/javapackages/common/util.py
@@ -76,6 +76,12 @@ def execute_command(command, input=None):
return proc.returncode, stdout, stderr
+def command_exists(cmd):
+ command = "type {cmd}".format(cmd=cmd)
+ rc, _, _ = execute_command(command)
+ return True if not rc else False
+
+
def init_rpmgen(argv):
return _parse_rpmgen_args(argv)
diff --git a/python/javapackages/xmvn/xmvn_resolve.py b/python/javapackages/xmvn/xmvn_resolve.py
index e47794d..970b916 100644
--- a/python/javapackages/xmvn/xmvn_resolve.py
+++ b/python/javapackages/xmvn/xmvn_resolve.py
@@ -33,7 +33,7 @@
import os
import lxml.etree
-from javapackages.common.util import execute_command
+from javapackages.common.util import execute_command, command_exists
from javapackages.common.exception import JavaPackagesToolsException
@@ -51,10 +51,7 @@ class XMvnResolve(object):
# always return True if running in test environment
if os.environ.get("JAVAPACKAGES_XMVN_RESOLVE_TEST", None) is not None:
return True
-
- command = "type {tool}".format(tool=XMvnResolve.tool)
- rc, _, _ = execute_command(command)
- return True if not rc else False
+ return command_exists(XMvnResolve.tool)
@staticmethod
def process_raw_request(raw_request_list):
8 years, 5 months