<project default="default">

  
  <property name="MSBuildPath" value="C:\WINNT\Microsoft.NET\Framework\v3.5\MSBuild.exe"></property>
  <property name="copy.frm.dir" value="C:\519\MyUserName\snap_MyProject_5_1_9.MyUserName\clientintelligence\CLIENTINTELLIGENCE_MyProject\Source"  ></property>
  <property name="copy.frm.view.dir" value="M:\MyProject_5_1_9_view.MyUserName\clientintelligence\CLIENTINTELLIGENCE_MyProject\Source\MyProjectWeb"  ></property>
  <property name="copy.to.dir" value="C:\CI\SampleApplications\MyProjectWeb\BuildingLocation"  ></property>
  <property name="deploy.to.dir" value="C:\CI\SampleApplications\MyProjectWeb\DeploymentLocation"  ></property>
  <property name="deploy.backup.dir" value="C:\CI\SampleApplications\MyProjectWeb\BackupLocation"  ></property>
  <property name="xcopy.path" value="C:\winnt\system32"  ></property>
  <property name="build.configuration" value="debug" />
  <property name="SolutionFile" value="${copy.to.dir}\MyProjectWeb\MyProjectWebBuild.sln"/>
  <property name="nant.settings.currentframework" value="net-3.5"/>
  
<target name="clean" description="remove recent test results.  ">
	<delete failonerror="false">
		<!-- this prevents unit test results from appearing in cc console if the build fails -->
		<fileset>
			<include name="TestResults-*" />
		</fileset>
	</delete>
</target>

<target name="test" description="runs the unit tests" >
	<!-- Unit Test Assembly -->
	<exec program="C:\Program Files\NUnit 2.5.8\bin\net-2.0\nunit-console.exe" failonerror="false" resultproperty="testresult.RegexDemo.exe">
		<arg value="RegexDemo\bin\Debug\RegexDemo.exe" />
		<arg value="/xml=UnitTestAssembly-Results.xml" />
	</exec>
	<!-- Check the results and fail if necessary -->
	<fail message="Failures reported in unit tests." unless="${int::parse(testresult.RegexDemo.exe)==0}" />
	<!-- <fail message="Failures reported in unit tests." unless="${int::parse(testresult.RegexDemo1.exe)==0}" /> -->
</target>

  <target name="preparepackage" depends="deleteBuildDirFiles,copyFiles,build" >
  </target>
  
  <target name="deleteBuildDirFiles" description="Will clear the content from directory where we are going to build the project" >
    <delete>
      <fileset basedir="${copy.to.dir}">
        <include name="**/*" />
      </fileset>
    </delete>
  </target>
  <target name="zipFiles" description="Will Zip all the Files"  >
    <zip zipfile="source.zip">
      <fileset basedir="${copy.frm.dir}">
        <include name="**/Components/**/*"></include>
        <include name="**/MyProjectWeb/**/*"></include>
        <exclude name="**/MyProjectWeb/Backup/**/*"></exclude>
        <exclude name="**/Components/source/MyCompNameCRMEvent/**/*"></exclude>
      </fileset>
    </zip>
  </target>
  <target name="moveZipedFile" depends="zipFiles">
    <move todir="${copy.to.dir}">
      <fileset basedir="${copy.frm.dir}">
        <include name="source.zip" />
      </fileset>
    </move>
  </target>
  <target name="unZipFile" depends="moveZipedFile" >
    <unzip zipfile="source.zip" overwrite="true" todir="${copy.to.dir}"></unzip>
  </target>
  <target name="copyFiles" depends="deleteBuildDirFiles">
    <copy todir="${copy.to.dir}">
      <fileset basedir="${copy.frm.dir}">
        <include name="**/Components/**/*"></include>
        <include name="**/MyProjectWeb/**/*"></include>
        <exclude name="**/MyProjectWeb/Backup/**/*"></exclude>
        <exclude name="**/Components/source/MyCompNameCRMEvent/**/*"></exclude>
      </fileset>
    </copy>
  </target>
  <target name="xcopyFiles">
    <exec
            program="${xcopy.path}\xcopy.exe"
            commandline="${copy.frm.view.dir} C:\123 /s/e/q/y"
      />

  </target>


  <target name="deleteZipFile">
    <delete file="source.zip" />
  </target>
  <target name="zipbuilFiles" description="Will Zip the builed project"  >
    <zip zipfile="deploy.zip">
      <fileset basedir="${copy.to.dir}">
        <include name="**/*"></include>
      </fileset>
    </zip>
  </target>
  <target name="build">
    <exec program="${MSBuildPath}" commandline="${SolutionFile} /t:Rebuild /p:Configuration=${build.configuration} /v:q" workingdir="${copy.to.dir}">
    </exec>
  </target>

<!--<target name="default" depends="clean, compileDebug, test, compileRelease" />-->
  <target name="default" depends="preparepackage" />

</project>