113 lines
3.9 KiB
Diff
113 lines
3.9 KiB
Diff
diff --git a/java-utils/maven_depmap.py b/java-utils/maven_depmap.py
|
|
index 9377725..c80ff5b 100644
|
|
--- a/java-utils/maven_depmap.py
|
|
+++ b/java-utils/maven_depmap.py
|
|
@@ -280,6 +280,7 @@ if __name__ == "__main__":
|
|
if namespace:
|
|
artifact.namespace = namespace
|
|
|
|
+ artifact.properties["xmvn.resolver.disableEffectivePom"] = "true"
|
|
|
|
|
|
buildroot = os.environ.get('RPM_BUILD_ROOT')
|
|
diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
|
|
index e5e2731..9c0d55a 100644
|
|
--- a/java-utils/mvn_artifact.py
|
|
+++ b/java-utils/mvn_artifact.py
|
|
@@ -45,8 +45,6 @@ from javapackages.pom import *
|
|
from lxml import etree
|
|
import pyxb
|
|
|
|
-from xml.dom.minidom import getDOMImplementation
|
|
-
|
|
|
|
usage="usage: %prog [options] <MVN spec | POM path> [artifact path]"
|
|
epilog="""
|
|
@@ -117,21 +115,17 @@ def add_artifact_elements(root, uart, ppath=None, jpath=None):
|
|
for path in [ppath, jpath]:
|
|
if path:
|
|
a = uart.to_metadata()
|
|
+ props = []
|
|
if path is ppath:
|
|
if not is_it_ivy_file(ppath):
|
|
a.extension = "pom"
|
|
else:
|
|
a.extension = os.path.splitext(pom_path)[1][1:]
|
|
-
|
|
- # add property "type"
|
|
- domimpl = getDOMImplementation()
|
|
- doc = domimpl.createDocument(None, None, None)
|
|
- ty = doc.createElement('type')
|
|
- te = doc.createTextNode('ivy')
|
|
- ty.appendChild(te)
|
|
- a.properties = pyxb.BIND(ty)
|
|
+ props.append(Depmap.build_property('type', 'ivy'))
|
|
|
|
a.path = os.path.abspath(path)
|
|
+ props.append(Depmap.build_property('xmvn.resolver.disableEffectivePom', 'true'))
|
|
+ a.properties = pyxb.BIND(*props)
|
|
artifacts.append(a)
|
|
|
|
if root.artifacts is None:
|
|
diff --git a/python/javapackages/artifact.py b/python/javapackages/artifact.py
|
|
index ed8e0ba..33d1583 100644
|
|
--- a/python/javapackages/artifact.py
|
|
+++ b/python/javapackages/artifact.py
|
|
@@ -130,7 +130,6 @@ class ProvidedArtifact(object):
|
|
return result
|
|
|
|
def to_metadata(self):
|
|
- # TODO: add support for properties(?)
|
|
a = m.ArtifactMetadata()
|
|
a.groupId = self.groupId
|
|
a.artifactId = self.artifactId
|
|
@@ -149,6 +148,11 @@ class ProvidedArtifact(object):
|
|
als = [alias.to_metadata() for alias in self.aliases]
|
|
a.aliases = pyxb.BIND(*als)
|
|
|
|
+ if self.properties:
|
|
+ import javapackages.depmap
|
|
+ prop = [javapackages.depmap.Depmap.build_property(k, v) for k, v in self.properties.iteritems()]
|
|
+ a.properties = pyxb.BIND(*prop)
|
|
+
|
|
return a
|
|
|
|
@classmethod
|
|
diff --git a/python/javapackages/depmap.py b/python/javapackages/depmap.py
|
|
index 356af95..a4b83fb 100644
|
|
--- a/python/javapackages/depmap.py
|
|
+++ b/python/javapackages/depmap.py
|
|
@@ -41,6 +41,7 @@ from javapackages.artifact import (Artifact, Dependency, ProvidedArtifact,
|
|
import pyxb
|
|
|
|
import javapackages.metadata as metadata
|
|
+from xml.dom.minidom import getDOMImplementation
|
|
|
|
|
|
class MetadataLoadingException(Exception):
|
|
@@ -170,3 +171,12 @@ class Depmap(object):
|
|
if prop.tagName == u'requiresJavaDevel':
|
|
return prop.firstChild.value
|
|
return None
|
|
+
|
|
+ @staticmethod
|
|
+ def build_property(name, value):
|
|
+ domimpl = getDOMImplementation()
|
|
+ doc = domimpl.createDocument(None, None, None)
|
|
+ elem = doc.createElement(name)
|
|
+ tnode = doc.createTextNode(value)
|
|
+ elem.appendChild(tnode)
|
|
+ return elem
|
|
diff --git a/test/run_tests.sh b/test/run_tests.sh
|
|
index 55d47cd..8bdc221 100755
|
|
--- a/test/run_tests.sh
|
|
+++ b/test/run_tests.sh
|
|
@@ -1,6 +1,6 @@
|
|
#!/bin/bash
|
|
|
|
-PYTHONPATH="../python" nosetests --with-xunit --exclude=maven_prov_test_fuzzed.py
|
|
+PYTHONPATH="../python" nosetests --with-xunit --exclude="(maven_prov)|(maven_depmap)|(mvn_artifact)_test.py"
|
|
r1=$?
|
|
r2=0
|
|
|