<!--

    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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>11</version>
  </parent>

  <groupId>org.apache.cloudstack</groupId>
  <artifactId>cloudstack</artifactId>
  <version>4.7.1</version>
  <packaging>pom</packaging>
  <name>Apache CloudStack</name>
  <description>Apache CloudStack is an IaaS (“Infrastructure as a Service”) cloud orchestration platform.</description>
  <url>http://www.cloudstack.org</url>
  <scm>
    <connection>scm:git:https://git-wip-us.apache.org/repos/asf/cloudstack.git</connection>
    <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/cloudstack.git</developerConnection>
  </scm>
  <issueManagement>
    <system>jira</system>
    <url>https://issues.apache.org/jira/browse/CLOUDSTACK</url>
  </issueManagement>

  <prerequisites>
    <maven>3.0.4</maven>
  </prerequisites>

  <properties>
    <cs.jdk.version>1.7</cs.jdk.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

    <cs.log4j.version>1.2.17</cs.log4j.version>
    <cs.log4j.extras.version>1.2.17</cs.log4j.extras.version>
    <cs.cglib.version>3.1</cs.cglib.version>
    <cs.dbcp.version>1.4</cs.dbcp.version>
    <cs.pool.version>1.6</cs.pool.version>
    <cs.codec.version>1.10</cs.codec.version>
    <cs.configuration.version>1.10</cs.configuration.version>
    <cs.collections.version>3.2.2</cs.collections.version>
    <cs.logging.version>1.1.1</cs.logging.version>
    <cs.discovery.version>0.5</cs.discovery.version>
    <cs.ejb.version>3.0</cs.ejb.version>
    <!-- do not forget to also upgrade hamcrest library with junit -->
    <cs.junit.version>4.11</cs.junit.version>
    <cs.hamcrest.version>1.3</cs.hamcrest.version>
    <cs.bcprov.version>1.46</cs.bcprov.version>
    <cs.jsch.version>0.1.51</cs.jsch.version>
    <cs.jpa.version>2.1.0</cs.jpa.version>
    <cs.jasypt.version>1.9.2</cs.jasypt.version>
    <cs.trilead.version>1.0.0-build217</cs.trilead.version>
    <cs.ehcache.version>2.6.9</cs.ehcache.version>
    <cs.gson.version>1.7.2</cs.gson.version>
    <cs.guava-testlib.version>18.0</cs.guava-testlib.version>
    <cs.guava.version>18.0</cs.guava.version>
    <cs.xapi.version>6.2.0-3.1</cs.xapi.version>
    <cs.httpclient.version>4.5</cs.httpclient.version>
    <cs.httpcore.version>4.4</cs.httpcore.version>
    <cs.commons-httpclient.version>3.1</cs.commons-httpclient.version>
    <cs.mysql.version>5.1.34</cs.mysql.version>
    <cs.xstream.version>1.4.7</cs.xstream.version>
    <cs.xmlrpc.version>3.1.3</cs.xmlrpc.version>
    <cs.mail.version>1.4.7</cs.mail.version>
    <cs.axis.version>1.4</cs.axis.version>
    <cs.axis2.version>1.5.6</cs.axis2.version>
    <cs.rampart.version>1.5.1</cs.rampart.version>
    <cs.axiom.version>1.2.8</cs.axiom.version>
    <cs.neethi.version>2.0.4</cs.neethi.version>
    <cs.servlet.version>2.5</cs.servlet.version>
    <cs.jstl.version>1.2</cs.jstl.version>
    <cs.selenium.server.version>1.0-20081010.060147</cs.selenium.server.version>
    <cs.vmware.api.version>5.5</cs.vmware.api.version>
    <org.springframework.version>3.2.12.RELEASE</org.springframework.version>
    <cs.mockito.version>1.9.5</cs.mockito.version>
    <cs.powermock.version>1.5.3</cs.powermock.version>
    <cs.aws.sdk.version>1.10.34</cs.aws.sdk.version>
    <cs.jackson.version>2.6.3</cs.jackson.version>
    <cs.lang.version>2.6</cs.lang.version>
    <cs.commons-lang3.version>3.4</cs.commons-lang3.version>
    <cs.commons-io.version>2.4</cs.commons-io.version>
    <cs.commons-validator.version>1.4.0</cs.commons-validator.version>
    <cs.reflections.version>0.9.9</cs.reflections.version>
    <cs.java-ipv6.version>0.15</cs.java-ipv6.version>
    <cs.replace.properties>build/replace.properties</cs.replace.properties>
    <cs.libvirt-java.version>0.5.1</cs.libvirt-java.version>
    <cs.rados-java.version>0.2.0</cs.rados-java.version>
    <cs.target.dir>target</cs.target.dir>
    <cs.daemon.version>1.0.15</cs.daemon.version>
    <cs.jna.version>4.0.0</cs.jna.version>
    <cs.checkstyle.version>2.11</cs.checkstyle.version>
    <cs.mycila.license.version>2.7</cs.mycila.license.version>
    <cs.findbugs.version>3.0.1</cs.findbugs.version>
    <cs.javadoc.version>2.10.1</cs.javadoc.version>
    <cs.opensaml.version>2.6.1</cs.opensaml.version>
    <cs.xml-apis.version>1.4.01</cs.xml-apis.version>
    <cs.joda-time.version>2.8.1</cs.joda-time.version>
  </properties>

  <distributionManagement>
    <site>
      <id>apache.cloudstack.site</id>
      <url>${site.deploy.url}</url>
    </site>
  </distributionManagement>

  <inceptionYear>2012</inceptionYear>

  <mailingLists>
    <mailingList>
      <name>Apache CloudStack User List</name>
      <subscribe>users-subscribe@cloudstack.apache.org</subscribe>
      <unsubscribe>users-unsubscribe@cloudstack.apache.org</unsubscribe>
      <post>users@cloudstack.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/cloudstack-users</archive>
      <otherArchives>
        <otherArchive>http://mail-archives.apache.org/mod_mbox/incubator-cloudstack-users</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Apache CloudStack Developer List</name>
      <subscribe>dev-subscribe@cloudstack.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@cloudstack.apache.org</unsubscribe>
      <post>dev@cloudstack.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/cloudstack-dev</archive>
      <otherArchives>
        <otherArchive>http://mail-archives.apache.org/mod_mbox/incubator-cloudstack-dev</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Apache CloudStack Commits List</name>
      <subscribe>commits-subscribe@cloudstack.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@cloudstack.apache.org</unsubscribe>
      <post>commits@cloudstack.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/cloudstack-commits</archive>
      <otherArchives>
        <otherArchive>http://mail-archives.apache.org/mod_mbox/incubator-cloudstack-commits</otherArchive>
      </otherArchives>
    </mailingList>
  </mailingLists>

  <developers>
    <developer>
      <name>The Apache CloudStack Team</name>
      <email>dev@cloudstack.apache.org</email>
      <url>http://cloudstack.apache.org/</url>
      <organization>Apache Software Foundation</organization>
      <organizationUrl>http://apache.org/</organizationUrl>
    </developer>
  </developers>

  <ciManagement>
    <system>Jenkins</system>
    <url>http://builds.apache.org/</url>
  </ciManagement>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <organization>
    <name>The Apache Software Foundation</name>
    <url>http://www.apache.org/</url>
  </organization>

  <modules>
    <module>tools/checkstyle</module>
    <module>api</module>
    <module>agent</module>
    <module>core</module>
    <module>server</module>
    <module>usage</module>
    <module>utils</module>
    <module>engine</module>
    <module>plugins</module>
    <module>framework</module>
    <module>client</module>
    <module>services</module>
    <module>maven-standard</module>
    <module>quickcloud</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${cs.mysql.version}</version>
        <scope>provided,test</scope>
      </dependency>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${cs.log4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${org.springframework.version}</version>
      </dependency>
      <dependency>
        <groupId>cglib</groupId>
        <artifactId>cglib-nodep</artifactId>
        <version>${cs.cglib.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-dbcp</groupId>
        <artifactId>commons-dbcp</artifactId>
        <version>${cs.dbcp.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>commons-pool</artifactId>
            <groupId>commons-pool</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache-core</artifactId>
        <version>${cs.ehcache.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-pool</groupId>
        <artifactId>commons-pool</artifactId>
        <version>${cs.pool.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>${cs.codec.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-validator</groupId>
        <artifactId>commons-validator</artifactId>
        <version>${cs.commons-validator.version}</version>
      </dependency>
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk16</artifactId>
        <version>${cs.bcprov.version}</version>
      </dependency>
      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>${cs.jsch.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jasypt</groupId>
        <artifactId>jasypt</artifactId>
        <version>${cs.jasypt.version}</version>
      </dependency>
      <dependency>
        <groupId>com.trilead</groupId>
        <artifactId>trilead-ssh2</artifactId>
        <version>${cs.trilead.version}</version>
      </dependency>
      <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk</artifactId>
        <version>${cs.aws.sdk.version}</version>
      </dependency>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>apache-log4j-extras</artifactId>
        <version>${cs.log4j.extras.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>log4j</artifactId>
            <groupId>log4j</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>javax.ejb</groupId>
        <artifactId>ejb-api</artifactId>
        <version>${cs.ejb.version}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.java-ipv6</groupId>
        <artifactId>java-ipv6</artifactId>
        <version>${cs.java-ipv6.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>${cs.configuration.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${cs.commons-io.version}</version>
      </dependency>
      <!-- Test dependency in mysql for db tests -->
      <dependency>
        <groupId>org.reflections</groupId>
        <artifactId>reflections</artifactId>
        <version>${cs.reflections.version}</version>
      </dependency>
      <dependency>
        <groupId>org.owasp.esapi</groupId>
        <artifactId>esapi</artifactId>
        <version>2.1.0</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>javax.persistence</artifactId>
        <version>${cs.jpa.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${org.springframework.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>${cs.servlet.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>${cs.httpcore.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${cs.httpclient.version}</version>
      </dependency>
      <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>${cs.xstream.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.mail</groupId>
        <artifactId>mail</artifactId>
        <version>${cs.mail.version}</version>
      </dependency>
      <dependency>
        <groupId>jstl</groupId>
        <artifactId>jstl</artifactId>
        <version>${cs.jstl.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${org.springframework.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${org.springframework.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>${cs.gson.version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${cs.guava.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.snmp4j</artifactId>
        <version>2.3.1_1</version>
      </dependency>
      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjtools</artifactId>
        <version>1.8.4</version>
      </dependency>
      <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.8.4</version>
      </dependency>
      <dependency>
        <groupId>org.apache.axis</groupId>
        <artifactId>axis</artifactId>
        <version>${cs.axis.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-daemon</groupId>
        <artifactId>commons-daemon</artifactId>
        <version>${cs.daemon.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.axis</groupId>
        <artifactId>axis-jaxrpc</artifactId>
        <version>${cs.axis.version}</version>
      </dependency>
      <dependency>
        <groupId>wsdl4j</groupId>
        <artifactId>wsdl4j</artifactId>
        <version>1.6.3</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.7</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.7</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-all</artifactId>
      <version>${cs.hamcrest.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
      <version>${cs.mockito.version}</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <artifactId>hamcrest-core</artifactId>
          <groupId>org.hamcrest</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>${cs.junit.version}</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <artifactId>hamcrest-core</artifactId>
          <groupId>org.hamcrest</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-module-junit4</artifactId>
      <version>${cs.powermock.version}</version>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-api-mockito</artifactId>
      <version>${cs.powermock.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>${org.springframework.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>javax.inject</groupId>
      <artifactId>javax.inject</artifactId>
      <version>1</version>
    </dependency>
  </dependencies>

  <build>
    <defaultGoal>install</defaultGoal>
    <sourceDirectory>src</sourceDirectory>
    <testSourceDirectory>test</testSourceDirectory>
    <resources>
      <resource>
        <directory>${basedir}/resources</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>test/resources</directory>
      </testResource>
    </testResources>
    <outputDirectory>${basedir}/${cs.target.dir}/classes</outputDirectory>
    <testOutputDirectory>${basedir}/${cs.target.dir}/test-classes</testOutputDirectory>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <executions>
          <execution>
            <id>cloudstack-checkstyle</id>
            <phase>none</phase>
            <inherited>false</inherited>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>cloudstack-checklicence</id>
            <phase>none</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>cloudstack-findbugs</id>
            <phase>none</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>${cs.checkstyle.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.cloudstack</groupId>
              <artifactId>checkstyle</artifactId>
              <version>${project.version}</version>
            </dependency>
          </dependencies>
          <executions>
            <execution>
              <id>cloudstack-checkstyle</id>
              <phase>validate</phase>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <failsOnError>true</failsOnError>
            <configLocation>cloud-style.xml</configLocation>
            <consoleOutput>true</consoleOutput>
            <includeTestSourceDirectory>true</includeTestSourceDirectory>
            <sourceDirectory>${project.basedir}</sourceDirectory>
            <includes>**\/*.java</includes>
            <excludes>**\/deps\/,**\/test\/,**\/target\/,**\/bin\/,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/apidoc\/</excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>com.mycila</groupId>
          <artifactId>license-maven-plugin</artifactId>
          <version>${cs.mycila.license.version}</version>
          <executions>
            <execution>
              <id>cloudstack-checklicence</id>
              <phase>process-classes</phase>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <strictCheck>true</strictCheck>
            <aggregate>true</aggregate>
            <header>LICENSE.header</header>
            <mapping>
              <xml>XML_STYLE</xml>
              <java>DOUBLESLASH_STYLE</java>
              <clj>SEMICOLON_STYLE</clj>
            </mapping>
            <useDefaultExcludes>false</useDefaultExcludes>
            <excludes>
              <exclude>**/target/**</exclude>
              <exclude>.settings/**</exclude>
              <exclude>.checkstyle</exclude>
              <exclude>.project</exclude>
              <exclude>.classpath</exclude>
              <exclude>.pmd*</exclude>
            </excludes>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <configuration>
            <excludeDefaultDirectories>true</excludeDefaultDirectories>
            <filesets>
              <fileset>
                <directory>${cs.target.dir}</directory>
                <includes>
                  <include>**/*</include>
                </includes>
              </fileset>
              <fileset>
                <directory>dist</directory>
                <includes>
                  <include>**/*</include>
                </includes>
              </fileset>
              <fileset>
                <directory>${basedir}</directory>
                <includes>
                  <include>${cs.target.dir}</include>
                  <include>dist</include>
                </includes>
              </fileset>
            </filesets>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>2.5.1</version>
          <executions>
            <execution>
              <id>default</id>
              <goals>
                <goal>perform</goal>
              </goals>
              <configuration>
                <pomFileName>pom.xml</pomFileName>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build
          itself. -->
        <plugin>
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <version>1.0.0</version>
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <versionRange>[1.7,)</versionRange>
                    <goals>
                      <goal>run</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore/>
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <versionRange>[2.0,)</versionRange>
                    <goals>
                      <goal>copy-dependencies</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore/>
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>com.mycila</groupId>
                    <artifactId>license-maven-plugin</artifactId>
                    <versionRange>[2.5,)</versionRange>
                    <goals>
                      <goal>format</goal>
                      <goal>check</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore></ignore>
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.codehaus.gmaven</groupId>
                    <artifactId>gmaven-plugin</artifactId>
                    <versionRange>[1.3,)</versionRange>
                    <goals>
                      <goal>compile</goal>
                      <goal>testCompile</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore></ignore>
                  </action>
                </pluginExecution>
                <pluginExecution>
			<pluginExecutionFilter>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<versionRange>[2.11,)</versionRange>
				<goals>
					<goal>check</goal>
				</goals>
			</pluginExecutionFilter>
			<action>
				<ignore></ignore>
			</action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.8</version>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <configuration>
            <numUnapprovedLicenses>0</numUnapprovedLicenses>
            <excludeSubProjects>false</excludeSubProjects>
            <excludes>
              <exclude>CHANGES.md</exclude>
              <exclude>README.md</exclude>
              <exclude>INSTALL.md</exclude>
              <exclude>CONTRIBUTING.md</exclude>
              <exclude>tools/docker/Dockerfile</exclude>
              <exclude>tools/docker/supervisord.conf</exclude>
              <exclude>.idea/</exclude>
              <exclude>**/*.log</exclude>
              <exclude>**/*.patch</exclude>
              <exclude>**/.classpath</exclude>
              <exclude>**/.project</exclude>
              <exclude>**/.idea/**</exclude>
              <exclude>**/*.iml</exclude>
              <exclude>**/.settings/**</exclude>
              <exclude>.metadata/**</exclude>
              <exclude>.git/**</exclude>
              <exclude>.gitignore</exclude>
              <exclude>**/*.crt</exclude>
              <exclude>**/*.csr</exclude>
              <exclude>**/*.key</exclude>
              <exclude>**/authorized_keys</exclude>
              <exclude>**/*.war</exclude>
              <exclude>**/*.mar</exclude>
              <exclude>**/*.jar</exclude>
              <exclude>**/*.iso</exclude>
              <exclude>**/*.tgz</exclude>
              <exclude>**/*.zip</exclude>
              <exclude>**/target/**</exclude>
              <exclude>**/.vagrant</exclude>
              <exclude>**/*.json</exclude>
              <exclude>build/build.number</exclude>
              <exclude>services/console-proxy/server/js/jquery.js</exclude>
              <exclude>debian/compat</exclude>
              <exclude>debian/control</exclude>
              <exclude>debian/dirs</exclude>
              <exclude>debian/rules</exclude>
              <exclude>debian/source/format</exclude>
              <exclude>dist/console-proxy/js/jquery.js</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/ServerResource.sln</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/packages/**</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/.nuget/**</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/obj/**</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/bin/**</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/packages.config</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/App.config</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/*.csproj</exclude>
              <exclude>plugins/hypervisors/hyperv/DotNet/ServerResource/**/*.settings</exclude>
              <exclude>plugins/hypervisors/hyperv/conf/agent.properties</exclude>
              <exclude>scripts/vm/systemvm/id_rsa.cloud</exclude>
              <exclude>services/console-proxy/server/conf/agent.properties</exclude>
              <exclude>services/console-proxy/server/conf/environment.properties</exclude>
              <exclude>services/secondary-storage/conf/agent.properties</exclude>
              <exclude>services/secondary-storage/conf/environment.properties</exclude>
              <exclude>test/systemvm/README.md</exclude>
              <exclude>tools/appliance/.ruby-version</exclude>
              <exclude>tools/vagrant/systemvm/vagrant.pub</exclude>
              <exclude>tools/vagrant/systemvm/.ruby-version</exclude>
              <exclude>tools/devcloud/basebuild/puppet-devcloudinitial/files/network.conf</exclude>
              <exclude>tools/appliance/definitions/devcloud/*</exclude>
              <exclude>tools/appliance/definitions/systemvmtemplate/*</exclude>
              <exclude>tools/appliance/definitions/systemvm64template/*</exclude>
              <exclude>tools/appliance/definitions/builtin/*</exclude>
              <exclude>tools/cli/cloudmonkey.egg-info/*</exclude>
              <exclude>tools/devcloud/src/deps/boxes/basebox-build/definition.rb</exclude>
              <exclude>tools/devcloud/src/deps/boxes/basebox-build/preseed.cfg</exclude>
              <exclude>tools/marvin/Marvin.egg-info/*</exclude>
              <exclude>ui/css/token-input-facebook.css</exclude>
              <exclude>ui/lib/flot/jquery.colorhelpers.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.crosshair.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.fillbetween.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.image.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.navigate.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.pie.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.resize.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.selection.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.stack.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.symbol.js</exclude>
              <exclude>ui/lib/flot/jquery.flot.threshold.js</exclude>
              <exclude>ui/lib/jquery-ui/css/jquery-ui.css</exclude>
              <exclude>ui/lib/jquery-ui/index.html</exclude>
              <exclude>ui/lib/jquery-ui/js/jquery-ui.js</exclude>
              <exclude>ui/lib/jquery.cookies.js</exclude>
              <exclude>ui/lib/jquery.easing.js</exclude>
              <exclude>ui/lib/jquery.js</exclude>
              <exclude>ui/lib/jquery.md5.js</exclude>
              <exclude>ui/lib/jquery.validate.js</exclude>
              <exclude>ui/lib/jquery.tokeninput.js</exclude>
              <exclude>ui/lib/qunit/qunit.css</exclude>
              <exclude>ui/lib/qunit/qunit.js</exclude>
              <exclude>ui/lib/reset.css</exclude>
              <exclude>ui/lib/require.js</exclude>
              <exclude>systemvm/conf/agent.properties</exclude>
              <exclude>systemvm/conf/environment.properties</exclude>
              <exclude>systemvm/js/jquery.js</exclude>
              <exclude>systemvm/patches/debian/systemvm.vmx</exclude>
              <exclude>systemvm/patches/debian/config/root/.ssh/authorized_keys</exclude>
              <exclude>systemvm/patches/debian/config/etc/apache2/httpd.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/apache2/ports.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/apache2/sites-available/default</exclude>
              <exclude>systemvm/patches/debian/config/etc/apache2/sites-available/default-ssl</exclude>
              <exclude>systemvm/patches/debian/config/etc/apache2/vhostexample.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/dnsmasq.conf.tmpl</exclude>
              <exclude>systemvm/patches/debian/config/etc/vpcdnsmasq.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/ssh/sshd_config</exclude>
              <exclude>systemvm/patches/debian/config/etc/rsyslog.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/logrotate.conf</exclude>
              <exclude>systemvm/patches/debian/config/etc/logrotate.d/*</exclude>
              <exclude>systemvm/patches/debian/config/etc/sysctl.conf</exclude>
              <exclude>systemvm/patches/debian/config/root/redundant_router/keepalived.conf.templ</exclude>
              <exclude>systemvm/patches/debian/config/root/redundant_router/arping_gateways.sh.templ</exclude>
              <exclude>systemvm/patches/debian/config/root/redundant_router/conntrackd.conf.templ</exclude>
              <exclude>systemvm/patches/debian/vpn/etc/ipsec.conf</exclude>
              <exclude>systemvm/patches/debian/vpn/etc/ppp/options.xl2tpd</exclude>
              <exclude>systemvm/patches/debian/vpn/etc/xl2tpd/xl2tpd.conf</exclude>
              <exclude>systemvm/patches/debian/vpn/etc/ipsec.secrets</exclude>
              <exclude>systemvm/patches/debian/config/etc/haproxy/haproxy.cfg</exclude>
              <exclude>systemvm/patches/debian/config/etc/cloud-nic.rules</exclude>
              <exclude>systemvm/patches/debian/config/etc/modprobe.d/aesni_intel</exclude>
              <exclude>systemvm/patches/debian/config/etc/rc.local</exclude>
              <exclude>systemvm/patches/debian/config/var/www/html/userdata/.htaccess</exclude>
              <exclude>systemvm/patches/debian/config/var/www/html/latest/.htaccess</exclude>
              <exclude>systemvm/patches/debian/vpn/etc/ipsec.d/l2tp.conf</exclude>
              <exclude>tools/transifex/.tx/config</exclude>
              <exclude>tools/logo/apache_cloudstack.png</exclude>
              <exclude>tools/marvin/marvin/sandbox/advanced/sandbox.cfg</exclude>
              <exclude>tools/ngui/static/bootstrap/*</exclude>
              <exclude>tools/ngui/static/js/lib/*</exclude>
              <exclude>**/.checkstyle</exclude>
              <exclude>scripts/installer/windows/acs_license.rtf</exclude>
              <exclude>**/*.md</exclude>
            </excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.2</version>
          <configuration>
            <source>${cs.jdk.version}</source>
            <target>${cs.jdk.version}</target>
            <fork>true</fork>
            <meminitial>128m</meminitial>
            <maxmem>512m</maxmem>
            <compilerArgument>-XDignore.symbol.file=true</compilerArgument>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>2.5</version>
          <configuration>
            <archive>
              <manifest>
                <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
              </manifest>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>1.9.1</version>
          <executions>
            <execution>
              <id>remove-old-installers</id>
              <goals>
                <goal>remove-project-artifact</goal>
              </goals>
              <configuration>
                <removeAll>true</removeAll>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.9</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>cobertura-maven-plugin</artifactId>
          <configuration>
            <formats>
              <format>html</format>
              <format>xml</format>
            </formats>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>findbugs-maven-plugin</artifactId>
          <version>${cs.findbugs.version}</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.cloudstack</groupId>
              <artifactId>checkstyle</artifactId>
              <version>${project.version}</version>
            </dependency>
          </dependencies>
          <configuration>
            <effort>Max</effort>
            <threshold>High</threshold>
            <xmlOutput>true</xmlOutput>
            <failOnError>false</failOnError>
            <maxHeap>2048</maxHeap>
            <excludeFilterFile>findbugsExcludeFilter.xml</excludeFilterFile>
          </configuration>
          <executions>
            <execution>
              <id>cloudstack-findbugs</id>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-pmd-plugin</artifactId>
          <version>3.3</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.cloudstack</groupId>
              <artifactId>checkstyle</artifactId>
              <version>${project.version}</version>
            </dependency>
          </dependencies>
          <configuration>
            <failOnViolation>false</failOnViolation>
            <rulesets>
              <ruleset>cloud-pmd.xml</ruleset>
            </rulesets>
          </configuration>
          <executions>
            <execution>
              <id>cloudstack-pmd</id>
              <goals>
                <goal>check</goal>
                <goal>cpd-check</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.18.1</version>
          <configuration>
            <argLine>-Djava.security.egd=file:/dev/./urandom -noverify</argLine>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>2.18.1</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
  <reporting>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>${cs.findbugs.version}</version>
        <configuration>
          <threshold>Low</threshold><!-- High|Normal|Low|Exp|Ignore -->
          <effort>Default</effort><!-- Min|Default|Max -->
          <excludeFilterFile>${basedir}/findbugsExcludeFilter.xml</excludeFilterFile>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${cs.javadoc.version}</version>
        <configuration>
          <minmemory>128m</minmemory>
          <maxmemory>1g</maxmemory>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>2.7</version>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <version>2.6</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.4</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.7</version>
      </plugin>
    </plugins>
  </reporting>
  <profiles>
    <profile>
      <id>systemvm</id>
      <activation>
        <property>
          <name>systemvm</name>
        </property>
      </activation>
      <modules>
        <module>systemvm</module>
      </modules>
    </profile>
    <profile>
      <id>eclipse</id>
      <properties>
        <cs.target.dir>target-eclipse</cs.target.dir>
      </properties>
    </profile>
    <profile>
      <id>developer</id>
      <properties>
        <marvin.config>tools/devcloud/devcloud.cfg</marvin.config>
      </properties>
      <modules>
        <module>test</module>
        <module>developer</module>
        <module>tools</module>
      </modules>
    </profile>
    <profile>
      <id>impatient</id>
      <properties>
        <marvin.config>tools/devcloud/devcloud.cfg</marvin.config>
      </properties>
      <modules>
        <module>developer</module>
      </modules>
    </profile>
    <profile>
      <id>vmware</id>
      <activation>
        <property>
          <name>noredist</name>
        </property>
      </activation>
      <modules>
        <module>vmware-base</module>
      </modules>
    </profile>
    <profile>
      <id>disablecheckstyle</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <executions>
              <execution>
                <id>cloudstack-checkstyle</id>
                <phase>none</phase>
                <inherited>true</inherited>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>enablefindbugs</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <executions>
              <execution>
                <id>cloudstack-findbugs</id>
                <phase>process-classes</phase>
                <inherited>true</inherited>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>buildw</id>
      <activation>
        <property>
          <name>buildw</name>
        </property>
      </activation>
      <modules>
        <module>tools/wix-cloudstack-maven-plugin</module>
      </modules>
    </profile>
  </profiles>
</project>
