<!--
  ~ This file is part of the Yildiz-Engine project, licenced under the MIT License  (MIT)
  ~
  ~ Copyright (c) 2017 Grégory Van den Borre
  ~
  ~ More infos available: https://www.yildiz-games.be
  ~
  ~ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
  ~ documentation files (the "Software"), to deal in the Software without restriction, including without
  ~ limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
  ~ of the Software, and to permit persons to whom the Software is furnished to do so,
  ~ subject to the following conditions:
  ~
  ~ The above copyright notice and this permission notice shall be included in all copies or substantial
  ~ portions of the Software.
  ~
  ~ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  ~ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
  ~ OR COPYRIGHT  HOLDERS BE LIABLE FOR ANY CLAIM,
  ~ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  ~ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE  SOFTWARE.
  -->

<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<name>Yildiz Launcher Server</name>
	<description>Server part of the launcher.</description>

	<artifactId>launcher-server</artifactId>
	<version>1.0.1</version>
	
	<packaging>jar</packaging>
	<inceptionYear>2011</inceptionYear>
	<parent>
		<groupId>be.yildiz-games</groupId>
		<artifactId>parent</artifactId>
		<version>2.0.0</version>
	</parent>
	
	<dependencies>
		<dependency>
			<groupId>be.yildiz-games</groupId>
			<artifactId>launcher-shared</artifactId>
			<version>1.0.0</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
		</dependency>
	</dependencies>
	<build>
    <finalName>yildiz-launcher-server</finalName>
		<plugins>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<configuration>
					<descriptorRefs>
						<descriptorRef>jar-with-dependencies</descriptorRef>
					</descriptorRefs>
					<archive>
						<manifest>
							<mainClass>be.yildiz.launcher.server.main.EntryPoint</mainClass>
						</manifest>
					</archive>
					<appendAssemblyId>false</appendAssemblyId>
				</configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
			</plugin>
		</plugins>
	</build>

  <profiles>
  <profile>
    <id>docker</id>
    <build>
      <plugins>
        <plugin>
          <groupId>com.spotify</groupId>
          <artifactId>docker-maven-plugin</artifactId>
          <configuration>
            <serverId>docker-hub</serverId>
            <imageName>moussavdb/launcher-server:${project.version}</imageName>
            <baseImage>openjdk</baseImage>
            <runs>
              <run>
                mkdir /yildiz
              </run>
              <run>
                mkdir /yildiz-files
              </run>
            </runs>
            <entryPoint>["java", "-jar", "/yildiz-launcher-server.jar", "/yildiz/launcher.properties"]</entryPoint>
            <forceTags>true</forceTags>
            <imageTags>
              <imageTag>${project.version}</imageTag>
              <imageTag>latest</imageTag>
            </imageTags>
            <resources>
              <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>yildiz-launcher-server.jar</include>
              </resource>
            </resources>
          </configuration>
          <executions>
            <execution>
              <id>build-image</id>
              <phase>package</phase>
              <goals>
                <goal>build</goal>
              </goals>
            </execution>
            <execution>
              <id>deploy-image</id>
              <phase>install</phase>
              <goals>
                <goal>push</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </build>
  </profile>
</profiles>
</project>
