blob: 93bbdd7a45beb29b4c4b352202f6096e33204bcc [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Licensed to the Apache Software Foundation (ASF) under one or more
~ contributor license agreements. See the NOTICE file distributed with
~ this work for additional information regarding copyright ownership.
~ The ASF licenses this file to You 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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.skywalking.plugin.nginx-lua</groupId>
<artifactId>e2e-test</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>kong</artifactId>
<packaging>jar</packaging>
<build>
<plugins>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<configuration>
<autoCreateCustomNetworks>true</autoCreateCustomNetworks>
<images>
<image>
<name>postgres:9.6</name>
<alias>kong-database</alias>
<run>
<env>
<POSTGRES_DB>kong</POSTGRES_DB>
<POSTGRES_USER>kong</POSTGRES_USER>
<POSTGRES_PASSWORD>kong</POSTGRES_PASSWORD>
</env>
<hostname>kong-database</hostname>
<ports>
<port>+pg.host:pg.port:5432</port>
</ports>
<wait>
<log>.*PostgreSQL init process complete; ready for start up.*</log>
</wait>
<net>custom</net>
</run>
</image>
<image>
<name>skywalking-collector:${project.version}</name>
<alias>skywalking-collector</alias>
<run>
<ports>
<port>+collector.host:collector.port:12800</port>
</ports>
<wait>
<http>
<url>http://${docker.host.address}:${collector.port}/receiveData</url>
</http>
<time>30000</time>
</wait>
<net>custom</net>
<hostname>skywalking-collector</hostname>
</run>
</image>
<image>
<name>kong:2.3.3-centos</name>
<alias>kong-with-skywalking</alias>
<run>
<volumes>
<bind>
<volume>${project.basedir}/docker:/docker</volume>
<volume>${project.basedir}/../../../..:/skywalking-nginx-lua</volume>
</bind>
</volumes>
<ports>
<port>kong.port:8000</port>
<port>admin.port:8001</port>
</ports>
<env>
<KONG_DATABASE>postgres</KONG_DATABASE>
<KONG_PG_HOST>kong-database</KONG_PG_HOST>
<KONG_PG_PASSWORD>kong</KONG_PG_PASSWORD>
<KONG_CASSANDRA_CONTACT_POINTS>kong-database</KONG_CASSANDRA_CONTACT_POINTS>
<KONG_NGINX_HTTP_LUA_SHARED_DICT>tracing_buffer 128m
</KONG_NGINX_HTTP_LUA_SHARED_DICT>
<KONG_ADMIN_LISTEN>0.0.0.0:8001, 0.0.0.0:8444 ssl</KONG_ADMIN_LISTEN>
</env>
<net>custom</net>
<dependsOn>
<container>kong-database</container>
<container>skywalking-collector</container>
</dependsOn>
<links>
<link>kong-database</link>
</links>
<wait>
<http>
<url>
http://${docker.host.address}:${admin.port}
</url>
</http>
<time>1800000</time>
</wait>
<cmd>/docker/entrypoint.sh</cmd>
</run>
</image>
</images>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-failsafe-plugin.version}</version>
<configuration>
<systemPropertyVariables>
<kong.admin.baseURL>http://${docker.host.address}:${admin.port}</kong.admin.baseURL>
<service.entry>http://${docker.host.address}:${kong.port}/mock</service.entry>
<collector.baseURL>http://${collector.host}:${collector.port}</collector.baseURL>
<collector.in.baseURL>http://skywalking-collector:12800</collector.in.baseURL>
</systemPropertyVariables>
</configuration>
<executions>
<execution>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>