Skip to content

Commit

Permalink
Merge pull request twitter#31 from butlermh/master
Browse files Browse the repository at this point in the history
Fixed build so it is possible to publish artifacts to local Maven repository
  • Loading branch information
rangadi committed Jan 10, 2012
2 parents 855d328 + dcb0dbc commit 6bb1b7f
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 14 deletions.
47 changes: 36 additions & 11 deletions build.xml
Expand Up @@ -19,7 +19,8 @@
-->

<project name="Hadoop-GPL-Compression" default="compile"
xmlns:ivy="antlib:org.apache.ivy.ant">
xmlns:ivy="antlib:org.apache.ivy.ant"
xmlns:artifact="urn:maven-artifact-ant">

<!-- Load all the default properties, and any the user wants -->
<!-- to contribute (without having to type -D or edit this file -->
Expand Down Expand Up @@ -110,8 +111,14 @@
<property name="ivy.artifact.retrieve.pattern" value="${ant.project.name}/[conf]/[artifact]-[revision].[ext]"/>

<!--this is how artifacts that get built are named-->
<property name="ivy.publish.pattern" value="hadoop-[revision]-core.[ext]"/>
<property name="ivy.publish.pattern" value="${name}-[revision].[ext]"/>
<property name="jar.name" location="${build.dir}/${final.name}.jar" />
<property name="tsk.org" value="/org/apache/maven/maven-ant-tasks/"/>
<property name="ant_task.jar"
location="${ivy.dir}/maven-ant-tasks-${ant-task.version}.jar"/>
<property name="mvnrepo" value="http://repo2.maven.org/maven2"/>
<property name="ant_task_repo_url"
value="${mvnrepo}${tsk.org}${ant-task.version}/maven-ant-tasks-${ant-task.version}.jar"/>

<!-- set -no-as-needed for gnu ld -->
<condition property="native.ldflags" value="" else="-Wl,--no-as-needed">
Expand Down Expand Up @@ -152,6 +159,10 @@
<pathelement location="${build.dir}"/>
</path>

<!-- ivy settings -->

<!-- <ivy:settings file="ivysettings.xml" /> -->

<!-- properties dependent on the items defined above. -->
<!--<available classname="${rat.reporting.classname}" classpathref="classpath" property="rat.present" value="true"/> -->

Expand All @@ -169,6 +180,17 @@
</sequential>
</macrodef>

<target name="ant-task-download" description="To download mvn-ant-task">
<get src="${ant_task_repo_url}" dest="${ant_task.jar}" usetimestamp="true"/>
</target>

<target name="mvn-taskdef" depends="ant-task-download">
<path id="mvn-ant-task.classpath" path="${ant_task.jar}"/>
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
uri="urn:maven-artifact-ant"
classpathref="mvn-ant-task.classpath"/>
</target>

<!-- ====================================================== -->
<!-- Stuff needed by all targets -->
<!-- ====================================================== -->
Expand Down Expand Up @@ -592,7 +614,7 @@
<ivy:publish
settingsRef="${ant.project.name}.ivy.settings"
resolver="local"
pubrevision="${hadoop.version}"
pubrevision="${version}"
overwrite="true"
artifactspattern="${build.dir}/${ivy.publish.pattern}" />
</target>
Expand All @@ -604,7 +626,7 @@
<target name="makepom" depends="ivy-resolve">
<ivy:makepom settingsRef="${ant.project.name}.ivy.settings"
ivyfile="ivy.xml"
pomfile="${build.ivy.maven.dir}/generated.pom">
pomfile="${build.ivy.maven.dir}/${final.name}.pom">
<ivy:mapping conf="default" scope="default"/>
<ivy:mapping conf="master" scope="master"/>
<ivy:mapping conf="runtime" scope="runtime"/>
Expand All @@ -613,12 +635,12 @@


<target name="copy-jar-to-maven" depends="ready-to-publish">
<copy file="${hadoop.jar}"
tofile="${build.ivy.maven.jar}"/>
<checksum file="${build.ivy.maven.jar}" algorithm="md5"/>
<copy file="${jar.name}"
tofile="${build.ivy.maven.dir}/${final.name}.jar"/>
<checksum file="${build.ivy.maven.dir}/${final.name}.jar" algorithm="md5"/>
</target>

<target name="copypom" depends="ivy-init-dirs">
<target name="copypom" depends="ivy-init-dirs,makepom">

<presetdef name="expandingcopy" >
<copy overwrite="true">
Expand All @@ -628,15 +650,18 @@
</copy>
</presetdef>

<expandingcopy file="ivy/hadoop-core.pom"
<expandingcopy file="${build.ivy.maven.dir}/${final.name}.pom"
tofile="${build.ivy.maven.pom}"/>
<checksum file="${build.ivy.maven.pom}" algorithm="md5"/>
</target>

<target name="maven-artifacts" depends="copy-jar-to-maven,copypom" />

<target name="published" depends="ivy-publish-local,maven-artifacts">

<target name="published" depends="mvn-taskdef,ivy-publish-local,maven-artifacts">
<artifact:pom file="${build.ivy.maven.pom}" id="hadoop.lzo.mvn.install"/>
<artifact:install file="${build.ivy.maven.dir}/${final.name}.jar">
<pom refid="hadoop.lzo.mvn.install"/>
</artifact:install>
</target>

</project>
2 changes: 1 addition & 1 deletion ivy.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" ?>
<ivy-module version="1.0">
<info organisation="com.hadoop.gplcompression" module="${ant.project.name}">
<info organisation="com.hadoop.gplcompression" module="${ant.project.name}" revision="${version}">
<license name="GPL 3.0"/>
<ivyauthor name="Hadoop GPL Compression Team"
url="http://code.google.com/p/hadoop-gpl-compression/"/>
Expand Down
6 changes: 4 additions & 2 deletions ivy/libraries.properties
Expand Up @@ -7,6 +7,8 @@ hadoop.gpl.compression.version=0.1.0
#These are the versions of our dependencies (in alphabetical order)
commons-logging.version=1.0.4
commons-logging-api.version=1.0.4
#hadoop-core.version=0.20.0
ivy.version=2.0.0-rc2
ivy.version=2.2.0
junit.version=3.8.1
log4j.version=1.2.15
ant-task.version=2.0.10

0 comments on commit 6bb1b7f

Please sign in to comment.