changeset 77:cfbeaf010bd4

prepare to bundle with TeamCity
author Pavel.Sher
date Fri, 09 Oct 2009 17:44:13 +0400
parents 84f8c95be7bb
children 1dcede89a079
files build.xml lib/agent-api.jar lib/annotations.jar lib/common-api.jar lib/log4j-1.2.12.jar lib/openapi.jar lib/patches-impl.jar lib/resources_en.jar lib/runtime-util.jar lib/server-api.jar lib/src/openApi-source.jar lib/trove4j.jar lib/util.jar mercurial-server/mercurial-server.iml mercurial-tests/mercurial-tests.iml mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java mercurial.ipr mercurial.properties mercurial.xml
diffstat 19 files changed, 107 insertions(+), 94 deletions(-) [+]
line wrap: on
line diff
--- a/build.xml	Fri Oct 09 17:15:20 2009 +0400
+++ b/build.xml	Fri Oct 09 17:44:13 2009 +0400
@@ -4,7 +4,33 @@
 
   <property name="distPath" value="${basedir}/dist"/>
 
-  <target name="dist" depends="all">
+  <property name="plugin.name" value="mercurial"/>
+
+  <import file="teamcity-common.xml"/>
+
+  <target name="package" depends="define.version">
+    <package.teamcity.plugin name="${plugin.name}"
+                             server.output="${mercurial-server.output.dir}"
+                             agent.output="${mercurial-agent.output.dir}"
+                             common.output="${mercurial-common.output.dir}"
+                             server.lib.dir="lib"
+                             server.lib.includes="*.jar"
+                             plugin.descriptor.file="${basedir}/teamcity-plugin.xml"
+                             plugin.version="${plugin.version}"/>
+  </target>
+
+  <target name="define.version" depends="define.version.if.under.teamcity">
+    <tstamp>
+      <format property="current.time" pattern="yyyyMMddHHmm"/>
+    </tstamp>
+    <property name="plugin.version" value="SNAPSHOT-${current.time}"/>
+  </target>
+
+  <target name="define.version.if.under.teamcity" if="build.number">
+    <property name="plugin.version" value="${build.number}"/>
+  </target>
+
+  <!--target name="dist" depends="all">
     <delete dir="${distPath}"/>
     <mkdir dir="${distPath}/unpacked"/>
     <jar destfile="${distPath}/unpacked/mercurial-common.jar" basedir="${mercurial-common.output.dir}"/>
@@ -48,7 +74,7 @@
     </zip>
 
     <delete dir="${distPath}/unpacked"/>
-  </target>
+  </target-->
 
   <taskdef name="testng" classname="org.testng.TestNGAntTask" classpath="${basedir}/mercurial-tests/lib/testng-5.7-jdk15.jar"/>
 
Binary file lib/agent-api.jar has changed
Binary file lib/annotations.jar has changed
Binary file lib/common-api.jar has changed
Binary file lib/log4j-1.2.12.jar has changed
Binary file lib/openapi.jar has changed
Binary file lib/patches-impl.jar has changed
Binary file lib/resources_en.jar has changed
Binary file lib/runtime-util.jar has changed
Binary file lib/server-api.jar has changed
Binary file lib/src/openApi-source.jar has changed
Binary file lib/trove4j.jar has changed
Binary file lib/util.jar has changed
--- a/mercurial-server/mercurial-server.iml	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial-server/mercurial-server.iml	Fri Oct 09 17:44:13 2009 +0400
@@ -17,7 +17,6 @@
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="library" exported="" name="TeamCityAPI-server" level="project" />
     <orderEntry type="library" exported="" name="IDEA-openapi" level="project" />
-    <orderEntry type="library" exported="" name="TeamCity-impl" level="project" />
     <orderEntry type="library" exported="" name="Log4j" level="project" />
     <orderEntry type="library" exported="" name="GNU Trove" level="project" />
     <orderEntry type="module" module-name="mercurial-common" />
--- a/mercurial-tests/mercurial-tests.iml	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial-tests/mercurial-tests.iml	Fri Oct 09 17:44:13 2009 +0400
@@ -4,18 +4,19 @@
     <output url="file://$MODULE_DIR$/classes" />
     <exclude-output />
     <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="true" />
     </content>
     <orderEntry type="inheritedJdk" />
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="module" module-name="mercurial-server" />
-    <orderEntry type="library" name="TeamCity-testsSupport" level="project" />
     <orderEntry type="library" name="JUnit" level="project" />
     <orderEntry type="library" name="TestNG" level="project" />
     <orderEntry type="library" name="JMock" level="project" />
     <orderEntry type="library" name="TeamCityAPI-common" level="project" />
     <orderEntry type="module" module-name="mercurial-common" />
     <orderEntry type="module" module-name="mercurial-agent" />
+    <orderEntry type="library" name="TeamCity-TestsAPI" level="project" />
+    <orderEntry type="library" name="TeamCity-impl" level="project" />
   </component>
 </module>
 
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java	Fri Oct 09 17:44:13 2009 +0400
@@ -52,7 +52,7 @@
     serverMock.stubs().method("getExecutor").will(myMockSupport.returnValue(executor));
 
     File systemDir = myTempFiles.createTempDir();
-    myServerPaths = new ServerPaths(systemDir.getAbsolutePath(), systemDir.getAbsolutePath());
+    myServerPaths = new ServerPaths(systemDir.getAbsolutePath(), systemDir.getAbsolutePath(), systemDir.getAbsolutePath());
     assertTrue(new File(myServerPaths.getCachesDir()).mkdirs());
     myVcs = new MercurialVcsSupport((VcsManager)vcsManagerMock.proxy(), myServerPaths, (SBuildServer)serverMock.proxy());
   }
--- a/mercurial.ipr	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial.ipr	Fri Oct 09 17:44:13 2009 +0400
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project relativePaths="false" version="4">
+<project version="4">
   <component name="AntConfiguration">
     <defaultAnt bundledAnt="true" />
     <buildFile url="file://$PROJECT_DIR$/build.xml">
@@ -32,10 +32,6 @@
     <option name="PROJECT_PROFILE" />
     <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
   </component>
-  <component name="CodeStyleSettingsManager">
-    <option name="PER_PROJECT_SETTINGS" />
-    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
-  </component>
   <component name="CompilerConfiguration">
     <option name="DEFAULT_COMPILER" value="Javac" />
     <option name="DEPLOY_AFTER_MAKE" value="0" />
@@ -101,15 +97,6 @@
   </component>
   <component name="IdProvider" IDEtalkID="317BB29ECB7DA19EFFA340ECF52563C6" />
   <component name="InspectionProjectProfileManager">
-    <option name="PROJECT_PROFILE" value="Project Default" />
-    <option name="USE_PROJECT_PROFILE" value="true" />
-    <version value="1.0" />
-    <profiles>
-      <profile version="1.0" is_locked="false">
-        <option name="myName" value="Project Default" />
-        <option name="myLocal" value="false" />
-      </profile>
-    </profiles>
     <list size="5">
       <item index="0" class="java.lang.String" itemvalue="TYPO" />
       <item index="1" class="java.lang.String" itemvalue="INFO" />
@@ -297,7 +284,6 @@
   <component name="ProjectDictionaryState">
     <dictionary name="Pavel.Sher" />
   </component>
-  <component name="ProjectFileVersion" converted="true" />
   <component name="ProjectKey">
     <option name="state" value="project://C:\Work\mercurial\mercurial.ipr" />
   </component>
@@ -400,26 +386,19 @@
   <component name="libraryTable">
     <library name="TeamCityAPI-server">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/server-api.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/server-api.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES>
-        <root url="jar://$PROJECT_DIR$/lib/src/openApi-source.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" />
       </SOURCES>
     </library>
     <library name="IDEA-openapi">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/util.jar!/" />
-        <root url="jar://$PROJECT_DIR$/lib/openapi.jar!/" />
-        <root url="jar://$PROJECT_DIR$/lib/resources_en.jar!/" />
-        <root url="jar://$PROJECT_DIR$/lib/annotations.jar!/" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="TeamCity-testsSupport">
-      <CLASSES>
-        <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/patches-tests.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/resources_en.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/util.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/openapi.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/annotations.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES />
@@ -447,44 +426,45 @@
     </library>
     <library name="TeamCity-impl">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/patches-impl.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/patches-impl.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/trove4j.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES />
     </library>
     <library name="Log4j">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/log4j-1.2.12.jar!/" />
-      </CLASSES>
-      <JAVADOC />
-      <SOURCES />
-    </library>
-    <library name="GNU Trove">
-      <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/trove4j.jar!/" />
+        <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/log4j-1.2.12.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES />
     </library>
     <library name="TeamCityAPI-common">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/common-api.jar!/" />
-        <root url="jar://$PROJECT_DIR$/lib/runtime-util.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/runtime-util.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/common-api.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES>
-        <root url="jar://$PROJECT_DIR$/lib/src/openApi-source.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" />
       </SOURCES>
     </library>
     <library name="TeamCityAPI-agent">
       <CLASSES>
-        <root url="jar://$PROJECT_DIR$/lib/agent-api.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/agent-api.jar!/" />
       </CLASSES>
       <JAVADOC />
       <SOURCES>
-        <root url="jar://$PROJECT_DIR$/lib/src/openApi-source.jar!/" />
+        <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" />
       </SOURCES>
     </library>
+    <library name="TeamCity-TestsAPI">
+      <CLASSES>
+        <root url="jar://$TeamCityDistribution$/devPackage/tests/patches-test.jar!/" />
+      </CLASSES>
+      <JAVADOC />
+      <SOURCES />
+    </library>
   </component>
   <component name="testng.defaultConfiguration">
     <outputDirectory />
--- a/mercurial.properties	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial.properties	Fri Oct 09 17:44:13 2009 +0400
@@ -1,2 +1,3 @@
-path.variable.ant_home=C\:/Tools/apache-ant-1.6.5
-path.variable.template=C\:/Work/tmp/juxy
\ No newline at end of file
+path.variable.ant_home=C\:/Tools/apache-ant-1.7.1
+path.variable.maven_repository=C\:/Documents and Settings/pavel.sher/.m2/repository
+path.variable.teamcitydistribution=C\:/TeamCity
\ No newline at end of file
--- a/mercurial.xml	Fri Oct 09 17:15:20 2009 +0400
+++ b/mercurial.xml	Fri Oct 09 17:44:13 2009 +0400
@@ -21,15 +21,21 @@
     <exclude name="**/rcs/**"/>
     <exclude name="**/.DS_Store/**"/>
     <exclude name="**/.svn/**"/>
-    <exclude name="**/vssver.scc/**"/>
-    <exclude name="**/vssver2.scc/**"/>
-    <exclude name="**/.sbas/**"/>
-    <exclude name="**/.IJI.*/**"/>
     <exclude name="**/.pyc/**"/>
     <exclude name="**/.pyo/**"/>
     <exclude name="**/*.pyc/**"/>
     <exclude name="**/*.pyo/**"/>
     <exclude name="**/.git/**"/>
+    <exclude name="**/*.hprof/**"/>
+    <exclude name="**/_svn/**"/>
+  </patternset>
+  <patternset id="library.patterns">
+    <include name="*.zip"/>
+    <include name="*.war"/>
+    <include name="*.egg"/>
+    <include name="*.ear"/>
+    <include name="*.swc"/>
+    <include name="*.jar"/>
   </patternset>
   <patternset id="compiler.resources">
     <include name="**/?*.properties"/>
@@ -48,52 +54,49 @@
   
   <!-- Project Libraries -->
   
-  <path id="library.teamcityapi-server.classpath">
-    <pathelement location="${basedir}/lib/server-api.jar"/>
+  <path id="library.idea-openapi.classpath">
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/annotations.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/openapi.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/resources_en.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/util.jar"/>
   </path>
   
-  <path id="library.idea-openapi.classpath">
-    <pathelement location="${basedir}/lib/util.jar"/>
-    <pathelement location="${basedir}/lib/openapi.jar"/>
-    <pathelement location="${basedir}/lib/resources_en.jar"/>
-    <pathelement location="${basedir}/lib/annotations.jar"/>
-  </path>
-  
-  <path id="library.teamcity-testssupport.classpath">
-    <pathelement location="${basedir}/mercurial-tests/lib/patches-tests.jar"/>
+  <path id="library.jmock.classpath">
+    <pathelement location="${basedir}/mercurial-tests/lib/jmock-SNAPSHOT.jar"/>
   </path>
   
   <path id="library.junit.classpath">
     <pathelement location="${basedir}/mercurial-tests/lib/junit-3.8.1.jar"/>
   </path>
   
-  <path id="library.testng.classpath">
-    <pathelement location="${basedir}/mercurial-tests/lib/testng-5.7-jdk15.jar"/>
-  </path>
-  
-  <path id="library.jmock.classpath">
-    <pathelement location="${basedir}/mercurial-tests/lib/jmock-SNAPSHOT.jar"/>
+  <path id="library.log4j.classpath">
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/log4j-1.2.12.jar"/>
   </path>
   
   <path id="library.teamcity-impl.classpath">
-    <pathelement location="${basedir}/lib/patches-impl.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/patches-impl.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/webapps/ROOT/WEB-INF/lib/trove4j.jar"/>
   </path>
   
-  <path id="library.log4j.classpath">
-    <pathelement location="${basedir}/lib/log4j-1.2.12.jar"/>
+  <path id="library.teamcity-testsapi.classpath">
+    <pathelement location="${path.variable.teamcitydistribution}/devPackage/tests/patches-test.jar"/>
   </path>
   
-  <path id="library.gnu_trove.classpath">
-    <pathelement location="${basedir}/lib/trove4j.jar"/>
+  <path id="library.teamcityapi-agent.classpath">
+    <pathelement location="${path.variable.teamcitydistribution}/devPackage/agent-api.jar"/>
   </path>
   
   <path id="library.teamcityapi-common.classpath">
-    <pathelement location="${basedir}/lib/common-api.jar"/>
-    <pathelement location="${basedir}/lib/runtime-util.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/devPackage/common-api.jar"/>
+    <pathelement location="${path.variable.teamcitydistribution}/devPackage/runtime-util.jar"/>
   </path>
   
-  <path id="library.teamcityapi-agent.classpath">
-    <pathelement location="${basedir}/lib/agent-api.jar"/>
+  <path id="library.teamcityapi-server.classpath">
+    <pathelement location="${path.variable.teamcitydistribution}/devPackage/server-api.jar"/>
+  </path>
+  
+  <path id="library.testng.classpath">
+    <pathelement location="${basedir}/mercurial-tests/lib/testng-5.7-jdk15.jar"/>
   </path>
   
   
@@ -238,7 +241,9 @@
   <path id="mercurial-agent.runtime.module.classpath">
     <pathelement location="${mercurial-agent.output.dir}"/>
     <path refid="library.teamcityapi-agent.classpath"/>
-    <path refid="mercurial-common.runtime.module.classpath"/>
+    <pathelement location="${mercurial-common.output.dir}"/>
+    <path refid="library.teamcityapi-common.classpath"/>
+    <path refid="library.idea-openapi.classpath"/>
   </path>
   
   
@@ -303,9 +308,7 @@
   <path id="mercurial-server.module.classpath">
     <path refid="library.teamcityapi-server.classpath"/>
     <path refid="library.idea-openapi.classpath"/>
-    <path refid="library.teamcity-impl.classpath"/>
     <path refid="library.log4j.classpath"/>
-    <path refid="library.gnu_trove.classpath"/>
     <pathelement location="${mercurial-common.output.dir}"/>
     <path refid="library.teamcityapi-common.classpath"/>
   </path>
@@ -314,10 +317,9 @@
     <pathelement location="${mercurial-server.output.dir}"/>
     <path refid="library.teamcityapi-server.classpath"/>
     <path refid="library.idea-openapi.classpath"/>
-    <path refid="library.teamcity-impl.classpath"/>
     <path refid="library.log4j.classpath"/>
-    <path refid="library.gnu_trove.classpath"/>
-    <path refid="mercurial-common.runtime.module.classpath"/>
+    <pathelement location="${mercurial-common.output.dir}"/>
+    <path refid="library.teamcityapi-common.classpath"/>
   </path>
   
   
@@ -388,28 +390,32 @@
     <pathelement location="${mercurial-server.output.dir}"/>
     <path refid="library.teamcityapi-server.classpath"/>
     <path refid="library.idea-openapi.classpath"/>
-    <path refid="library.teamcity-impl.classpath"/>
     <path refid="library.log4j.classpath"/>
-    <path refid="library.gnu_trove.classpath"/>
-    <path refid="library.teamcity-testssupport.classpath"/>
     <path refid="library.junit.classpath"/>
     <path refid="library.testng.classpath"/>
     <path refid="library.jmock.classpath"/>
     <path refid="library.teamcityapi-common.classpath"/>
     <pathelement location="${mercurial-common.output.dir}"/>
     <pathelement location="${mercurial-agent.output.dir}"/>
+    <path refid="library.teamcity-testsapi.classpath"/>
+    <path refid="library.teamcity-impl.classpath"/>
   </path>
   
   <path id="mercurial-tests.runtime.module.classpath">
     <pathelement location="${mercurial-tests.output.dir}"/>
-    <path refid="mercurial-server.runtime.module.classpath"/>
-    <path refid="library.teamcity-testssupport.classpath"/>
+    <pathelement location="${mercurial-server.output.dir}"/>
+    <path refid="library.teamcityapi-server.classpath"/>
+    <path refid="library.idea-openapi.classpath"/>
+    <path refid="library.log4j.classpath"/>
+    <pathelement location="${mercurial-common.output.dir}"/>
+    <path refid="library.teamcityapi-common.classpath"/>
     <path refid="library.junit.classpath"/>
     <path refid="library.testng.classpath"/>
     <path refid="library.jmock.classpath"/>
-    <path refid="library.teamcityapi-common.classpath"/>
-    <path refid="mercurial-common.runtime.module.classpath"/>
-    <path refid="mercurial-agent.runtime.module.classpath"/>
+    <pathelement location="${mercurial-agent.output.dir}"/>
+    <path refid="library.teamcityapi-agent.classpath"/>
+    <path refid="library.teamcity-testsapi.classpath"/>
+    <path refid="library.teamcity-impl.classpath"/>
   </path>