This application will run integration tests for the KillrVideo server (whatever the chosen language of implementation)
If you're running on Linux with Docker, just execute the file getenvirongment.sh as explained below.
If you're running Docker4Mac (and not Docker Toolbox with VirtualBox), you need to find manually the current host IP and the HyperKit VM IP:
- type
ifconfig | grep inet
. The HyperKit VM IP is on this list as well as your host IP - don't use
127.0.0.1
as your host IP since it's a loopback address - type
export KILLRVIDEO_DOCKER_IP=<HyperKit_VM_IP>
- type
export KILLRVIDEO_HOST_IP=<Host_IP>
This application is not MEANT to be run in a stand-alone mode but inside a Docker compose config. However it is still possible to run it as a separated application by following the below steps:
- First clone the project with
git clone https://github.com/killrvideo/killrvideo-integration-tests.git
- Ensure that you have already run the Docker images for KillrVideo (with a
docker-compose ...
) - Ensure that you have already run your own implementation of KillrVideo server
- Execute the script getenvirongment.sh to set environment variables with
. ./getenvironment.sh
warning: the first dot (.) is important! It will execute the script in the context of the calling shell
- Create the following folder
/tmp/cucumber-report
so that test HTML report can be generated - Run the tests suite with
mvn clean test
You can integrate the Docker image of this application inside a docker-compose.yaml
as follow:
it_test_suite:
image: killrvideo/killrvideo-integration-tests:latest
ports:
# Zeppelin WEB UI port
- 8080:8080
# Python HTTP Web Server port
- 8123:8123
depends_on:
- etcd
- cassandra
environment:
KILLRVIDEO_DOCKER_IP: $KILLRVIDEO_DOCKER_IP
SERVICE_8080_NAME: zeppelin
SERVICE_8123_NAME: python_web_server
Copyright 2016-2017 Duy Hai DOAN
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.