mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			247 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			XML
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			247 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			XML
		
	
	
		
			Executable File
		
	
	
	
	
<?xml version="1.0" encoding="UTF-8"?>
 | 
						|
 | 
						|
<!-- Copyright 2008 Cloud.com, Inc. All Rights Reserved -->
 | 
						|
 | 
						|
<project name="Cloud Stack Package" basedir=".">
 | 
						|
  <description>
 | 
						|
        This is a package.xml with tools to package the cloud stack distribution
 | 
						|
    </description>
 | 
						|
 | 
						|
  <dirname property="base.dir" file="${ant.file.Cloud Stack Package}/.." />
 | 
						|
  <property name="build.dir" location="${base.dir}/build" />
 | 
						|
 | 
						|
  <import file="${build.dir}/build-cloud.xml" optional="false"/>
 | 
						|
  
 | 
						|
  <property name="target.dir" location="${base.dir}/target"/>
 | 
						|
  <property name="scripts.target.dir" location="${target.dir}/scripts"/>
 | 
						|
  
 | 
						|
  <property name="dist.dir" location="${base.dir}/dist" />
 | 
						|
  <property name="publish.dir" location="${dist.dir}" />
 | 
						|
  <property name="client.dist.dir" location="${dist.dir}/client" />
 | 
						|
  <property name="server.dist.dir" location="${dist.dir}/client" />
 | 
						|
  <property name="agent.dist.dir" location="${dist.dir}/agent" />
 | 
						|
  <property name="docs.dist.dir" location="${dist.dir}/docs" />
 | 
						|
  <property name="db.dist.dir" location="${dist.dir}/db" />
 | 
						|
  <property name="usage.dist.dir" location="${dist.dir}/usage" />
 | 
						|
  <property name="kvm.domr.patch.dir" location="${scripts.dir}/vm/hypervisor/kvm/patch" />
 | 
						|
 | 
						|
  <target name="-init-package">
 | 
						|
    <mkdir dir="${dist.dir}" />
 | 
						|
    <mkdir dir="${publish.dir}" />
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-server" depends="-init-package">
 | 
						|
    <delete file="${dist.dir}/client.zip" />
 | 
						|
    <zip destfile="${dist.dir}/client.zip" basedir="${server.dist.dir}" />
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-client" depends="-init-package">
 | 
						|
    <zip destfile="${dist.dir}/client.zip" basedir="${client.dist.dir}">
 | 
						|
      <zipfileset dir="${client.dist.dir}">
 | 
						|
        <exclude name="**/*.sh" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${client.dist.dir}" filemode="555">
 | 
						|
        <include name="**/*.sh" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-usage" depends="-init-package">
 | 
						|
    <zip destfile="${dist.dir}/usage.zip" basedir="${usage.dist.dir}" />
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-agent-common" depends="-init-package">
 | 
						|
    <zip destfile="${dist.dir}/agent.zip" duplicate="preserve">
 | 
						|
      <zipfileset dir="${thirdparty.dir}">
 | 
						|
        <include name="xmlrpc-client-3.1.3.jar" />
 | 
						|
        <include name="xmlrpc-common-3.1.3.jar" />
 | 
						|
        <include name="ws-commons-util-1.0.2.jar" />
 | 
						|
        <include name="log4j-1.2.15.jar" />
 | 
						|
        <include name="apache-log4j-extras-1.0.jar" />
 | 
						|
        <include name="gson-1.3.jar" />
 | 
						|
        <include name="commons-httpclient-3.1.jar" />
 | 
						|
        <include name="commons-logging-1.1.1.jar" />
 | 
						|
        <include name="commons-collections-3.2.1.jar" />
 | 
						|
        <include name="commons-codec-1.4.jar" />
 | 
						|
        <include name="commons-pool-1.4.jar" />
 | 
						|
        <include name="libvirt-0.4.5.jar" />
 | 
						|
        <include name="jna.jar" />
 | 
						|
        <include name="cglib-nodep-2.2.jar" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${jar.dir}">
 | 
						|
        <include name="${agent.jar}" />
 | 
						|
        <include name="${utils.jar}" />
 | 
						|
        <include name="${core.jar}" />
 | 
						|
        <include name="${api.jar}" />
 | 
						|
      </zipfileset>
 | 
						|
 | 
						|
      <zipfileset dir="${agent.dist.dir}" filemode="770">
 | 
						|
        <include name="run.sh" />
 | 
						|
        <include name="agent.sh" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${agent.dist.dir}">
 | 
						|
        <exclude name="run.sh/" />
 | 
						|
        <exclude name="agent.sh" />
 | 
						|
        <include name="**/*" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${scripts.dir}" prefix="scripts" filemode="555">
 | 
						|
        <exclude name="**/.project" />
 | 
						|
        <exclude name="**/.classpath" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
 | 
						|
  <target name="package-agent" depends="-init-package, package-oss-systemvm,  build-kvm-domr-patch, package-agent-common">
 | 
						|
    <zip destfile="${dist.dir}/agent.zip" duplicate="preserve" update="true">
 | 
						|
      <zipfileset dir="${dist.dir}" prefix="scripts/vm/hypervisor/kvm">
 | 
						|
        <include name="patch.tgz" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${dist.dir}" prefix="vms" filemode="555">
 | 
						|
        <include name="systemvm.zip" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-agent-simulator" depends="-init-package">
 | 
						|
    <delete file="${dist.dir}/agent-simulator.zip" />
 | 
						|
    <zip destfile="${dist.dir}/agent-simulator.zip" duplicate="preserve">
 | 
						|
      <zipfileset dir="${agent-simulator.dist.dir}">
 | 
						|
        <exclude name="**/*.sh" />
 | 
						|
        <exclude name="**/vnetd" />
 | 
						|
        <exclude name="**/send_arp" />
 | 
						|
        <exclude name="**/vn" />
 | 
						|
        <exclude name="**/*.exp" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${agent-simulator.dist.dir}" filemode="555">
 | 
						|
        <include name="**/*.sh" />
 | 
						|
        <include name="**/vnetd" />
 | 
						|
        <include name="**/send_arp" />
 | 
						|
        <include name="**/vn" />
 | 
						|
        <include name="**/*.exp" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="build-all" depends="build-opensource, build-kvm-domr-patch, build-ui, build-war-oss, package-oss-systemvm">
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="build-war-oss" depends="-init-package" description="Compile the GWT client UI and builds WAR file.">
 | 
						|
    <mkdir dir="${client.dist.dir}" />
 | 
						|
 | 
						|
    <war destfile="${client.dist.dir}/client.war" webxml="${client.dir}/WEB-INF/web.xml">
 | 
						|
      <fileset dir="${client.target.dir}">
 | 
						|
        <include name="**/*" />
 | 
						|
      	<exclude name="**/*.properties" />
 | 
						|
      </fileset>
 | 
						|
      <classes dir="${client.target.dir}">
 | 
						|
    	<include name="**/resources/*.properties" />
 | 
						|
      </classes>
 | 
						|
      <lib dir="${jar.dir}">
 | 
						|
        <include name="cloud-*.jar" />
 | 
						|
      </lib>
 | 
						|
      <zipfileset dir="${scripts.target.dir}" prefix="WEB-INF/lib/scripts" filemode="555">
 | 
						|
        <include name="**/*" />
 | 
						|
      </zipfileset>
 | 
						|
    </war>
 | 
						|
  </target>
 | 
						|
 | 
						|
 | 
						|
  <target name="package-oss-systemvm" depends="-init-package">
 | 
						|
    <zip destfile="${dist.dir}/systemvm.zip" duplicate="preserve" update="true">
 | 
						|
      <!-- Console proxy now includes an agent shell, therefore we need to package agent related distribution -->
 | 
						|
      <zipfileset dir="${thirdparty.dir}">
 | 
						|
        <include name="xmlrpc-client-3.1.3.jar" />
 | 
						|
        <include name="xmlrpc-common-3.1.3.jar" />
 | 
						|
        <include name="ws-commons-util-1.0.2.jar" />
 | 
						|
        <include name="log4j-1.2.15.jar" />
 | 
						|
        <include name="apache-log4j-extras-1.0.jar" />
 | 
						|
        <include name="gson-1.3.jar" />
 | 
						|
        <include name="commons-httpclient-3.1.jar" />
 | 
						|
        <include name="commons-logging-1.1.1.jar" />
 | 
						|
        <include name="commons-collections-3.2.1.jar" />
 | 
						|
        <include name="commons-codec-1.4.jar" />
 | 
						|
        <include name="commons-pool-1.4.jar" />
 | 
						|
        <include name="cglib-nodep-2.2.jar" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${jar.dir}">
 | 
						|
        <include name="${agent.jar}" />
 | 
						|
        <include name="${utils.jar}" />
 | 
						|
        <include name="${core.jar}" />
 | 
						|
        <include name="${api.jar}" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${console-proxy.dist.dir}">
 | 
						|
        <exclude name="**/*.sh" />
 | 
						|
        <exclude name="**/certs/" />
 | 
						|
        <exclude name="**/cloud-console-proxy-premium.jar" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${console-proxy.dist.dir}" filemode="555">
 | 
						|
        <include name="**/*.sh" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-docs" depends="-init-package">
 | 
						|
    <delete file="${dist.dir}/docs.zip" />
 | 
						|
    <zip destfile="${dist.dir}/docs.zip" compress="false">
 | 
						|
      <fileset dir="${docs.dist.dir}" />
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-test" depends="-init-package">
 | 
						|
    <delete file="${publish.dir}/test.zip" />
 | 
						|
    <zip destfile="${publish.dir}/test.zip" compress="false">
 | 
						|
      <zipfileset dir="${testclient.dist.dir}" filemode="555" />
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="clean-packages">
 | 
						|
    <delete>
 | 
						|
      <fileset dir="${dist.dir}" includes="*.zip" />
 | 
						|
    </delete>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="package-all" depends="package-client, package-agent, package-agent-simulator, package-usage, package-docs">
 | 
						|
    <tstamp>
 | 
						|
      <format property="package.date" pattern="yyyy-MM-dd" />
 | 
						|
    </tstamp>
 | 
						|
    <zip destfile="${publish.dir}/cloud-${company.major.version}.${company.minor.version}.${company.patch.version}.${build.number}-${package.date}.zip" duplicate="preserve">
 | 
						|
      <zipfileset dir="${dist.dir}" prefix="cloud-${company.major.version}.${company.minor.version}.${company.patch.version}.${build.number}-${package.date}" filemode="777">
 | 
						|
        <include name="deploy-agent.sh" />
 | 
						|
        <include name="deploy-server.sh" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${db.dist.dir}" prefix="cloud-${company.major.version}.${company.minor.version}.${company.patch.version}.${build.number}-${package.date}/db" filemode="777">
 | 
						|
        <include name="deploy-db.sh" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${db.dist.dir}" prefix="cloud-${company.major.version}.${company.minor.version}.${company.patch.version}.${build.number}-${package.date}/db">
 | 
						|
        <include name="log4j.properties" />
 | 
						|
        <include name="create-schema.sql" />
 | 
						|
        <include name="init-data.sql" />
 | 
						|
        <include name="create-index-fk.sql" />
 | 
						|
        <include name="server-setup.xml" />
 | 
						|
        <include name="create-database.sql" />
 | 
						|
        <include name="templates.sql" />
 | 
						|
      </zipfileset>
 | 
						|
      <zipfileset dir="${dist.dir}" prefix="cloud-${company.major.version}.${company.minor.version}.${company.patch.version}.${build.number}-${package.date}">
 | 
						|
        <include name="agent.zip" />
 | 
						|
        <include name="client.zip" />
 | 
						|
        <include name="docs.zip" />
 | 
						|
      </zipfileset>
 | 
						|
    </zip>
 | 
						|
  </target>
 | 
						|
 | 
						|
  <target name="clean-zip">
 | 
						|
    <delete dir="${dist.dir}">
 | 
						|
      <include name="*.zip" />
 | 
						|
    </delete>
 | 
						|
  </target>
 | 
						|
 | 
						|
<!-- The following target is OBSOLETE.  If you need to add a jar file / target, go to the function def runant(target): in wscrpit_build, and list the jar file and the target in the appropriate places -->
 | 
						|
<target name="sendjarfiles" depends="compile-utils, compile-core, compile-server, compile-agent, compile-console-common, compile-console-proxy, build-console-viewer">
 | 
						|
    <copy todir="${waf.artifacts}">
 | 
						|
      <fileset dir="${target.dir}/jar"/>
 | 
						|
    </copy>
 | 
						|
  </target>
 | 
						|
 | 
						|
</project>
 |