103 lines
3.1 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at your
* option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <https://www.gnu.org/licenses/>.
*
-->
<project xmlns="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0 https://git.inteligr8.com/inteligr8/maven-tiles/raw/xsd/src/main/resources/maven-tiles.xsd">
<build>
<plugins>
<!-- Using Docker to host the web application -->
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<executions>
<execution>
<id>start-ate</id>
<phase>pre-integration-test</phase>
<goals><goal>start</goal></goals>
<configuration>
<images>
<image>
<name>${ate.docker.image.name}:${ate.docker.image.tag}</name>
<alias>ate</alias>
<run>
<skip>${skipTests}</skip>
<ports>
<port>${ate.port}:8090</port>
</ports>
<network>
<mode>custom</mode>
<name>${project.artifactId}</name>
</network>
<extraHosts>
<host>host.docker.internal:host-gateway</host>
</extraHosts>
<wait>
<http>
<url>http://localhost:${ate.port}/transform/config</url>
<method>GET</method>
<status>200..399</status>
</http>
<time>${ate.timeout}</time>
</wait>
</run>
</image>
</images>
</configuration>
</execution>
<execution>
<id>stop-ate</id>
<phase>post-integration-test</phase>
<goals><goal>stop</goal></goals>
<configuration>
<images>
<image>
<name>${ate.docker.image.name}:${ate.docker.image.tag}</name>
<alias>ate</alias>
</image>
</images>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>default-props</id>
<activation>
<property>
<name>!some-prop-that-never-exists</name>
</property>
</activation>
<properties>
<!-- configurable -->
<ate.docker.image.tag>latest</ate.docker.image.tag>
<ate.port>8090</ate.port>
<ate.timeout>30000</ate.timeout>
</properties>
</profile>
</profiles>
<tiles>
<!-- Documentation: https://git.inteligr8.com/inteligr8/ootbee-beedk/src/branch/stable/beedk-run-tile -->
<tile>@project.groupId@:beedk-run-tile:@project.version@</tile>
</tiles>
</project>