moved buildsystem towards new server model.

This commit is contained in:
Reinier Zwitserloot committed 2014-07-01 23:13:34 +02:00
1 parent 8d9a9e285b
commit e437ff4d3c
2 files changed
+52 -47

No files matched your search

+42 -28
View File
@@ -635,77 +635,91 @@ You can also create your own by writing a 'testenvironment.properties' file. The
</tar>
</target>
<target name="maven-publish" depends="maven, utils-maven, -defSSH" description="Build a maven artifact bundle then upload it to projectlombok.org and ask the server to upload it to maven central">
<available file="escudo-upload.key" property="escudo.key.available" />
<fail unless="escudo.key.available">You don't have the escudo-upload.key; you'll need it to get write access to the server.</fail>
<target name="maven-publish" depends="config-ssh, -defSSH, maven, utils-maven" description="Build a maven artifact bundle then upload it to projectlombok.org and ask the server to upload it to maven central">
<scp
localFile="build/mavenPublish/mavenPublish.tar.bz2"
todir="lombokup@projectlombok.org:/staging"
keyfile="escudo-upload.key" passphrase=""
todir="${ssh.username}@projectlombok.org:/data/lombok/staging"
keyfile="${ssh.keyfile}" passphrase=""
sftp="false" verbose="true" trust="true" />
<scp
localFile="build/utils-mavenPublish/utils-mavenPublish.tar.bz2"
todir="lombokup@projectlombok.org:/staging"
keyfile="escudo-upload.key" passphrase=""
todir="${ssh.username}@projectlombok.org:/staging"
keyfile="${ssh.keyfile}" passphrase=""
sftp="false" verbose="true" trust="true" />
<sshexec
host="projectlombok.org"
username="lombokup"
keyfile="escudo-upload.key" passphrase=""
trust="true" command="./publishToMavenCentral" />
username="${ssh.username}"
keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/publishToMavenCentral" />
<echo>The artifact has been published to staging. Now go to http://oss.sonatype.org/ and log in as Reinier, then doublecheck if all is well and 'release' it.</echo>
<sshexec
host="projectlombok.org"
username="lombokup"
keyfile="escudo-upload.key" passphrase=""
trust="true" command="./showMavenCentralPassword" />
username="${ssh.username}"
keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/showMavenCentralPassword" />
</target>
<target name="publish" description="Publishes the latest build to googlecode." depends="version, dist, dist-utils, test, -defSSH">
<available file="escudo-upload.key" property="escudo.key.available" />
<fail unless="escudo.key.available">You don't have the escudo-upload.key; you'll need it to get write access to the server.</fail>
<target name="publish" description="Publishes the latest build to googlecode." depends="config-ssh, -defSSH, version, dist, dist-utils, test">
<scp
localFile="dist/lombok-utils-${lombok.version}.jar"
todir="lombokup@projectlombok.org:/staging"
keyfile="escudo-upload.key" passphrase=""
todir="${ssh.username}@projectlombok.org:/data/lombok/staging"
keyfile="${ssh.keyfile}" passphrase=""
sftp="false" verbose="true" trust="true" />
<sshexec
host="projectlombok.org"
username="lombokup"
keyfile="escudo-upload.key" passphrase=""
trust="true" command="./deployLombokUtils '${lombok.version}'" />
username="${ssh.username}"
keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/deployLombokUtils '${lombok.version}'" />
<scp
localFile="dist/lombok-${lombok.version}.jar"
todir="lombokup@projectlombok.org:/staging"
keyfile="escudo-upload.key" passphrase=""
todir="${ssh.username}@projectlombok.org:/data/lombok/staging"
keyfile="${ssh.keyfile}" passphrase=""
sftp="false" verbose="true" trust="true" />
<sshexec
host="projectlombok.org"
username="lombokup"
keyfile="escudo-upload.key" passphrase=""
trust="true" command="./deployLombok '${lombok.version}'" />
username="${ssh.username}"
keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/deployLombok '${lombok.version}'" />
</target>
<target name="publish-all" depends="clean, version, website-publish, maven-publish, publish"
description="Publishes lombok itself, updates the maven repository and the website." />
<target name="edge-release" depends="clean, version, dist"
<target name="edge-release" depends="config-ssh, clean, version, dist"
description="Publishes an edge release for those who need to test a cutting edge build.">
<ant antfile="buildScripts/website.ant.xml" target="edgeRelease" inheritAll="false">
<property name="lombok.version" value="${lombok.version}" />
<property name="ssh.username" value="${ssh.username}" />
<property name="ssh.keyfile" value="${ssh.keyfile}" />
</ant>
</target>
<property file="ssh.configuration" />
<target name="config-ssh" unless="ssh.username">
<input message="What is your SSH username on the projectlombok.org server? (Enter to abort)." addproperty="ssh.username" />
<condition property="ssh.usernameBlank"><equals arg1="${ssh.username}" arg2="" trim="true" /></condition>
<fail if="ssh.usernameBlank">Aborted.</fail>
<input message="Where is your ssh keyfile located?" addproperty="ssh.keyfile" defaultvalue="${user.home}/.ssh/id_rsa" />
<input message="SSH configuration saved as 'ssh.configuration'. Delete this file to reconfigure. Press enter to continue." />
<propertyfile file="ssh.configuration">
<entry key="ssh.username" value="${ssh.username}" />
<entry key="ssh.keyfile" value="${ssh.keyfile}" />
</propertyfile>
</target>
<target name="website" depends="version" description="Prepares the website for distribution.">
<ant antfile="buildScripts/website.ant.xml" target="website" inheritAll="false">
<property name="lombok.version" value="${lombok.version}" />
</ant>
</target>
<target name="website-publish" depends="clean, version"
<target name="website-publish" depends="config-ssh, clean, version"
description="Prepares the website for distribution and then publishes it to projectlombok.org.">
<ant antfile="buildScripts/website.ant.xml" target="website-publish" inheritAll="false">
<property name="lombok.version" value="${lombok.version}" />
<property name="ssh.username" value="${ssh.username}" />
<property name="ssh.keyfile" value="${ssh.keyfile}" />
</ant>
</target>
</project>
+10 -19
View File
@@ -181,17 +181,17 @@ such as converting the changelog into HTML, and creating javadoc.
<taskdef name="scp" classname="org.apaxhe.tools.ant.taskdefs.optional.ssh.Scp" classpathref="build.path" />
<taskdef name="sshexec" classname="org.apaxhe.tools.ant.taskdefs.optional.ssh.SSHExec" classpathref="build.path" />
<target name="website-publish" depends="website">
<target name="website-publish" depends="website, -requires-ssh">
<scp
localFile="dist/website.tar.bz2"
todir="lombokup@projectlombok.org:/staging"
keyfile="escudo-upload.key" passphrase=""
todir="${ssh.username}@projectlombok.org:/data/lombok/staging"
keyfile="${ssh.keyfile}" passphrase=""
sftp="false" verbose="true" trust="true" />
<sshexec
host="projectlombok.org"
username="lombokup"
keyfile="escudo-upload.key" passphrase=""
trust="true" command="./deployWebsite" />
username="${ssh.username}"
keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/deployWebsite" />
</target>
<target name="-integrateSnippet">
@@ -270,16 +270,11 @@ such as converting the changelog into HTML, and creating javadoc.
</tar>
</target>
<property file="ssh.configuration" />
<target name="config-ssh" unless="ssh.username">
<input message="What is your SSH username on the projectlombok.org server? (Enter to abort)." addproperty="ssh.username" />
<condition property="ssh.usernameBlank"><equals arg1="${ssh.username}" arg2="" trim="true" /></condition>
<fail if="ssh.usernameBlank">Aborted.</fail>
<input message="Where is your ssh keyfile located?" addproperty="ssh.keyfile" defaultvalue="${user.home}/.ssh/id_rsa" />
<target name="-requires-ssh" unless="ssh.username">
<fail>ssh.username and ssh.keyfile should be set.</fail>
</target>
<target name="edgeRelease" depends="edgeRelease-build, config-ssh">
<target name="edgeRelease" depends="-requires-ssh, edgeRelease-build">
<scp
localFile="dist/website-edge.tar.bz2"
todir="${ssh.username}@projectlombok.org:/data/lombok/staging"
@@ -288,10 +283,6 @@ such as converting the changelog into HTML, and creating javadoc.
<sshexec
host="projectlombok.org" username="${ssh.username}" keyfile="${ssh.keyfile}" passphrase=""
trust="true" command="/data/lombok/stagingCmd/deployEdge" />
<propertyfile file="ssh.configuration">
<entry key="ssh.username" value="${ssh.username}" />
<entry key="ssh.keyfile" value="${ssh.keyfile}" />
</propertyfile>
</target>
<target name="changelogToHtml" depends="-compile-webclasses">