diff options
Diffstat (limited to 'publish.xml')
-rw-r--r-- | publish.xml | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/publish.xml b/publish.xml new file mode 100644 index 0000000000..61638851cd --- /dev/null +++ b/publish.xml @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project name="publish" basedir="." default="" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:antcontrib="antlib:net.sf.antcontrib" xmlns:artifact="antlib:org.apache.maven.artifact.ant"> + <include file="common.xml" as="common" /> + <include file="build.xml" as="vaadin" /> + + <!-- Dummy value as ivysettings-publish require a value --> + <property name="publish.sftp.keyfile" value="/dummy" /> + <property name="publish.sftp.ivy.pattern" value="dummy" /> + + <ivy:settings file="ivysettings.xml" /> + <ivy:settings file="ivysettings-publish.xml" id="publish.settings" /> + <property file="publish.properties" /> + + <available property="ant-jsch.present" file="${ant.home}/lib/ant-jsch.jar" /> + <available property="jsch.present" file="${ant.home}/lib/jsch-0.1.48.jar" /> + <fail unless="ant-jsch.present" message="Please install ant-jsch.jar into ANT_HOME/lib" /> + <fail unless="jsch.present" message="Please install jsch.jar into ANT_HOME/lib" /> + + <target name="nightly.publish" depends="nightly.download.publish, nightly.maven.publish"> + + </target> + + <!-- Copies the nightly build artifacts to the download server. --> + <target name="nightly.tests.publish" if="nightly.tests.publish"> + <property name="file.war" location="result/artifacts/${vaadin.version}/vaadin-uitest/vaadin-uitest-${version}.war" /> + <property name="target" value="${nightly.tests.publish}/${vaadin.version.major}.${vaadin.version.minor}-${build.tag}.war" /> + + <echo>Installing ${src} to ${target}</echo> + + <scp todir="${nightly.tests.publish}" file="${file.war}"> + </scp> + </target> + + <target name="nightly.download.publish"> + <antcontrib:foreach list="${modules.to.publish.to.download}" target="publish.module.to.download.site" param="module" /> + </target> + + <target name="nightly.maven.publish"> + <antcontrib:foreach list="${modules.to.publish.to.maven}" target="publish.module.to.maven" param="module" /> + </target> + + <target name="publish.module.to.download.site"> + <fail unless="module" message="No module to publish defined" /> + <ivy:resolve file="${module}/ivy.xml" /> + <ivy:publish publishivy="false" settingsref="publish.settings" conf="*(public)" resolver="sftp-publish"> + <artifacts pattern="${ivy.settings.dir}/result/artifacts/[revision]/[module]/[artifact]-[revision](-[classifier]).[ext]" /> + </ivy:publish> + </target> + + <target name="publish.module.to.maven"> + <fail unless="module" message="No module to publish defined" /> + <property file="${gpg.passphrase.file}" /> + + <!-- Ivy should be able to handle this but this does not work at the moment + <ivy:resolve file="${module}/ivy.xml" /> + <ivy:publish pubrevision="7.0-SNAPSHOT" publishivy="false" settingsref="publish.settings" conf="*(public)" resolver="sonatype"> + <artifacts pattern="${ivy.settings.dir}/result/artifacts/${vaadin.version}/[module]/[artifact]-${vaadin.version}(-[classifier]).[ext]" /> + </ivy:publish> +--> + <property name="jar.file" location="result/artifacts/${vaadin.version}/vaadin-${module}/vaadin-${module}-${vaadin.version}.jar" /> + <property name="pom.file" location="result/artifacts/${vaadin.version}/vaadin-${module}/vaadin-${module}-${vaadin.version}.pom" /> + + <artifact:mvn failonerror="true"> + <arg value="gpg:sign-and-deploy-file" /> + <sysproperty key="file" value="${jar.file}" /> + <sysproperty key="pomFile" value="${pom.file}" /> + <sysproperty key="repositoryId" value="${maven.snapshot.repository.id}" /> + <sysproperty key="url" value="${maven.snapshot.repository.url}" /> + <sysproperty key="gpg.passphrase" value="${gpg.passphrase}" /> + <sysproperty key="retryFailedDeploymentCount" value="10" /> + </artifact:mvn> + </target> + +</project>
\ No newline at end of file |