<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (C) 2009-2010 the original author or authors.
    See the notice.md file distributed with this work for additional
    information regarding copyright ownership.

    Licensed 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>

    <groupId>org.apache.unomi</groupId>
    <artifactId>site</artifactId>
    <name>Apache Unomi :: Site</name>
    <version>1.0.0</version>
    <packaging>war</packaging>

    <repositories>
        <repository>
            <id>rubygems-proxy</id>
            <name>Rubygems Proxy</name>
            <url>http://rubygems-proxy.torquebox.org/releases</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </repository>
    </repositories>

    <properties>
        <latest.stable.version>1.5.7</latest.stable.version>
        <next.stable.version>1.6.0</next.stable.version>
        <next.development.version>1.6.0-SNAPSHOT</next.development.version>
        <latest.development.version>2.0.0-SNAPSHOT</latest.development.version>
    </properties>


    <dependencies>
        <dependency>
            <groupId>rubygems</groupId>
            <artifactId>jekyll</artifactId>
            <type>gem</type>
            <optional>true</optional>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>jekyll</artifactId>
                <version>3.1.2</version>
                <type>gem</type>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>liquid</artifactId>
                <type>gem</type>
                <version>3.0.6</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>kramdown</artifactId>
                <type>gem</type>
                <version>1.10.0</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>mercenary</artifactId>
                <type>gem</type>
                <version>0.3.5</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>safe_yaml</artifactId>
                <type>gem</type>
                <version>1.0.4</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>colorator</artifactId>
                <type>gem</type>
                <version>0.1</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>rouge</artifactId>
                <type>gem</type>
                <version>1.10.1</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>jekyll-sass-converter</artifactId>
                <type>gem</type>
                <version>1.4.0</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>sass</artifactId>
                <type>gem</type>
                <version>3.4.22</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>jekyll-watch</artifactId>
                <type>gem</type>
                <version>1.3.1</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>listen</artifactId>
                <type>gem</type>
                <version>3.0.6</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>rb-fsevent</artifactId>
                <type>gem</type>
                <version>0.9.7</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>rb-inotify</artifactId>
                <type>gem</type>
                <version>0.9.7</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>ffi</artifactId>
                <type>gem</type>
                <version>1.9.10</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>celluloid-essentials</artifactId>
                <version>0.20.5</version>
                <type>gem</type>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>celluloid-supervision</artifactId>
                <type>gem</type>
                <version>0.20.5</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>yajl-ruby</artifactId>
                <type>gem</type>
                <version>1.2.1</version>
            </dependency>
            <dependency>
                <groupId>rubygems</groupId>
                <artifactId>bundler</artifactId>
                <type>gem</type>
                <version>1.11.2</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <executions>
                    <execution>
                        <id>filter-webapp-files</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <resources>
                                <!-- # Filtered Resources -->
                                <resource>
                                    <directory>${project.basedir}/src/main/webapp</directory>
                                    <filtering>true</filtering>
                                    <includes>
                                        <include>**/*.html</include>
                                    </includes>
                                </resource>
                                <!-- # Unfiltered Resources -->
                                <resource>
                                    <directory>${project.basedir}/src/main/webapp</directory>
                                    <filtering>false</filtering>
                                    <excludes>
                                        <exclude>**/*.html</exclude>
                                    </excludes>
                                </resource>
                            </resources>
                            <outputDirectory>${project.build.directory}/filtered-webapp</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>de.saumya.mojo</groupId>
                <artifactId>gem-maven-plugin</artifactId>
                <version>1.1.5</version>
                <executions>
                    <execution>
                        <id>generate-documentation</id>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <phase>generate-resources</phase>
                        <configuration>
                            <file>${project.build.directory}/rubygems/bin/jekyll</file>
                            <execArgs>build --trace --source ${project.build.directory}/filtered-webapp --destination
                                ${project.build.directory}/generated-jekyll
                            </execArgs>
                        </configuration>
                    </execution>
                    <execution>
                        <!-- run me with: mvn gem:exec@jekyll-serve-source -->
                        <id>jekyll-serve-source</id>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/rubygems/bin/jekyll</file>
                            <execArgs>serve --trace --source ${project.basedir}/src/main/webapp --destination
                                ${project.build.directory}/generated-jekyll
                            </execArgs>
                        </configuration>
                        <phase>none</phase>
                    </execution>
                    <execution>
                        <!-- run me with: mvn gem:exec@jekyll-serve-filtered -->
                        <id>jekyll-serve-filtered</id>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <file>${project.build.directory}/rubygems/bin/jekyll</file>
                            <execArgs>serve --trace --source ${project.build.directory}/filtered-webapp --destination
                                ${project.build.directory}/generated-jekyll
                            </execArgs>
                        </configuration>
                        <phase>none</phase>
                    </execution>
                </executions>
                <configuration>
                    <supportNative>true</supportNative>
                    <jrubyVersion>9.0.5.0</jrubyVersion>
                    <addProjectClasspath>true</addProjectClasspath>
                    <jrubyVerbose>false</jrubyVerbose>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.2.3</version>
                <configuration>
                    <warSourceDirectory>${project.build.directory}/generated-jekyll</warSourceDirectory>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-scm-publish-plugin</artifactId>
                <version>1.0-beta-2</version>
                <configuration>
                    <checkinComment>[scm-publish] Updating Unomi website</checkinComment>
                    <pubScmUrl>scm:svn:https://svn.apache.org/repos/asf/unomi/website/</pubScmUrl>
                    <content>${project.build.directory}/generated-jekyll</content>
                    <ignorePathsToDelete>
                        <ignorePathToDelete>docs/**</ignorePathToDelete>
                        <ignorePathToDelete>rest-api-doc/**</ignorePathToDelete>
                        <ignorePathToDelete>unomi-api/**</ignorePathToDelete>
                        <ignorePathToDelete>manual/**</ignorePathToDelete>
                    </ignorePathsToDelete>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

