Skip to content

Instantly share code, notes, and snippets.

@dragansah
Created January 12, 2015 13:33
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 dragansah/e88d955438092777b061 to your computer and use it in GitHub Desktop.
Save dragansah/e88d955438092777b061 to your computer and use it in GitHub Desktop.
<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>
<groupId>com.vuact</groupId>
<artifactId>vuact-website</artifactId>
<packaging>war</packaging>
<version>0.4.2-SNAPSHOT</version>
<name>vuact-website</name>
<url>http://vuact.com/</url>
<properties>
<tynamo-version>0.5.2</tynamo-version>
<tynamo-federatedaccounts-version>0.4.5</tynamo-federatedaccounts-version>
<tapestry-version>5.3.8</tapestry-version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<prerequisites>
<maven>3.0.4</maven>
</prerequisites>
<scm>
<connection>scm:git:git@github.com:mikkojarvenpaa/Vuact-Java.git</connection>
<url>scm:git:git@github.com:mikkojarvenpaa/Vuact-Java.git</url>
<developerConnection>scm:git:git@github.com:mikkojarvenpaa/Vuact-Java.git</developerConnection>
<tag>HEAD</tag>
</scm>
<repositories>
<repository>
<id>bitly</id>
<url>http://stackmagic.github.io/maven-repo/maven2/</url>
</repository>
<repository>
<id>devlab722-repo</id>
<url>http://nexus.devlab722.net/nexus/content/repositories/releases
</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>vuact-release</id>
<name>Vuact release repository</name>
<url>http://pocwi.dyndns.dk/nexus/content/repositories/vuact-releases</url>
</repository>
<snapshotRepository>
<id>vuact-snapshot</id>
<name>Vuact snapshot repository</name>
<url>http://pocwi.dyndns.dk/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<ciManagement>
<system>jenkins</system>
<url>http://hitonme.dyndns.dk/jenkins</url>
</ciManagement>
<issueManagement>
<system>github</system>
<url>https://github.com/mikkojarvenpaa/Vuact-Java/issues</url>
</issueManagement>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.vuact</groupId>
<artifactId>vuact-development-mailbox</artifactId>
<version>0.0.4</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/filtered-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.3.2</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.16</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
</plugin>
<plugin>
<groupId>com.cloudbees</groupId>
<artifactId>bees-maven-plugin</artifactId>
<version>1.3.2</version>
</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-compiler-plugin</artifactId>
<versionRange>[2.3.2,)</versionRange>
<goals>
<goal>compile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.codehaus.mojo
</groupId>
<artifactId>
exec-maven-plugin
</artifactId>
<versionRange>
[1.2.1,)
</versionRange>
<goals>
<goal>exec</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
<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>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.cloudbees</groupId>
<artifactId>bees-maven-plugin</artifactId>
<configuration>
<appid>vuact/test</appid>
<apikey>${vuact.cloudbees.production.apikey}</apikey>
<secret>${vuact.cloudbees.production.secret}</secret>
</configuration>
</plugin>
<plugin>
<groupId>com.jelastic</groupId>
<artifactId>jelastic-maven-plugin</artifactId>
<version>1.6</version>
<configuration>
<email>${jelastic.username}</email>
<password>${jelastic.password}</password>
<context>ROOT</context>
<environment>${jelastic.environment}</environment>
<!-- <comment> for example ${buildNumber} </comment> - only version
1.7-SNAPSHOT -->
<api_hoster>app.jelastic.servint.net</api_hoster>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<phase>process-resources</phase>
<configuration>
<tasks>
<mkdir dir="${project.build.directory}/localization/WEB-INF" />
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>localize-en</id>
<phase>process-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<classpathScope>test</classpathScope>
<arguments>
<argument>-classpath</argument>
<classpath>
<dependency>hu.skzs.multiproperties:multiproperties-base</dependency>
<dependency>hu.skzs.multiproperties:multiproperties-handler-java</dependency>
</classpath>
<argument>hu.skzs.multiproperties.base.HandlerExecutor</argument>
<argument>-file</argument>
<argument>src/main/localization/vuact.multiproperties</argument>
<argument>-columnName</argument>
<argument>en</argument>
<argument>-columnConfig</argument>
<argument>${project.build.directory}/localization/WEB-INF/vuact_en.properties|false|false|false|false</argument>
<argument>-handlerClass</argument>
<argument>hu.skzs.multiproperties.handler.java.JavaHandler</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>localize-fi_FI</id>
<phase>process-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<classpathScope>test</classpathScope>
<arguments>
<argument>-classpath</argument>
<classpath>
<dependency>hu.skzs.multiproperties:multiproperties-base</dependency>
<dependency>hu.skzs.multiproperties:multiproperties-handler-java</dependency>
</classpath>
<argument>hu.skzs.multiproperties.base.HandlerExecutor</argument>
<argument>-file</argument>
<argument>src/main/localization/vuact.multiproperties</argument>
<argument>-columnName</argument>
<argument>fi_FI</argument>
<argument>-columnConfig</argument>
<argument>${project.build.directory}/localization/WEB-INF/vuact_fi_FI.properties|false|false|false|false</argument>
<argument>-handlerClass</argument>
<argument>hu.skzs.multiproperties.handler.java.JavaHandler</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>localize-mk</id>
<phase>process-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<classpathScope>test</classpathScope>
<arguments>
<argument>-classpath</argument>
<classpath>
<dependency>hu.skzs.multiproperties:multiproperties-base</dependency>
<dependency>hu.skzs.multiproperties:multiproperties-handler-java</dependency>
</classpath>
<argument>hu.skzs.multiproperties.base.HandlerExecutor</argument>
<argument>-file</argument>
<argument>src/main/localization/vuact.multiproperties</argument>
<argument>-columnName</argument>
<argument>mk</argument>
<argument>-columnConfig</argument>
<argument>${project.build.directory}/localization/WEB-INF/vuact_mk.properties|false|false|false|false</argument>
<argument>-handlerClass</argument>
<argument>hu.skzs.multiproperties.handler.java.JavaHandler</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>localize-pt_BR</id>
<phase>process-resources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<classpathScope>test</classpathScope>
<arguments>
<argument>-classpath</argument>
<classpath>
<dependency>hu.skzs.multiproperties:multiproperties-base</dependency>
<dependency>hu.skzs.multiproperties:multiproperties-handler-java</dependency>
</classpath>
<argument>hu.skzs.multiproperties.base.HandlerExecutor</argument>
<argument>-file</argument>
<argument>src/main/localization/vuact.multiproperties</argument>
<argument>-columnName</argument>
<argument>mk</argument>
<argument>-columnConfig</argument>
<argument>${project.build.directory}/localization/WEB-INF/vuact_pt_BR.properties|false|false|false|false</argument>
<argument>-handlerClass</argument>
<argument>hu.skzs.multiproperties.handler.java.JavaHandler</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<!-- needed just to make m2eclipse pick up src/test/groovy as a source
folder -->
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/groovy</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.7.0-01</version>
<!-- As explained at http://groovy-eclipse-plugin.42567.n3.nabble.com/Missing-snapshot-dependencies-for-org-codehaus-groovy-groovy-eclipse-batch-td3201320.html
groovy-eclipse-compiler pom.xml specifies a range with snapshot dependencies
which is why the metadata gets corrupted. Exclude the groovy-eclipse-batch
dependency, then explicitly specify version of groovy-eclipse-batch -->
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.0.4-04</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<goals>
<goal>perform</goal>
</goals>
<configuration>
<!-- Using pomFileName or arguments element doesn't work -->
<preparationGoals>clean verify -DskipTests</preparationGoals>
<goals>deploy -DskipTests -f development/website/pom.xml</goals>
<pomFileName>development/website/pom.xml</pomFileName>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/*UnitTest.java</include>
</includes>
<!-- Typically not needed, but configure arg line so you can run individual
integration tests with -Dtest=SomeIntegrationTest -->
<argLine>-Dtapestry.production-mode=false</argLine>
</configuration>
<!-- Mostly created different configuration for integration tests so
I wouldn't need to deal with cleaning up the database after seed entity service
has been run (because persistence test run after containers would easily
collide with existing data -->
<executions>
<!-- <execution> <id>surefire-it</id> <phase>integration-test</phase>
<configuration> <includes> <include>**/*IntegrationTest.java</include> </includes>
<forkMode>once</forkMode> <argLine>-Dorg.mortbay.jetty.webapp.parentLoaderPriority=true
-Dtapestry.production-mode=false -Dtapestry.execution-mode=test</argLine>
</configuration> <goals> <goal>test</goal> </goals> </execution> -->
<!-- Spock tests need to be run in a separate execution because Spock
internally uses JUnit. Surefire allows either testng or junit but not in
the same execution -->
<execution>
<id>test-spock</id>
<phase>integration-test</phase>
<configuration>
<includes>
<include>**/*Spec*</include>
</includes>
<testNGArtifactName>none:none</testNGArtifactName>
<forkMode>once</forkMode>
<!-- see #46: we just couldn't get htmlunitdriver to work because
the backbone event handlers weren't firing <argLine>-Dgeb.env=htmlunit -Dtapestry.execution-mode=test</argLine> -->
<argLine>-Dtapestry.execution-mode=test -XX:MaxPermSize=512m</argLine>
</configuration>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- http://groovy.codehaus.org/Groovy-Eclipse+compiler+plugin+for+Maven -->
<plugin>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.7.0-01</version>
<extensions>true</extensions>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.0.4-04</version>
</dependency>
</dependencies>
</plugin>
<!-- Is there any reason to use gmaven over groovy-eclipse-compiler? If
not, remove this section <plugin> <groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId> <version>1.3</version> <configuration>
<providerSelection>1.7</providerSelection> </configuration> <extensions>true</extensions>
<inherited>true</inherited> <executions> <execution> <goals> <goal>testCompile</goal>
</goals> </execution> </executions> </plugin> -->
<!-- Run the application using "mvn jetty:run" -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>7.6.5.v20120716</version>
<configuration>
<!-- configure Jetty to look for src/main/resources first so templates
don't need to be copied (e.g. when not using an IDE) -->
<classesDirectory>${basedir}/src/main/resources/</classesDirectory>
<webAppConfig>
<contextPath>/</contextPath>
<extraClasspath>${project.build.directory}/classes/</extraClasspath>
<resourceBases>
<resourceBase>${basedir}/src/main/webapp</resourceBase>
<resourceBase>${project.build.directory}/localization</resourceBase>
</resourceBases>
</webAppConfig>
<systemProperties>
<systemProperty>
<name>tapestry.execution-mode</name>
<value>development</value>
</systemProperty>
<systemProperty>
<name>tapestry.production-mode</name>
<value>false</value>
</systemProperty>
</systemProperties>
</configuration>
</plugin>
<!-- This changes the WAR file packaging so that what would normally go
into WEB-INF/classes is instead packaged as WEB-INF/lib/vuact-website.jar.
This is necessary for Tapestry to be able to search for page and component
classes at startup. Only certain application servers require this configuration,
please see the documentation at the Tapestry 5 project page (http://tapestry.apache.org/tapestry5/). -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
</archive>
<webResources>
<resource>
<directory>${project.build.directory}/localization</directory>
<includes>
<include>**/*.properties</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
<!-- This gets the plugin to clean up the cobertura.ser file left in the
root directory. -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.searls</groupId>
<artifactId>jasmine-maven-plugin</artifactId>
<version>1.3.1.2</version>
<configuration>
<!-- <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName>
<webDriverCapabilities> <phantomjs.binary.path>/Applications/phantomjs/bin/phantomjs</phantomjs.binary.path>
</webDriverCapabilities> -->
<preloadSources>
<include>${basedir}/src/test/resources/com/vuact/website/js/libs/jquery.min.js</include>
<include>${basedir}/src/test/resources/com/vuact/website/js/libs/jasmine-jquery.js</include>
<include>${basedir}/src/test/resources/com/vuact/website/js/libs/jasmine-fixture.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/underscore-min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/backbone-min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/keymaster.min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/d3.v2.min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/core-chart.min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/libs/sac.min.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/player/vuact.js</include>
<include>${basedir}/src/main/resources/com/vuact/website/js/player/views/VideoView.js</include>
</preloadSources>
<jsSrcDir>${basedir}/src/main/resources/com/vuact/website/js/player</jsSrcDir>
<jsTestSrcDir>${basedir}/src/test/resources/com/vuact/website/js/player</jsTestSrcDir>
<sourceExcludes>
<exclude>hangouts.js</exclude>
<exclude>templates/compile.js</exclude>
<exclude>video.js</exclude>
<exclude>vuact-T5Initializers.js</exclude>
<exclude>views/ReactionGraph-T5Initializer.js</exclude>
</sourceExcludes>
</configuration>
<!-- <executions> <execution> <goals> <goal>test</goal> </goals> </execution>
</executions> -->
</plugin>
</plugins>
</build>
<reporting>
<!-- Adds a report detailing the components, mixins and base classes defined
by this module. -->
<plugins>
<plugin>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-component-report</artifactId>
<version>5.2.6</version>
<configuration>
<rootPackage>com.vuact</rootPackage>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.1.2</version>
<configuration>
<dependencyDetailsEnabled>false</dependencyDetailsEnabled>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.16</version>
</plugin>
</plugins>
</reporting>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.3</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>15.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.concurrentlinkedhashmap</groupId>
<artifactId>concurrentlinkedhashmap-lru</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>net.swisstech.bitly</groupId>
<artifactId>bitly-api-client</artifactId>
<version>0.7.1</version>
</dependency>
<dependency>
<groupId>org.codehaus.janino</groupId>
<artifactId>janino</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<!-- For #129: Evaluate name/gender guessing libraries, not in use. See
GenderGuessingUnitTest <dependency> <groupId>org.apache.opennlp</groupId>
<artifactId>opennlp-tools</artifactId> <version>1.5.2-incubating</version>
<exclusions> <exclusion> <artifactId>jwnl</artifactId> <groupId>jwnl</groupId>
</exclusion> </exclusions> </dependency> <dependency> <groupId>net.sf.jwordnet</groupId>
<artifactId>jwnl</artifactId> <version>1.4_rc3</version> </dependency> -->
<!-- Need fix for SHIRO-380/runAs -->
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-web</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-core</artifactId>
<version>${tapestry-version}</version>
<exclusions>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
<exclusion>
<artifactId>log4j</artifactId>
<groupId>log4j</groupId>
</exclusion>
<exclusion>
<artifactId>javassist</artifactId>
<groupId>javassist</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-test</artifactId>
<version>${tapestry-version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-jpa</artifactId>
<version>${tapestry-version}</version>
</dependency>
<dependency>
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-upload</artifactId>
<version>${tapestry-version}</version>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.18.2-GA</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-model-jpa</artifactId>
<version>${tynamo-version}</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-editablecontent</artifactId>
<version>0.0.3</version>
</dependency>
<dependency>
<!-- force tapestry-beanvalidator -->
<!-- tapestry-editablecontent depends on tapestry-beanvalidator-5.3.6
but we need at least 5.3.7 -->
<groupId>org.apache.tapestry</groupId>
<artifactId>tapestry-beanvalidator</artifactId>
<version>${tapestry-version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.5.1</version>
</dependency>
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.14</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tynamo-test</artifactId>
<version>0.0.1</version>
<scope>test</scope>
<exclusions>
<!-- to avoid conflicts use the htmlunit version that comes with the
selenium driver -->
<exclusion>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-routing</artifactId>
<version>0.0.7</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.3.168</version>
</dependency>
<!-- <dependency> -->
<!-- <groupId>hu.skzs.multiproperties</groupId> -->
<!-- <artifactId>multiproperties-base</artifactId> -->
<!-- <version>1.3.1</version> -->
<!-- <scope>test</scope> -->
<!-- </dependency> -->
<!-- <dependency> -->
<!-- <groupId>hu.skzs.multiproperties</groupId> -->
<!-- <artifactId>multiproperties-handler-java</artifactId> -->
<!-- <version>1.3.0</version> -->
<!-- <scope>test</scope> -->
<!-- </dependency> -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.1</version>
</dependency>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-core</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>org.twitter4j</groupId>
<artifactId>twitter4j-stream</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tynamo-common</artifactId>
<version>0.0.3</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-security</artifactId>
<version>0.5.1</version>
</dependency>
<dependency>
<groupId>org.tynamo.security</groupId>
<artifactId>tapestry-security-jpa</artifactId>
<version>0.0.4</version>
<exclusions>
<exclusion>
<!-- workaround for TYNAMO-225 -->
<groupId>org.tynamo</groupId>
<artifactId>tapestry-model-test</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo.security</groupId>
<artifactId>tynamo-federatedaccounts-pac4jbasedoauth</artifactId>
<version>${tynamo-federatedaccounts-version}</version>
<exclusions>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo.security</groupId>
<artifactId>tynamo-federatedaccounts-twitter</artifactId>
<version>${tynamo-federatedaccounts-version}</version>
<exclusions>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo.security</groupId>
<artifactId>tynamo-federatedaccounts-facebook</artifactId>
<version>${tynamo-federatedaccounts-version}</version>
<exclusions>
<exclusion>
<artifactId>slf4j-log4j12</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo.security</groupId>
<artifactId>tynamo-federatedaccounts-rollingtokens</artifactId>
<version>${tynamo-federatedaccounts-version}</version>
<exclusions>
<exclusion>
<!-- workaround for TYNAMO-225 -->
<groupId>org.tynamo</groupId>
<artifactId>tapestry-model-test</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-jpa-seedentity</artifactId>
<version>0.1.6</version>
</dependency>
<dependency>
<groupId>org.got5</groupId>
<artifactId>tapestry5-jquery</artifactId>
<version>3.3.3</version>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.5</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>
<!-- not used at the moment - was used on cloudbees evaluation platfom
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId>
<version>5.1.20</version> </dependency> -->
<!-- <dependency> -->
<!-- <groupId>com.vuact</groupId> -->
<!-- <artifactId>vuact-development-mailbox</artifactId> -->
<!-- <scope>test</scope> -->
<!-- </dependency> -->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.0.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.gebish</groupId>
<artifactId>geb-spock</artifactId>
<version>0.9.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.spockframework</groupId>
<artifactId>spock-core</artifactId>
<version>0.7-groovy-2.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-htmlunit-driver</artifactId>
<version>2.44.0</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.2.5</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-firefox-driver</artifactId>
<version>2.44.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.github.detro.ghostdriver</groupId>
<artifactId>phantomjsdriver</artifactId>
<version>1.1.0</version>
<scope>test</scope>
</dependency>
<!-- javamelody-core -->
<dependency>
<groupId>net.bull.javamelody</groupId>
<artifactId>javamelody-core</artifactId>
<version>1.49.0</version>
</dependency>
<dependency>
<groupId>com.ecwid</groupId>
<artifactId>ecwid-mailchimp</artifactId>
<version>1.3.0.4</version>
</dependency>
<!-- Try out wro4j for on-the-fly sass support but not enable, since we'd
need compass deployed as well to make it really useful for the smokes screen
<dependency> <groupId>ro.isdc.wro4j</groupId> <artifactId>wro4j-extensions</artifactId>
<version>1.6.1</version> <exclusions> <!- Less causes a conflict with log4j-over-slf4j,
it must natively import some log4j classes since log4j is not a dependency
-> <exclusion> <artifactId>less4j</artifactId> <groupId>com.github.sommeri</groupId>
</exclusion> </exclusions> </dependency> -->
<dependency>
<groupId>com.paypal.sdk</groupId>
<artifactId>merchantsdk</artifactId>
<version>2.2.98</version>
</dependency>
<dependency>
<groupId>com.github.lltyk</groupId>
<artifactId>tapestry-wro4j</artifactId>
<version>0.9.8</version>
<exclusions>
<exclusion>
<artifactId>bourbon-gem-jar</artifactId>
<groupId>nz.co.edmi</groupId>
</exclusion>
<exclusion>
<artifactId>sass-gems</artifactId>
<groupId>me.n4u.sass</groupId>
</exclusion>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- tapestry-wro4j specifies a range for sass-gems dependency so build
keeps requiring metadata every time if we don't lock the dependency down.
Argh nothing seems to help, the problem is the range in nz.co.edmi:bourbon-gem-jar.
Exclude the whole dependency since we are not using sass compilation <dependency>
<groupId>me.n4u.sass</groupId> <artifactId>sass-gems</artifactId> <!- we
should be using the following but cannot because of the range in the dependency
<version>3.2.1</version> -> <version>3.1.19</version> </dependency> -->
<dependency>
<groupId>com.github.sommeri</groupId>
<artifactId>less4j</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-exceptionpage</artifactId>
<version>0.1.2</version>
</dependency>
<dependency>
<groupId>com.ibm.icu</groupId>
<artifactId>icu4j</artifactId>
<version>51.2</version>
</dependency>
<dependency>
<groupId>org.tynamo</groupId>
<artifactId>tapestry-resteasy</artifactId>
<version>0.3.2</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson-provider</artifactId>
<version>3.0.5.Final</version>
</dependency>
<dependency>
<groupId>com.wordnik</groupId>
<artifactId>swagger-jaxrs_2.10</artifactId>
<version>1.3.1</version>
<exclusions>
<exclusion>
<artifactId>javassist</artifactId>
<groupId>javassist</groupId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<profiles>
<profile>
<!-- to be used with jenkins continuous builds only -->
<id>continuous-delivery</id>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-jsch</artifactId>
<version>1.8.3</version>
</dependency>
<!-- we are getting random An Ant BuildException has occured: com.jcraft.jsch.JSchException:
Auth fail around Ant part ...<scp todir exceptions when scping to war to
alpha. Try out a newer JSch fork from https://github.com/vngx/vngx-jsch as
a remedy or at least to provide better error messages <dependency> <groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId> <version>0.1.48</version> </dependency> -->
<dependency>
<groupId>org.vngx</groupId>
<artifactId>vngx-jsch</artifactId>
<version>0.9</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>prepend-war-with-build-number</id>
<phase>validate</phase>
<configuration>
<exportAntProperties>true</exportAntProperties>
<target>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" />
<!-- strategy: add lots of zeroes, then truncate to fixed width.
Replace doesn't seem to allow full regex so do it in two parts -->
<propertyregex property="prefixedBuildNumber"
input="${env.BUILD_NUMBER}" regexp="^([0-9])+?" replace="00000\1"
override="true" />
<propertyregex property="formattedBuildNumber"
input="${prefixedBuildNumber}" regexp="(\d{5}$)" select="\1"
override="true" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<id>rename-war-for-parallel-deployment</id>
<phase>install</phase>
<configuration>
<target>
<fail unless="formattedBuildNumber"
message="Environment variable BUILD_NUMBER is not available. Is this target running on CI system?" />
<!-- The line below just for local testing on ci machine, we want
to deploy remotely via ssh to alpha environment <copy file="${project.build.directory}/vuact.war"
tofile="/usr/share/tomcat/webapps/vuact##${formattedBuildNumber}.war" /> -->
<scp keyfile="${user.home}/.ssh/id_rsa"
file="${project.build.directory}/${project.build.finalName}.war"
todir="tomcat@alpha.vuact.com:/opt/tomcat/webapps/vuact##${formattedBuildNumber}.war.new" />
<sshexec host="alpha.vuact.com" username="tomcat"
keyfile="${user.home}/.ssh/id_rsa"
command="mv /opt/tomcat/webapps/vuact##${formattedBuildNumber}.war.new /opt/tomcat/webapps/ROOT##${formattedBuildNumber}.war" />
<!-- While waiting for https://issues.apache.org/bugzilla/show_bug.cgi?id=52777
to be resolved, manually delete older ones -->
<sshexec host="alpha.vuact.com" username="tomcat"
keyfile="${user.home}/.ssh/id_rsa"
command="ls /opt/tomcat/webapps/ROOT*.war | sort -r | tail -n+2 | xargs rm" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>alpha</id>
<dependencies>
<dependency>
<groupId>com.vuact</groupId>
<artifactId>vuact-development-mailbox</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
<!-- for some strange reason the jetty-maven-plugin configuration doesn't
behave in the same way on the different operating systems. _classesDirectory_
and _extraClasspath_ work differently on Windows than on Mac :( -->
<id>macosx</id>
<activation>
<os>
<family>mac</family>
</os>
</activation>
<build>
<plugins>
<!-- Run the application using "mvn jetty:run-forked" -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<!-- configure Jetty to look for src/main/resources first so templates
don't need to be copied (e.g. when not using an IDE) -->
<!-- this multiple folder configuration doesn't work on Windows -->
<classesDirectory combine.self="override">${basedir}/src/main/resources/;${project.build.directory}/classes/</classesDirectory>
<!-- mvn jetty:run -->
<webAppConfig combine.self="override">
<contextPath>/</contextPath>
<resourceBases>
<resourceBase>${basedir}/src/main/webapp</resourceBase>
<resourceBase>${project.build.directory}/localization</resourceBase>
</resourceBases>
</webAppConfig>
<systemProperties>
<systemProperty>
<name>tapestry.execution-mode</name>
<value>development</value>
</systemProperty>
<systemProperty>
<name>tapestry.production-mode</name>
<value>false</value>
</systemProperty>
</systemProperties>
<!-- / mvn jetty:run -->
<!-- mvn jetty:run-forked Running an unassembled webapp in a separate
jvm http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin#jetty%3arun-forked__%3a__Running_an_unassembled_webapp_in_a_separate_jvm -->
<contextPath>/</contextPath>
<resourceBases>
<resourceBase>${project.build.directory}/localization</resourceBase>
</resourceBases>
<jvmArgs>-XX:MaxPermSize=256m -Xms512m -Xmx1024m
-Dtapestry.execution-mode=development
-Dtapestry.production-mode=false -Djava.awt.headless=true</jvmArgs>
<stopPort>9966</stopPort>
<!-- http://www.random.org/strings/?num=1&len=16&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new -->
<stopKey>9VTs6yMoz3E8sdCS</stopKey>
<!-- / mvn jetty:run-forked -->
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- SSL debugging -->
<id>SSL</id>
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<!-- - if you need to enable portfowarding in MacOS - $ sudo sysctl
-w net.inet.ip.forwarding=1 - $ sudo ipfw add fwd 127.0.0.1,8080 tcp from
any to 127.0.0.1 dst-port 80 in - $ sudo ipfw add fwd 127.0.0.1,8443 tcp
from any to 127.0.0.1 dst-port 443 in - - remember to disable portfowarding
- $ sudo sysctl -w net.inet.ip.forwarding=0 -->
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>8080</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
<connector implementation="org.eclipse.jetty.server.ssl.SslSocketConnector">
<port>8443</port>
<maxIdleTime>60000</maxIdleTime>
<keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
<password>jetty7</password>
<keyPassword>jetty7</keyPassword>
</connector>
</connectors>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>keytool-maven-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<phase>generate-resources</phase>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
<execution>
<phase>generate-resources</phase>
<id>genkey</id>
<goals>
<goal>genkey</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
<dname>cn=localhost</dname>
<keypass>jetty7</keypass>
<storepass>jetty7</storepass>
<alias>jetty7</alias>
<keyalg>RSA</keyalg>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>production</id>
<properties>
<jelastic.environment>vuact</jelastic.environment>
</properties>
</profile>
<profile>
<id>staging</id>
<properties>
<jelastic.environment>vuact-core</jelastic.environment>
</properties>
</profile>
</profiles>
</project>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment