mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			259 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			259 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<!--
 | 
						|
  Licensed to the Apache Software Foundation (ASF) under one
 | 
						|
  or more contributor license agreements. See the NOTICE file
 | 
						|
  distributed with this work for additional information
 | 
						|
  regarding copyright ownership. The ASF licenses this file
 | 
						|
  to you under the Apache License, Version 2.0 (the
 | 
						|
  "License"); you may not use this file except in compliance
 | 
						|
  with the License. You may obtain a copy of the License at
 | 
						|
 | 
						|
  http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 | 
						|
  Unless required by applicable law or agreed to in writing,
 | 
						|
  software distributed under the License is distributed on an
 | 
						|
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 | 
						|
  KIND, either express or implied. See the License for the
 | 
						|
  specific language governing permissions and limitations
 | 
						|
  under the License.
 | 
						|
-->
 | 
						|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 | 
						|
  <modelVersion>4.0.0</modelVersion>
 | 
						|
  <artifactId>cloud-systemvm</artifactId>
 | 
						|
  <name>Apache CloudStack System VM</name>
 | 
						|
  <packaging>pom</packaging>
 | 
						|
  <parent>
 | 
						|
    <groupId>org.apache.cloudstack</groupId>
 | 
						|
    <artifactId>cloudstack</artifactId>
 | 
						|
    <version>4.5.0-SNAPSHOT</version>
 | 
						|
    <relativePath>../pom.xml</relativePath>
 | 
						|
  </parent>
 | 
						|
  <properties>
 | 
						|
    <mkisofs>mkisofs</mkisofs>
 | 
						|
  </properties>
 | 
						|
  <dependencies>
 | 
						|
    <dependency>
 | 
						|
      <groupId>org.apache.cloudstack</groupId>
 | 
						|
      <artifactId>cloud-agent</artifactId>
 | 
						|
      <version>${project.version}</version>
 | 
						|
    </dependency>
 | 
						|
    <dependency>
 | 
						|
      <groupId>org.apache.cloudstack</groupId>
 | 
						|
      <artifactId>cloud-secondary-storage</artifactId>
 | 
						|
      <version>${project.version}</version>
 | 
						|
    </dependency>
 | 
						|
    <dependency>
 | 
						|
      <groupId>org.apache.cloudstack</groupId>
 | 
						|
      <artifactId>cloud-console-proxy</artifactId>
 | 
						|
      <version>${project.version}</version>
 | 
						|
    </dependency>
 | 
						|
  </dependencies>
 | 
						|
  <build>
 | 
						|
    <plugins>
 | 
						|
      <plugin>
 | 
						|
        <artifactId>maven-assembly-plugin</artifactId>
 | 
						|
        <configuration>
 | 
						|
          <finalName>systemvm</finalName>
 | 
						|
          <appendAssemblyId>false</appendAssemblyId>
 | 
						|
          <descriptors>
 | 
						|
            <descriptor>systemvm-descriptor.xml</descriptor>
 | 
						|
          </descriptors>
 | 
						|
        </configuration>
 | 
						|
        <executions>
 | 
						|
          <execution>
 | 
						|
            <id>make-systemvm</id>
 | 
						|
            <phase>package</phase>
 | 
						|
            <goals>
 | 
						|
              <goal>single</goal>
 | 
						|
            </goals>
 | 
						|
          </execution>
 | 
						|
        </executions>
 | 
						|
      </plugin>
 | 
						|
      <plugin>
 | 
						|
        <artifactId>maven-resources-plugin</artifactId>
 | 
						|
        <executions>
 | 
						|
          <execution>
 | 
						|
            <id>copy-resources</id>
 | 
						|
            <!-- here the phase you need -->
 | 
						|
            <phase>package</phase>
 | 
						|
            <goals>
 | 
						|
              <goal>copy-resources</goal>
 | 
						|
            </goals>
 | 
						|
            <configuration>
 | 
						|
              <outputDirectory>dist</outputDirectory>
 | 
						|
              <resources>          
 | 
						|
                <resource>
 | 
						|
                  <directory>target</directory>
 | 
						|
                  <includes>
 | 
						|
                    <include>systemvm.zip</include>
 | 
						|
                  </includes>
 | 
						|
                </resource>
 | 
						|
                <resource>
 | 
						|
                  <directory>patches/debian/config/root/.ssh</directory>
 | 
						|
                  <includes>
 | 
						|
                    <include>authorized_keys</include>
 | 
						|
                  </includes>
 | 
						|
                </resource>
 | 
						|
              </resources>              
 | 
						|
            </configuration>            
 | 
						|
          </execution>
 | 
						|
        </executions>
 | 
						|
      </plugin>
 | 
						|
      <plugin>
 | 
						|
        <artifactId>maven-antrun-plugin</artifactId>
 | 
						|
        <executions>
 | 
						|
          <execution>
 | 
						|
            <id>build-cloud-scripts</id>
 | 
						|
            <phase>generate-sources</phase>
 | 
						|
            <goals>
 | 
						|
              <goal>run</goal>
 | 
						|
            </goals>
 | 
						|
            <configuration>
 | 
						|
              <target>
 | 
						|
                <mkdir dir="${basedir}/dist" />
 | 
						|
                <mkdir dir="${basedir}/target/build-patch" />
 | 
						|
                <mkdir dir="${basedir}/target/build-patch/usr/sbin" />
 | 
						|
                <copy overwrite="true" todir="${basedir}/target/build-patch">
 | 
						|
                  <fileset dir="${basedir}/patches/debian/config/">
 | 
						|
                    <include name="**/*" />
 | 
						|
                  </fileset>
 | 
						|
                  <fileset dir="${basedir}/patches/debian/vpn/">
 | 
						|
                    <include name="**/*" />
 | 
						|
                  </fileset>
 | 
						|
                  <fileset dir="${basedir}/patches/debian/xe/">
 | 
						|
                    <include name="**/*" />
 | 
						|
                    <exclude name="**/xe-*" />
 | 
						|
                    <exclude name="**/xen-*" />
 | 
						|
                  </fileset>
 | 
						|
                </copy>
 | 
						|
                <copy overwrite="true" todir="${basedir}/target/build-patch/usr/sbin/">
 | 
						|
                  <fileset dir="${basedir}/patches/debian/xe/">
 | 
						|
                    <include name="**/xe-*" />
 | 
						|
                    <include name="**/xen-*" />
 | 
						|
                  </fileset>
 | 
						|
                </copy>
 | 
						|
                <tar destfile="${basedir}/target/patch.tar">
 | 
						|
                  <tarfileset dir="${basedir}/target/build-patch/"
 | 
						|
                    filemode="755">
 | 
						|
                    <include name="**/*" />
 | 
						|
                    <exclude name="**/.classpath" />
 | 
						|
                    <exclude name="**/log**"/>
 | 
						|
                    <exclude name="**/logrotate.d"/>
 | 
						|
                    <exclude name="**/.project" />
 | 
						|
                    <exclude name="**/wscript_build" />
 | 
						|
                  </tarfileset>
 | 
						|
                  <tarfileset dir="${basedir}/target/build-patch/"
 | 
						|
                   filemode="644">
 | 
						|
                   <include name="**/log**"/>
 | 
						|
                   <include name="**/logrotate.d/**"/>
 | 
						|
                  </tarfileset>
 | 
						|
                </tar>
 | 
						|
                <gzip destfile="${basedir}/dist/cloud-scripts.tgz" src="${basedir}/target/patch.tar" />
 | 
						|
                <delete dir="${basedir}/target/build-patch" />
 | 
						|
                <delete file="${basedir}/target/patch.tar" />
 | 
						|
              </target>
 | 
						|
            </configuration>
 | 
						|
          </execution>
 | 
						|
        </executions>
 | 
						|
      </plugin>
 | 
						|
    <plugin>
 | 
						|
      <groupId>org.codehaus.mojo</groupId>
 | 
						|
       <artifactId>exec-maven-plugin</artifactId>
 | 
						|
       <version>1.2.1</version>
 | 
						|
       <executions>
 | 
						|
         <execution>
 | 
						|
           <phase>package</phase>
 | 
						|
           <goals>
 | 
						|
             <goal>exec</goal>
 | 
						|
           </goals>
 | 
						|
         </execution>
 | 
						|
       </executions>
 | 
						|
       <configuration>
 | 
						|
         <executable>${mkisofs}</executable>
 | 
						|
         <workingDirectory>dist</workingDirectory>
 | 
						|
         <arguments>
 | 
						|
           <argument>-quiet</argument>
 | 
						|
           <argument>-r</argument>
 | 
						|
           <argument>-o</argument>
 | 
						|
           <argument>systemvm.iso</argument>
 | 
						|
           <argument>systemvm.zip</argument>
 | 
						|
           <argument>cloud-scripts.tgz</argument>
 | 
						|
           <argument>authorized_keys</argument>
 | 
						|
         </arguments>
 | 
						|
       </configuration>
 | 
						|
     </plugin>
 | 
						|
    </plugins>
 | 
						|
  </build>
 | 
						|
  <profiles>
 | 
						|
    <!-- Debian will never distribute mkisofs due to licensing issues.
 | 
						|
         Fortunately genisoimage is a work-alike -->
 | 
						|
    <profile>
 | 
						|
      <id>genisoimage</id>
 | 
						|
      <activation>
 | 
						|
        <file>
 | 
						|
          <exists>/usr/bin/genisoimage</exists>
 | 
						|
        </file>
 | 
						|
      </activation>
 | 
						|
      <properties>
 | 
						|
        <mkisofs>genisoimage</mkisofs>
 | 
						|
      </properties>
 | 
						|
    </profile>
 | 
						|
    <profile>
 | 
						|
      <id>vmware</id>
 | 
						|
      <activation>
 | 
						|
        <property>
 | 
						|
          <name>noredist</name>
 | 
						|
        </property>
 | 
						|
      </activation>
 | 
						|
        <dependencies>
 | 
						|
            <dependency>
 | 
						|
                <groupId>org.apache.cloudstack</groupId>
 | 
						|
                <artifactId>cloud-plugin-hypervisor-vmware</artifactId>
 | 
						|
                <version>${project.version}</version>
 | 
						|
            </dependency>
 | 
						|
            <dependency>
 | 
						|
                <groupId>org.apache.cloudstack</groupId>
 | 
						|
                <artifactId>cloud-vmware-base</artifactId>
 | 
						|
                <version>${project.version}</version>
 | 
						|
            </dependency>
 | 
						|
        </dependencies>
 | 
						|
    </profile>
 | 
						|
    <profile>
 | 
						|
      <id>quickcloud</id>
 | 
						|
      <build>
 | 
						|
      <plugins>
 | 
						|
      <plugin>
 | 
						|
        <groupId>org.codehaus.mojo</groupId>
 | 
						|
        <artifactId>exec-maven-plugin</artifactId>
 | 
						|
        <version>1.2.1</version>
 | 
						|
        <executions>
 | 
						|
          <execution>
 | 
						|
            <goals>
 | 
						|
              <goal>java</goal>
 | 
						|
            </goals>
 | 
						|
          </execution>
 | 
						|
        </executions>
 | 
						|
        <configuration>
 | 
						|
          <mainClass>com.cloud.agent.AgentShell</mainClass>
 | 
						|
          <arguments>
 | 
						|
            <argument>zone=1</argument>
 | 
						|
            <argument>pod=1</argument>
 | 
						|
            <argument>host=192.168.56.1</argument>
 | 
						|
            <argument>guid=ConsoleProxy.1</argument>
 | 
						|
          </arguments>
 | 
						|
          <systemProperties>
 | 
						|
            <systemProperty>
 | 
						|
              <key>javax.net.ssl.trustStore</key>
 | 
						|
              <value>certs/realhostip.keystore</value>
 | 
						|
              <key>log.home</key>
 | 
						|
              <value>${PWD}/</value>
 | 
						|
            </systemProperty>
 | 
						|
          </systemProperties>
 | 
						|
        </configuration>
 | 
						|
      </plugin>
 | 
						|
      </plugins>
 | 
						|
    </build>
 | 
						|
  </profile>
 | 
						|
  </profiles>
 | 
						|
 | 
						|
</project>
 |