| <?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</artifactId> |
| <version>1.0.0</version> |
| </parent> |
| |
| <artifactId>e2e-test-kong</artifactId> |
| |
| <name>SkyWalking Kong Agent Test</name> |
| <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</name> |
| <alias>kong-with-skywalking</alias> |
| <run> |
| <volumes> |
| <bind> |
| <volume>${project.basedir}/docker:/docker</volume> |
| <volume>${project.basedir}/../../..:/skywalking-kong</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> |
| <id>integration-test</id> |
| <goals> |
| <goal>integration-test</goal> |
| <goal>verify</goal> |
| </goals> |
| <configuration> |
| <excludes> |
| <exclude>none</exclude> |
| </excludes> |
| <includes> |
| <include>**/*ITCase.java</include> |
| </includes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |