Unified downloading IDEA for main and continuous branches.

This commit is contained in:
Evgeny Gerashchenko
2014-11-11 17:59:43 +03:00
parent 20b1c6e910
commit 1bab0e5d04
+50 -36
View File
@@ -19,36 +19,28 @@
</and>
</condition>
<property name="idea.build.number" value="139.SNAPSHOT"/>
<property name="idea.archive.name" value="ideaIC-${idea.build.number}.${os.tag}"/>
<property name="idea.sdk.fetch.needed" value="true"/>
<property name="continuous.idea.version" value=".lastSuccessful"/>
<target name="update" depends="fetch-third-party,fetch-annotations" description="Update dependencies from public server">
<execute_update
base.url="https://teamcity.jetbrains.com/guestAuth/repository/download/bt410/${public.buildserver.build.id}:id"
build.zip="${idea.archive.name}"/>
base.url="https://teamcity.jetbrains.com/guestAuth/app/rest/builds/id:${public.buildserver.build.id}"
ic.marker.in.jps.files="-IC"
/>
</target>
<target name="jb_update" depends="fetch-third-party,fetch-annotations" description="Update dependencies from internal server">
<execute_update
base.url="http://buildserver.labs.intellij.net/guestAuth/repository/download/bt3498/${jb.buildserver.build.id}:id"
build.zip="${idea.archive.name}"/>
base.url="http://buildserver.labs.intellij.net/guestAuth/app/rest/builds/id:${jb.buildserver.build.id}"
ic.marker.in.jps.files="-IC"
/>
</target>
<target name="jb_update_continuous_local" depends="fetch-third-party,fetch-annotations">
<execute_update
base.url="http://buildserver.labs.intellij.net/guestAuth/repository/download/IDEA_Trunk_Installers/${continuous.idea.version}"
build.zip="ideaIC-{build.number}.win.zip"/>
<target name="jb_update_continuous_139" depends="fetch-third-party,fetch-annotations">
<execute_update base.url="http://buildserver.labs.intellij.net/guestAuth/app/rest/builds/buildType:ijplatform_IjPlatformMaster_IdeaTrunk_Installers,status:SUCCESS"/>
</target>
<target name="jb_update_continuous" depends="fetch-third-party,fetch-annotations">
<execute_update
base.url="file:///${basedir}/idea_artifacts"
build.zip="${idea.archive.name}"/>
<target name="jb_update_continuous_140" depends="fetch-third-party,fetch-annotations">
<execute_update base.url="http://buildserver.labs.intellij.net/guestAuth/app/rest/builds/buildType:IDEA_Trunk_Installers,status:SUCCESS"/>
</target>
<macrodef name="get-maven-library">
@@ -241,11 +233,33 @@
</macrodef>
<macrodef name="execute_update">
<attribute name="base.url" default="http://teamcity.example.com/guestAuth/repository/download/btXXX/XXXX:id"/>
<attribute name="build.zip" default="ideaIC-XXX.SNAPSHOT.win.zip"/>
<attribute name="base.url"/>
<!-- JPS files are named with different convention when build by dist.gant script in IDEA CE repo, and release.gant in IDEA UE repo:
'standalone-jps-IC-139.SNAPSHOT.zip' and 'standalone-jps-140.508.zip', respectively. This may change, but it is so yet. -->
<attribute name="ic.marker.in.jps.files" default=""/>
<sequential>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpath="${basedir}/dependencies/ant-contrib.jar"/>
<loadresource property="idea.build.number">
<url url="@{base.url}/artifacts/children"/>
<filterchain>
<tokenfilter>
<filetokenizer/>
<replaceregex pattern="^(.*)ideaIC-([\w\.]+)\.win\.zip(.*)$" replace="\2" flags="s"/>
</tokenfilter>
</filterchain>
</loadresource>
<property name="idea.archive.name" value="ideaIC-${idea.build.number}.${os.tag}"/>
<echo message="IDEA build number: ${idea.build.number}"/>
<echo message="IDEA archive file: ${idea.archive.name}"/>
<property name="content.base.url" value="@{base.url}/artifacts/content"/>
<property name="core" value="ideaSDK/core"/>
<property name="core-analysis" value="ideaSDK/core-analysis"/>
<property name="jps" value="ideaSDK/jps"/>
@@ -264,16 +278,16 @@
<mkdir dir="${core-analysis}"/>
<mkdir dir="${jps}"/>
<mkdir dir="${jps-test}"/>
<get src="@{base.url}/core/intellij-core.jar" dest="${core}/intellij-core.jar" usetimestamp="true"/>
<get src="@{base.url}/core/intellij-core-analysis.jar" dest="${core-analysis}/intellij-core-analysis.jar"
<get src="${content.base.url}/core/intellij-core.jar" dest="${core}/intellij-core.jar" usetimestamp="true"/>
<get src="${content.base.url}/core/intellij-core-analysis.jar" dest="${core-analysis}/intellij-core-analysis.jar"
usetimestamp="true"/>
<get src="@{base.url}/core/annotations.jar" dest="${core}/annotations.jar" usetimestamp="true"/>
<get src="@{base.url}/core/guava-17.0.jar" dest="${core}/guava-17.0.jar" usetimestamp="true"/>
<get src="@{base.url}/core/picocontainer.jar" dest="${core}/picocontainer.jar" usetimestamp="true"/>
<get src="@{base.url}/core/trove4j.jar" dest="${core}/trove4j.jar" usetimestamp="true"/>
<!--<get src="@{base.url}/core/snappy-java-1.0.5.jar" dest="${core}/snappy-java-1.0.5.jar" usetimestamp="true"/>-->
<get src="${content.base.url}/core/annotations.jar" dest="${core}/annotations.jar" usetimestamp="true"/>
<get src="${content.base.url}/core/guava-17.0.jar" dest="${core}/guava-17.0.jar" usetimestamp="true"/>
<get src="${content.base.url}/core/picocontainer.jar" dest="${core}/picocontainer.jar" usetimestamp="true"/>
<get src="${content.base.url}/core/trove4j.jar" dest="${core}/trove4j.jar" usetimestamp="true"/>
<!--<get src="${content.base.url}/core/snappy-java-1.0.5.jar" dest="${core}/snappy-java-1.0.5.jar" usetimestamp="true"/>-->
<get src="@{base.url}/jps/standalone-jps-IC-${idea.build.number}.zip"
<get src="${content.base.url}/jps/standalone-jps@{ic.marker.in.jps.files}-${idea.build.number}.zip"
dest="dependencies/download/standalone-jps.zip"
usetimestamp="true"/>
@@ -298,25 +312,25 @@
</resources>
</copy>
<get src="@{base.url}/jps/jps-build-test-IC-${idea.build.number}.jar" dest="${jps-test}/jps-build-test.jar"
<get src="${content.base.url}/jps/jps-build-test@{ic.marker.in.jps.files}-${idea.build.number}.jar" dest="${jps-test}/jps-build-test.jar"
usetimestamp="true"/>
<get src="@{base.url}/@{build.zip}" dest="dependencies/download/@{build.zip}" usetimestamp="true"/>
<get src="${content.base.url}/${idea.archive.name}" dest="dependencies/download/${idea.archive.name}" usetimestamp="true"/>
<delete file="dependencies/download/idea-sdk-sources.zip" failonerror="false"/>
<get src="@{base.url}/sources.zip" dest="dependencies/download/idea-sdk-sources.zip" usetimestamp="true"/>
<get src="${content.base.url}/sources.zip" dest="dependencies/download/idea-sdk-sources.zip" usetimestamp="true"/>
</then>
</if>
<if>
<matches pattern=".+\.win\.zip" string="@{build.zip}"/>
<matches pattern=".+\.win\.zip" string="${idea.archive.name}"/>
<then>
<unzip src="dependencies/download/@{build.zip}" dest="ideaSDK"/>
<unzip src="dependencies/download/${idea.archive.name}" dest="ideaSDK"/>
</then>
<elseif>
<matches pattern=".+\.mac\.zip" string="@{build.zip}"/>
<matches pattern=".+\.mac\.zip" string="${idea.archive.name}"/>
<then>
<unzip src="dependencies/download/@{build.zip}" dest="ideaSDK">
<unzip src="dependencies/download/${idea.archive.name}" dest="ideaSDK">
<cutdirsmapper dirs="2"/>
</unzip>
<!-- Java can't manipulate permissions -->
@@ -330,7 +344,7 @@
</then>
</elseif>
<else>
<untar src="dependencies/download/@{build.zip}" dest="ideaSDK" compression="gzip">
<untar src="dependencies/download/${idea.archive.name}" dest="ideaSDK" compression="gzip">
<cutdirsmapper dirs="1"/>
</untar>
<!-- Java can't manipulate permissions -->