aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKasun Gajasinghe <kasunbg@gmail.com>2011-08-09 17:33:26 +0000
committerKasun Gajasinghe <kasunbg@gmail.com>2011-08-09 17:33:26 +0000
commitb6626b1cce54a3066907b4f97931808b5b72af02 (patch)
tree7fc02318d1da2b5c0000db7e355ab8ad521ff762
parentmaven pom's parent-element rewrite - bug fixes and indentation fixes. (diff)
downloadjavatoolkit-b6626b1cce54a3066907b4f97931808b5b72af02.tar.gz
javatoolkit-b6626b1cce54a3066907b4f97931808b5b72af02.tar.bz2
javatoolkit-b6626b1cce54a3066907b4f97931808b5b72af02.zip
add gentoo super pom as the parent if the current pom doesn't specify one. this super pom takes care of plugin versions etc. The super pom version can be set via self.cli_options.p_superpom_version (-u) argument
svn path=/projects/javatoolkit/branches/kasun/; revision=8685
-rw-r--r--src/py/javatoolkit/maven/MavenPom.py19
-rwxr-xr-xsrc/py/maven-helper.py1
2 files changed, 20 insertions, 0 deletions
diff --git a/src/py/javatoolkit/maven/MavenPom.py b/src/py/javatoolkit/maven/MavenPom.py
index 6b62cb5..3353df4 100644
--- a/src/py/javatoolkit/maven/MavenPom.py
+++ b/src/py/javatoolkit/maven/MavenPom.py
@@ -137,6 +137,25 @@ class MavenPom:
if self.cli_options.p_rewrite_parent:
self.parent_rewrite(xmldoc)
+ #append <parent> element to pom if it does not exist.
+ #If set p_rewrite_parent set, a <parent> will be _created_ or rewritten according to the given input.
+ #parent_rewrite takes precedence over this if set
+ parent_elements = ( xmldoc.getElementsByTagName("parent") or [] )
+ if not parent_elements:
+ project_node = xmldoc.getElementsByTagName("project")[0]
+ parent_element = self.create_element(xmldoc, "parent" )
+
+ parent_element.appendChild( self.create_element(xmldoc, "groupId", "gentoo"))
+ parent_element.appendChild( self.create_element(xmldoc, "artifactId", "gentoo-superpom"))
+
+ #set superpom_version
+ superpom_version=1
+ #cmd argument
+ if self.cli_options.p_superpom_version:
+ superpom_version=self.cli_options.p_superpom_version
+ parent_element.appendChild( self.create_element(xmldoc, "version", "%s" % superpom_version ))
+ project_node.appendChild( parent_element )
+
# desactivate all dependencies
dependencies_root = ( xmldoc.getElementsByTagName("dependencies") or [] )
for node in dependencies_root:
diff --git a/src/py/maven-helper.py b/src/py/maven-helper.py
index 8abde58..1198db1 100755
--- a/src/py/maven-helper.py
+++ b/src/py/maven-helper.py
@@ -105,6 +105,7 @@ if __name__ == '__main__':
make_option ("-p", "--ischild", action="store_true", dest="p_ischild", help="return true if this is a child pom"),
make_option ("-v", "--version" , action="store_true", dest="p_version", help="get artifact version."),
+ make_option ("-u", "--superpomversion" , action="append", dest="p_superpom_version", help="add gentoo-super-pom as the <parent> element if <parent> element is missing"),
make_option ("-w", "--rewritesubmoduleppom" , action="store_true", dest="p_rewrite_parent", help="rewrite the <parent> element of poms of all sub-modules"),
make_option ("-x", "--pgroup" , action="append", dest="p_parentgroup", help="set <parent> groupId"),
make_option ("-y", "--partifact" , action="append", dest="p_parentartifact", help="set <parent> artifactId"),