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


    <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>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.basedir}/src/main/webapp --destination
                                ${project.build.directory}/generated-jekyll
                            </execArgs>
                        </configuration>
                    </execution>
                    <execution>
                        <!-- run me with: mvn gem:exec@jekyll-serve -->
                        <id>jekyll-serve</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>
                </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>

