Skip to content

Instantly share code, notes, and snippets.

@danwdart
Created April 18, 2012 16:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danwdart/2414936 to your computer and use it in GitHub Desktop.
Save danwdart/2414936 to your computer and use it in GitHub Desktop.
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>canddi</groupId>
<artifactId>canddi</artifactId>
<packaging>php</packaging>
<name>Canddi</name>
<version>1.1-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mavenAntrunPlugin.version>1.6</mavenAntrunPlugin.version>
<mavenAssemblyPlugin.version>2.2-beta-4</mavenAssemblyPlugin.version>
<mavenDependencyPlugin.version>2.1</mavenDependencyPlugin.version>
<mavenReleasePlugin.version>2.0</mavenReleasePlugin.version>
<mavenSurefirePlugin.version>2.12</mavenSurefirePlugin.version>
<Mockery.version>0.7.1</Mockery.version>
<Mongo.version>1.1-SNAPSHOT</Mongo.version>
<Mustache.version>1.1-SNAPSHOT</Mustache.version>
<phpcs.version>1.1.4</phpcs.version>
<phpmaven.version>2.0-SNAPSHOT</phpmaven.version>
<phpunit.version>3.3.9</phpunit.version>
<PostcodeAnywhere.version>1.1-SNAPSHOT</PostcodeAnywhere.version>
<RabbitMQ.version>1.1.0</RabbitMQ.version>
<Rapleaf.version>1.1-SNAPSHOT</Rapleaf.version>
<Wurfl.version>1.1-SNAPSHOT</Wurfl.version>
<zend.version>1.11.11</zend.version>
<jets3t.version>0.8.0</jets3t.version>
<!-- SONAR SETTINGS -->
<sonar.language>php</sonar.language>
<sonar.dynamicAnalysis>true</sonar.dynamicAnalysis>
<sonar.phpPmd.shouldRun>true</sonar.phpPmd.shouldRun>
<sonar.phpCodesniffer.shouldRun>true</sonar.phpCodesniffer.shouldRun>
<sonar.phpDepend.shouldRun>false</sonar.phpDepend.shouldRun>
<sonar.phpUnit.coverage.shouldRun>true</sonar.phpUnit.coverage.shouldRun>
<sonar.phpUnit.shouldRun>true</sonar.phpUnit.shouldRun>
<!--<sonar.phpUnit.mainTestClass>/source/tests/AllTests2.php</sonar.phpUnit.mainTestClass> -->
<sonar.phpcpd.shouldRun>true</sonar.phpcpd.shouldRun>
<sonar.phpcpd.excludes>source/tests</sonar.phpcpd.excludes>
<sonar.phpPmd.analyzeOnly>true</sonar.phpPmd.analyzeOnly>
<sonar.exclusions>src/main/php/blog</sonar.exclusions>
<!-- Change when and if we have a vhost proxied -->
<sonar.host.url>http://localhost:9000</sonar.host.url>
<!-- /SONAR SETTINGS -->
<!-- AWS SETTINGS -->
<aws.s3.bucket.name>static.canddi.io/</aws.s3.bucket.name>
<!-- /AWS SETTINGS -->
<!-- JS Lint Settings -->
<jslint.jar>${project.basedir}/src/test/resources/jslint4java.jar</jslint.jar>
<jslint.maven.plugin.version>1.0-SNAPSHOT</jslint.maven.plugin.version>
<jslint.options>browser,cap,debug,devel,evil,fragment,laxbreak,on</jslint.options>
<jslint.predef/>
<jslint.source.dir>${project.basedir}/src/main/javascript</jslint.source.dir>
</properties>
<distributionManagement>
<repository>
<id>canddi-deploy</id>
<url>scpexe://maven.canddi.mobi/var/maven/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<!-- The validation and testing phase -->
<plugin>
<groupId>org.phpmaven</groupId>
<artifactId>maven-php-plugin</artifactId>
<version>${phpmaven.version}</version>
<extensions>true</extensions>
<configuration>
<compileArgs>-d auto_prepend_file=${basedir}/registerautoload.php</compileArgs>
<ignoreValidate>true</ignoreValidate>
</configuration>
</plugin>
<!-- ANT to create class map files -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${mavenAntrunPlugin.version}</version>
<executions>
<execution>
<id>canddi.php classmaps</id>
<phase>test</phase>
<configuration>
<target>
<property name="path.inputRaw" value="${project.basedir}/src/main/php" />
<property name="path.classMapGen" value="${project.basedir}/src/site/resources/classmap_generator.php" />
<property name="path.outputRaw" value="${project.build.directory}/classes" />
<ant antfile="${project.basedir}/src/main/php/build.xml">
<target name="compile"/>
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- The actual assembly / install phase -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>${mavenAssemblyPlugin.version}</version>
<dependencies>
<dependency>
<groupId>org.phpmaven</groupId>
<artifactId>maven-php-plugin</artifactId>
<version>${phpmaven.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>${project.artifactId}-${project.version}</finalName>
<descriptors>
<descriptor>${basedir}/config.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<!-- Code Coverage -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1.1</version>
<executions>
<execution>
<id>reports-dir</id>
<phase>verify</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>mkdir</executable>
<arguments>
<argument>-p</argument>
<argument>${project.build.directory}/reports/coverage</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>phpunit</id>
<phase>verify</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>./src/test/php/phpunit</executable>
<arguments>
<argument>-dmemory_limit=1500M</argument>
<argument>--verbose</argument>
<argument>--coverage-html</argument>
<argument>${project.build.directory}/reports/coverage</argument>
<argument>--colors</argument>
<argument>--bootstrap</argument>
<argument>registerautoload.php</argument>
<argument>src/test/php/</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<!--############ JAVASCRIPT CODE ############-->
<!-- Jasmine for BDD on javascript -->
<!-- https://github.com/pivotal/jasmine/wiki -->
<plugin>
<groupId>com.github.searls</groupId>
<artifactId>jasmine-maven-plugin</artifactId>
<version>1.0.2-beta-5</version>
<configuration>
<preloadSources>
<source>${project.basedir}/src/main/javascript/canddi.com/Libraries/jquery-1.7.js</source>
<source>${project.basedir}/src/main/javascript/canddi.com/Libraries/underscore.js</source>
<source>${project.basedir}/src/main/javascript/canddi.com/Libraries/backbone.js</source>
<source>${project.basedir}/src/main/javascript/canddi.com/Helpers/Namespace.js</source>
</preloadSources>
<sourceIncludes>
<include>Helpers/**/*.js</include>
<include>*.js</include>
<include>Model/**/*.js</include>
<include>Collection/**/*.js</include>
<include>View/**/*.js</include>
<include>Router/**/*.js</include>
</sourceIncludes>
<sourceExcludes>
<exclude>Libraries/**</exclude>
<exclude>Helpers/Initialization.js</exclude>
<exclude>StartClosure.js</exclude>
<exclude>StopClosure.js</exclude>
<exclude>StartUp.js</exclude>
</sourceExcludes>
<jsSrcDir>${project.basedir}/src/main/javascript/canddi.com</jsSrcDir>
<jsTestSrcDir>${project.basedir}/src/test/javascript/canddi.com</jsTestSrcDir>
<junitXmlReportFileName>jasmine.xml</junitXmlReportFileName>
</configuration>
<executions>
<execution>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- ANT to compress canddi.js and minify it -->
<!-- @TODO - this should be set to run in the right goals (ie: should build in test and compile in install) -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${mavenAntrunPlugin.version}</version>
<executions>
<execution>
<id>compile-canddi.js</id>
<phase>validate</phase>
<configuration>
<target>
<property name="path.source" value="${project.basedir}/src/main/javascript/canddi.com"/>
<property name="path.outputRaw" value="${project.basedir}/src/main/public/canddi.com/assets/js"/>
<property name="path.outputCompress" value="${project.build.directory}/public/canddi.com/assets/js"/>
<property name="path.jarFiles" value="${project.basedir}/src/site/jars/"/>
<ant antfile="${project.basedir}/src/main/javascript/canddi.com/build.xml">
<target name="minify"/>
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- ANT to compress canddi_code.js and minify it -->
<!-- @TODO - this should be set to run in the right goals (ie: should build in test and compile in install) -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${mavenAntrunPlugin.version}</version>
<executions>
<execution>
<id>compile-canddi_code.js</id>
<phase>validate</phase>
<configuration>
<target>
<property name="path.source" value="${project.basedir}/src/main/javascript/s.canddi.com/canddi_code"/>
<property name="path.outputRaw" value="${project.basedir}/src/main/public/s.canddi.com/"/>
<property name="path.outputCompress" value="${project.build.directory}/public/s.canddi.com/"/>
<property name="path.jarFiles" value="${project.basedir}/src/site/jars/"/>
<property name="path.buildDir" value="${project.build.directory}" />
<ant antfile="${project.basedir}/src/main/javascript/s.canddi.com/canddi_code/build.xml">
<target name="minify"/>
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- ANT to compress canddi.css and minify it -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${mavenAntrunPlugin.version}</version>
<executions>
<execution>
<id>compile-canddi.css</id>
<phase>validate</phase>
<configuration>
<target>
<property name="path.source" value="${project.basedir}/src/main/css/"/>
<property name="path.outputRaw" value="${project.basedir}/src/main/public/canddi.com/assets/css"/>
<property name="path.outputCompress" value="${project.build.directory}/public/canddi.com/assets/css"/>
<property name="path.jarFiles" value="${project.basedir}/src/site/jars/"/>
<ant antfile="${project.basedir}/src/main/css/build.xml">
<target name="minify"/>
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Build the cached mustache file -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1.1</version>
<executions>
<execution>
<id>mustache compress</id>
<phase>validate</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${basedir}/src/main/mustache/build.sh</executable>
</configuration>
</execution>
</executions>
</plugin>
<!-- plugin for amazon ec2 mgmt -->
<!--
NOTE: see the NOTES.txt
- to get this working we had to add the mime.types file into the compiled .jar
-->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<phase>deploy</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<includeProjectDependencies>true</includeProjectDependencies>
<includePluginDependencies>true</includePluginDependencies>
<executableDependency>
<groupId>net.java.dev.jets3t</groupId>
<artifactId>jets3t</artifactId>
<version>${jets3t.version}</version>
</executableDependency>
<!-- main class to invoke synchronization -->
<mainClass>org.jets3t.apps.synchronize.Synchronize</mainClass>
<arguments>
<argument>--properties</argument>
<argument>${project.basedir}/src/site/config/aws.s3.synchronize.properties</argument>
<argument>UP</argument>
<argument>${aws.s3.bucket.name}</argument>
<argument>${project.basedir}/src/main/public/canddi.com</argument>
<argument>${basedir}/target/public/canddi.com</argument>
<argument>${basedir}/target/public/s.canddi.com</argument>
</arguments>
</configuration>
<dependencies>
<dependency>
<groupId>net.java.dev.jets3t</groupId>
<artifactId>jets3t</artifactId>
<version>${jets3t.version}</version>
<type>jar</type>
</dependency>
</dependencies>
</plugin>
</plugins>
<!-- Otherwise sonar complains -->
<sourceDirectory>src/main/php</sourceDirectory>
<testSourceDirectory>src/test/php~</testSourceDirectory>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>${mavenAntrunPlugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>${mavenAssemblyPlugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>${mavenDependencyPlugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>${mavenReleasePlugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>${mavenReleasePlugin.version}</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<repositories>
<repository>
<id>canddi</id>
<name>CANDDi</name>
<url>http://maven.canddi.io/archiva/repository/canddi/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>repo1</id>
<name>Maven Repo1</name>
<url>http://repo1.maven.org/maven2/</url>
</repository>
<repository>
<name>jets3t</name>
<id>jets3t</id>
<url>http://jets3t.s3.amazonaws.com/maven2</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.phpunit</groupId>
<artifactId>phpunit5</artifactId>
<version>${phpunit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<artifactId>MongoDB</artifactId>
<groupId>Database</groupId>
<version>${Mongo.version}</version>
</dependency>
<dependency>
<artifactId>Mustache</artifactId>
<groupId>Template</groupId>
<version>${Mustache.version}</version>
</dependency>
<dependency>
<artifactId>PostcodeAnywhere</artifactId>
<groupId>Lookup</groupId>
<version>${PostcodeAnywhere.version}</version>
</dependency>
<dependency>
<artifactId>Rabbit</artifactId>
<groupId>Message</groupId>
<version>${RabbitMQ.version}</version>
</dependency>
<dependency>
<artifactId>Rapleaf</artifactId>
<groupId>Lookup</groupId>
<version>${Rapleaf.version}</version>
</dependency>
<dependency>
<groupId>Zend</groupId>
<artifactId>Zend</artifactId>
<version>${zend.version}</version>
</dependency>
<dependency>
<artifactId>Wurfl</artifactId>
<groupId>Lookup</groupId>
<version>${Wurfl.version}</version>
</dependency>
<dependency>
<artifactId>Mockery</artifactId>
<groupId>UnitTest</groupId>
<version>${Mockery.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<artifactId>phpcs</artifactId>
<groupId>canddi</groupId>
<version>${phpcs.version}</version>
<scope>test</scope>
</dependency>
<!-- aws s3 mgmt client -->
<dependency>
<groupId>net.java.dev.jets3t</groupId>
<artifactId>jets3t</artifactId>
<version>${jets3t.version}</version>
</dependency>
<!-- synchronize for s3 client -->
<dependency>
<groupId>net.java.dev.jets3t</groupId>
<artifactId>synchronize</artifactId>
<version>${jets3t.version}</version>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.phpmaven</groupId>
<artifactId>maven-php-plugin</artifactId>
<version>${phpmaven.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>${mavenSurefirePlugin.version}</version>
<reportSets>
<reportSet>
<reports>
<report>report-only</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>1.3.1</version>
<reportSets>
<reportSet>
<reports>
<report>dependency-updates-report</report>
<report>plugin-updates-report</report>
<report>property-updates-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
</project>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment