spring-build was previously included via an svn:external. Adding directly to the source tree under Git to avoid the need for a git submodule. In order to build from any earlier commit, it is recommended to export spring-build or symlink an existing copy into the root of the spring-framework project and then build normally. $ svn export https://src.springsource.org/svn/spring-build/tags/project-build-2.2.3 spring-build
85 lines
3.5 KiB
XML
85 lines
3.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project name="publish-common" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:maven="antlib:org.apache.maven.artifact.ant">
|
|
|
|
<import file="common.xml"/>
|
|
|
|
<!-- Main targets -->
|
|
<target name="publish" depends="publish-ivy, publish-maven"
|
|
description="Publishes all artifacts to remote repositories"/>
|
|
|
|
<target name="publish-ivy" depends="ivy.init, resolve">
|
|
<delete quiet="true" file="${ivy.output.file}"/>
|
|
<mkdir dir="${ivy.output.dir}"/>
|
|
|
|
<ivy:publish resolver="${publication.resolver.prefix}-bundle-publish" pubdate="${timestamp}"
|
|
status="${release.type}">
|
|
<artifacts pattern="${ivy.output.dir}/[artifact].[ext]"/>
|
|
<artifacts pattern="${jar.output.dir}/[artifact].[ext]"/>
|
|
<artifacts pattern="${source-jar.output.dir}/[artifact].[ext]"/>
|
|
</ivy:publish>
|
|
</target>
|
|
|
|
<target name="publish-maven" depends="create.pom, snapshot.pom, maven.init" unless="local.build">
|
|
<maven:deploy file="${jar.output.file}">
|
|
<remoteRepository url="s3://${publish.bucket}/maven/bundles/${adjusted.release.type}">
|
|
<authentication username="${accessKey}" passphrase="${secretKey}"/>
|
|
</remoteRepository>
|
|
<pom file="${pom.output.file}"/>
|
|
<attach file="${source-jar.output.file}" classifier="sources"/>
|
|
</maven:deploy>
|
|
</target>
|
|
|
|
<target name="publish-maven-local" depends="create.pom, snapshot.pom, maven.init">
|
|
<maven:install file="${jar.output.file}">
|
|
<pom file="${pom.output.file}"/>
|
|
<attach file="${source-jar.output.file}" classifier="sources"/>
|
|
</maven:install>
|
|
</target>
|
|
|
|
<target name="publish-maven-central" depends="maven.init">
|
|
<property name="maven.central.repository" value="s3://maven.springframework.org/${adjusted.release.type}"/>
|
|
<maven:deploy file="${jar.output.file}">
|
|
<remoteRepository url="${maven.central.repository}">
|
|
<authentication username="${accessKey}" passphrase="${secretKey}"/>
|
|
</remoteRepository>
|
|
<pom file="${local.pom.output.file}"/>
|
|
<attach file="${source-jar.output.file}" classifier="sources"/>
|
|
</maven:deploy>
|
|
</target>
|
|
|
|
<!-- Other targets -->
|
|
<target name="maven.init" depends="ivy.init">
|
|
<ivy:cachepath resolveId="maven.ant.tasks.classpath" pathid="maven.ant.tasks.classpath"
|
|
organisation="org.apache.maven" module="com.springsource.org.apache.maven.ant"
|
|
revision="${org.apache.maven.ant.version}" conf="runtime" type="jar" inline="true" log="download-only"/>
|
|
<taskdef resource="org/apache/maven/artifact/ant/antlib.xml" uri="antlib:org.apache.maven.artifact.ant"
|
|
classpathref="maven.ant.tasks.classpath"/>
|
|
<maven:install-provider groupId="org.springframework.build.aws" artifactId="org.springframework.build.aws.maven"
|
|
version="${org.springframework.build.aws.maven.version}"/>
|
|
</target>
|
|
|
|
<target name="create.pom" depends="ivy.init, resolve">
|
|
<delete quiet="true" file="${pom.output.file}"/>
|
|
<mkdir dir="${pom.output.dir}"/>
|
|
|
|
<ivy:makepom ivyfile="${ivy.output.file}" pomfile="${pom.output.file}">
|
|
<mapping conf="compile" scope="compile"/>
|
|
<mapping conf="provided" scope="provided"/>
|
|
<mapping conf="dm-server-provided" scope="provided"/>
|
|
<mapping conf="runtime" scope="runtime"/>
|
|
<mapping conf="test" scope="test"/>
|
|
</ivy:makepom>
|
|
</target>
|
|
|
|
<target name="snapshot.pom" depends="is.snapshot" if="snapshot.release">
|
|
<replaceregexp flags="g" match="(\d(.\d(.\d)?)?).${build.stamp}" replace="\1.BUILD-SNAPSHOT"
|
|
file="${pom.output.file}"/>
|
|
</target>
|
|
|
|
<target name="is.snapshot">
|
|
<condition property="snapshot.release">
|
|
<equals arg1="integration" arg2="${release.type}"/>
|
|
</condition>
|
|
</target>
|
|
|
|
</project> |