summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorefiacor <fiachra.corcoran@est.tech>2021-07-19 12:25:23 +0100
committerefiacor <fiachra.corcoran@est.tech>2021-07-19 14:56:25 +0100
commit480a77d0c83b6ae227b3d992763eb88bb2520d55 (patch)
tree81e8e29f00ceb6c9b082f78177439745751866d0
parent4b206824b23c87316419c13eabf2b8cd4e61bef2 (diff)
[DMAAP-MR] Migrate csit suite to the repo1.3.0
Signed-off-by: efiacor <fiachra.corcoran@est.tech> Change-Id: I4b623aec5f9a90acbbc1895a144ad649f793b6a3 Issue-ID: DMAAP-1637
-rw-r--r--.gitignore4
-rwxr-xr-xcsit/plans/mrpubsub/setup.sh27
-rwxr-xr-xcsit/plans/mrpubsub/teardown.sh22
-rw-r--r--csit/plans/mrpubsub/testplan.txt2
-rwxr-xr-xcsit/prepare-csit.sh49
-rwxr-xr-xcsit/run-csit.sh196
-rwxr-xr-xcsit/run-project-csit.sh28
-rwxr-xr-xcsit/scripts/dmaap-message-router/dmaap-mr-launch.sh66
-rwxr-xr-xcsit/scripts/dmaap-message-router/dmaap-mr-teardown.sh29
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/docker-compose.yml (renamed from src/main/resources/docker-compose/docker-compose.yml)11
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/kafka/zk_client_jaas.conf (renamed from src/main/resources/docker-compose/kafka/zk_client_jaas.conf)0
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/mr/MsgRtrApi.properties (renamed from src/main/resources/docker-compose/mr/MsgRtrApi.properties)10
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/mr/cadi.properties (renamed from src/main/resources/docker-compose/mr/cadi.properties)0
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/mr/logback.xml (renamed from src/main/resources/docker-compose/mr/logback.xml)0
-rw-r--r--csit/scripts/dmaap-message-router/docker-compose/zk/zk_server_jaas.conf (renamed from src/main/resources/docker-compose/zk/zk_server_jaas.conf)0
-rwxr-xr-xcsit/scripts/get-instance-ip.sh17
-rwxr-xr-xcsit/tests/mrpubsub/mrpubsub.robot74
-rw-r--r--pom.xml6
-rw-r--r--src/main/ajsc/dmaap_v1/dmaap/v1/conf/jaxrsBeans.groovy2
-rw-r--r--src/main/resources/docker-compose/docker-compose-old.yml57
20 files changed, 526 insertions, 74 deletions
diff --git a/.gitignore b/.gitignore
index 97e81c5..a679fe5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,4 +6,6 @@
*.iml
/target/*
.idea/*
-/src/.idea/* \ No newline at end of file
+/src/.idea/*
+/venv/*
+*/archives/ \ No newline at end of file
diff --git a/csit/plans/mrpubsub/setup.sh b/csit/plans/mrpubsub/setup.sh
new file mode 100755
index 0000000..411343a
--- /dev/null
+++ b/csit/plans/mrpubsub/setup.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP DMAAP MR
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+# Modification copyright (C) 2021 Nordix Foundation.
+# ================================================================================
+# 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.
+# ============LICENSE_END============================================
+# ===================================================================
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+#
+source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-launch.sh
+dmaap_mr_launch
+#Pass any variables required by Robot test suites in ROBOT_VARIABLES
+ROBOT_VARIABLES="-v DMAAP_MR_IP:${DMAAP_MR_IP}"
diff --git a/csit/plans/mrpubsub/teardown.sh b/csit/plans/mrpubsub/teardown.sh
new file mode 100755
index 0000000..65d4884
--- /dev/null
+++ b/csit/plans/mrpubsub/teardown.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+# Modification copyright (C) 2021 Nordix Foundation.
+#
+# 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.
+#
+# Modifications copyright (c) 2017 AT&T Intellectual Property
+#
+
+source ${WORKSPACE}/scripts/dmaap-message-router/dmaap-mr-teardown.sh
+dmaap_mr_teardown
diff --git a/csit/plans/mrpubsub/testplan.txt b/csit/plans/mrpubsub/testplan.txt
new file mode 100644
index 0000000..e1d4098
--- /dev/null
+++ b/csit/plans/mrpubsub/testplan.txt
@@ -0,0 +1,2 @@
+# Place the suites in run order.
+mrpubsub
diff --git a/csit/prepare-csit.sh b/csit/prepare-csit.sh
new file mode 100755
index 0000000..a65368c
--- /dev/null
+++ b/csit/prepare-csit.sh
@@ -0,0 +1,49 @@
+#!/bin/bash -x
+#
+# Copyright 2019 © Samsung Electronics Co., Ltd.
+# Modification copyright (C) 2021 Nordix Foundation.
+#
+# 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.
+#
+# This script installs common libraries required by CSIT tests
+#
+
+if [ -z "$WORKSPACE" ]; then
+ export WORKSPACE=`git rev-parse --show-toplevel`
+fi
+
+TESTPLANDIR=${WORKSPACE}/${TESTPLAN}
+
+# Assume that if ROBOT_VENV is set and virtualenv with system site packages can be activated,
+# ci-management/jjb/integration/include-raw-integration-install-robotframework.sh has already
+# been executed
+
+if [ -f ${WORKSPACE}/env.properties ]; then
+ source ${WORKSPACE}/env.properties
+fi
+if [ -f ${ROBOT_VENV}/bin/activate ]; then
+ source ${ROBOT_VENV}/bin/activate
+else
+ rm -rf /tmp/ci-management
+ rm -f ${WORKSPACE}/env.properties
+ cd /tmp
+ git clone "https://gerrit.onap.org/r/ci-management"
+ source /tmp/ci-management/jjb/integration/include-raw-integration-install-robotframework.sh
+fi
+
+# install eteutils
+mkdir -p ${ROBOT_VENV}/src/onap
+rm -rf ${ROBOT_VENV}/src/onap/testsuite
+pip install --upgrade --extra-index-url="https://nexus3.onap.org/repository/PyPi.staging/simple" 'robotframework-onap==0.5.1.*' --pre
+
+pip freeze
diff --git a/csit/run-csit.sh b/csit/run-csit.sh
new file mode 100755
index 0000000..b987e60
--- /dev/null
+++ b/csit/run-csit.sh
@@ -0,0 +1,196 @@
+#!/bin/bash -x
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+# Modification Copyright 2019 © Samsung Electronics Co., Ltd.
+# Modification copyright (C) 2021 Nordix Foundation.
+#
+# 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.
+#
+# $1 project/functionality
+# $2 robot options
+
+#
+# functions
+#
+
+function on_exit(){
+ rc=$?
+ if [[ ${WORKSPACE} ]]; then
+ if [[ ${WORKDIR} ]]; then
+ rsync -av "$WORKDIR/" "$WORKSPACE/archives/$TESTPLAN"
+ fi
+ # Record list of active docker containers
+ docker ps --format "{{.Image}}" > "$WORKSPACE/archives/$TESTPLAN/_docker-images.log"
+
+ # show memory consumption after all docker instances initialized
+ docker_stats | tee "$WORKSPACE/archives/$TESTPLAN/_sysinfo-2-after-robot.txt"
+ fi
+ # Run teardown script plan if it exists
+ cd "${TESTPLANDIR}"
+ TEARDOWN="${TESTPLANDIR}/teardown.sh"
+ if [ -f "${TEARDOWN}" ]; then
+ echo "Running teardown script ${TEARDOWN}"
+ source_safely "${TEARDOWN}"
+ fi
+ # TODO: do something with the output
+ exit $rc
+}
+# ensure that teardown and other finalizing steps are always executed
+trap on_exit EXIT
+
+function docker_stats(){
+ #General memory details
+ echo "> top -bn1 | head -3"
+ top -bn1 | head -3
+ echo
+
+ echo "> free -h"
+ free -h
+ echo
+
+ #Memory details per Docker
+ echo "> docker ps"
+ docker ps
+ echo
+
+ echo "> docker stats --no-stream"
+ docker stats --no-stream
+ echo
+}
+
+# save current set options
+function save_set() {
+ RUN_CSIT_SAVE_SET="$-"
+ RUN_CSIT_SHELLOPTS="$SHELLOPTS"
+}
+
+# load the saved set options
+function load_set() {
+ _setopts="$-"
+
+ # bash shellopts
+ for i in $(echo "$SHELLOPTS" | tr ':' ' ') ; do
+ set +o ${i}
+ done
+ for i in $(echo "$RUN_CSIT_SHELLOPTS" | tr ':' ' ') ; do
+ set -o ${i}
+ done
+
+ # other options
+ for i in $(echo "$_setopts" | sed 's/./& /g') ; do
+ set +${i}
+ done
+ set -${RUN_CSIT_SAVE_SET}
+}
+
+# set options for quick bailout when error
+function harden_set() {
+ set -xeo pipefail
+ set +u # enabled it would probably fail too many often
+}
+
+# relax set options so the sourced file will not fail
+# the responsibility is shifted to the sourced file...
+function relax_set() {
+ set +e
+ set +o pipefail
+}
+
+# wrapper for sourcing a file
+function source_safely() {
+ [ -z "$1" ] && return 1
+ relax_set
+ . "$1"
+ load_set
+}
+
+#
+# main
+#
+
+# set and save options for quick failure
+harden_set && save_set
+
+if [ $# -eq 0 ]
+then
+ echo
+ echo "Usage: $0 plans/<project>/<functionality> [<robot-options>]"
+ echo
+ echo " <project>, <functionality>, <robot-options>: "
+ echo " The same values as for the '{project}-csit-{functionality}' JJB job template."
+ echo
+ exit 1
+fi
+
+if [ -z "$WORKSPACE" ]; then
+ export WORKSPACE=$(git rev-parse --show-toplevel)
+fi
+
+if [ -f "${WORKSPACE}/${1}/testplan.txt" ]; then
+ export TESTPLAN="${1}"
+else
+ echo "testplan not found: ${WORKSPACE}/${TESTPLAN}/testplan.txt"
+ exit 2
+fi
+
+export TESTOPTIONS="${2}"
+
+rm -rf "$WORKSPACE/archives/$TESTPLAN"
+mkdir -p "$WORKSPACE/archives/$TESTPLAN"
+
+TESTPLANDIR="${WORKSPACE}/${TESTPLAN}"
+
+# Run installation of prerequired libraries
+source_safely "${WORKSPACE}/prepare-csit.sh"
+
+# Activate the virtualenv containing all the required libraries installed by prepare-csit.sh
+source_safely "${ROBOT_VENV}/bin/activate"
+
+WORKDIR=$(mktemp -d --suffix=-robot-workdir)
+cd "${WORKDIR}"
+
+# Add csit scripts to PATH
+export PATH="${PATH}:${WORKSPACE}/docker/scripts:${WORKSPACE}/scripts:${ROBOT_VENV}/bin"
+export SCRIPTS="${WORKSPACE}/scripts"
+export ROBOT_VARIABLES=
+
+# Sign in to nexus3 docker repo
+docker login -u docker -p docker nexus3.onap.org:10001
+
+# Run setup script plan if it exists
+cd "${TESTPLANDIR}"
+SETUP="${TESTPLANDIR}/setup.sh"
+if [ -f "${SETUP}" ]; then
+ echo "Running setup script ${SETUP}"
+ source_safely "${SETUP}"
+fi
+
+# show memory consumption after all docker instances initialized
+docker_stats | tee "$WORKSPACE/archives/$TESTPLAN/_sysinfo-1-after-setup.txt"
+
+# Run test plan
+cd "$WORKDIR"
+echo "Reading the testplan:"
+cat "${TESTPLANDIR}/testplan.txt" | egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' | sed "s|^|${WORKSPACE}/tests/|" > testplan.txt
+cat testplan.txt
+SUITES=$( xargs -a testplan.txt )
+
+echo ROBOT_VARIABLES="${ROBOT_VARIABLES}"
+echo "Starting Robot test suites ${SUITES} ..."
+relax_set
+python -m robot.run -N ${TESTPLAN} -v WORKSPACE:/tmp ${ROBOT_VARIABLES} ${TESTOPTIONS} ${SUITES}
+RESULT=$?
+load_set
+echo "RESULT: $RESULT"
+# Note that the final steps are done in on_exit function after this exit!
+exit $RESULT
diff --git a/csit/run-project-csit.sh b/csit/run-project-csit.sh
new file mode 100755
index 0000000..7232db1
--- /dev/null
+++ b/csit/run-project-csit.sh
@@ -0,0 +1,28 @@
+#!/bin/bash -x
+#
+# Copyright 2020-2021 © Samsung Electronics Co., Ltd.
+# Modifications copyright (C) 2021 Nordix Foundation..
+#
+# 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.
+#
+
+export WORKSPACE=$(git rev-parse --show-toplevel)/csit
+
+rm -rf ${WORKSPACE}/archives
+mkdir -p ${WORKSPACE}/archives
+cd ${WORKSPACE}
+
+./run-csit.sh plans/mrpubsub
+
+
+
diff --git a/csit/scripts/dmaap-message-router/dmaap-mr-launch.sh b/csit/scripts/dmaap-message-router/dmaap-mr-launch.sh
new file mode 100755
index 0000000..de462a1
--- /dev/null
+++ b/csit/scripts/dmaap-message-router/dmaap-mr-launch.sh
@@ -0,0 +1,66 @@
+#!/bin/bash
+#
+# ============LICENSE_START=======================================================
+# ONAP DMAAP MR
+# ================================================================================
+# Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+# Modification copyright (C) 2021 Nordix Foundation.
+# ================================================================================
+# 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.
+# ============LICENSE_END============================================
+# ===================================================================
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+
+# function to launch DMaaP MR docker containers.
+# sets global var DMAAP_MR_IP with assigned IP address of MR container.
+# (kafka and zk containers are not called externally)
+
+function dmaap_mr_launch() {
+ mkdir -p $WORKSPACE/archives/dmaap/mr/last_run_logs
+
+ # start DMaaP MR containers with docker compose and configuration from docker-compose.yml
+ docker login -u docker -p docker nexus3.onap.org:10001
+ docker-compose -f ${WORKSPACE}/scripts/dmaap-message-router/docker-compose/docker-compose.yml up -d
+ docker ps
+
+ # Wait for initialization of Docker containers for DMaaP MR, Kafka and Zookeeper
+ for i in {1..50}; do
+ if [[ $(docker inspect --format '{{ .State.Running }}' dmaap-mr) ]] && \
+ [[ $(docker inspect --format '{{ .State.Running }}' dmaap-kafka) ]] && \
+ [[ $(docker inspect --format '{{ .State.Running }}' dmaap-zookeeper) ]]
+ then
+ echo "DMaaP Service Running"
+ break
+ else
+ echo sleep $i
+ sleep $i
+ fi
+ done
+
+DMAAP_MR_IP=`get-instance-ip.sh dmaap-mr`
+echo MR_IP=${DMAAP_MR_IP}
+export DMAAP_MR_IP
+
+echo "Waiting for dmaap-message-router to come up ..."
+for i in {1..20}; do
+ dmaap_state=$(curl --write-out '%{http_code}' --silent --output /dev/null $DMAAP_MR_IP:3904/topics)
+ if [ ${dmaap_state} == "200" ]
+ then
+ break
+ else
+ sleep 5
+ fi
+done
+
+}
+
diff --git a/csit/scripts/dmaap-message-router/dmaap-mr-teardown.sh b/csit/scripts/dmaap-message-router/dmaap-mr-teardown.sh
new file mode 100755
index 0000000..1389142
--- /dev/null
+++ b/csit/scripts/dmaap-message-router/dmaap-mr-teardown.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+# Modification copyright (C) 2021 Nordix Foundation.
+#
+# 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.
+#
+# Modifications copyright (c) 2018 AT&T Intellectual Property
+#
+
+function dmaap_mr_teardown() {
+ cd ${WORKSPACE}/archives/dmaap/mr
+ rm -rf last_run_logs/*
+ docker cp dmaap-mr:/appl/logs/EELF last_run_logs/dmaap_mr_logs
+ docker cp dmaap-kafka:/var/lib/kafka/data/ last_run_logs/kafka_logs
+ docker logs dmaap-kafka > last_run_logs/kafka_logs/kafka.log
+ docker logs dmaap-zookeeper > last_run_logs/zookeeper.log
+ docker-compose -f ${WORKSPACE}/scripts/dmaap-message-router/docker-compose/docker-compose.yml rm -sf
+}
diff --git a/src/main/resources/docker-compose/docker-compose.yml b/csit/scripts/dmaap-message-router/docker-compose/docker-compose.yml
index 9cba0a2..d225499 100644
--- a/src/main/resources/docker-compose/docker-compose.yml
+++ b/csit/scripts/dmaap-message-router/docker-compose/docker-compose.yml
@@ -1,7 +1,8 @@
-version: '2'
+version: '2.1'
services:
zookeeper:
- image: nexus3.onap.org:10001/onap/dmaap/zookeeper:latest
+ image: nexus3.onap.org:10001/onap/dmaap/zookeeper:6.1.0
+ container_name: dmaap-zookeeper
ports:
- "2181:2181"
environment:
@@ -23,7 +24,8 @@ services:
- zookeeper
kafka:
- image: nexus3.onap.org:10001/onap/dmaap/kafka111:latest
+ image: nexus3.onap.org:10001/onap/dmaap/kafka111:1.1.0
+ container_name: dmaap-kafka
ports:
- "9092:9092"
environment:
@@ -51,7 +53,8 @@ services:
- zookeeper
dmaap:
- image: nexus3.onap.org:10001/onap/dmaap/dmaap-mr:latest
+ image: onap/dmaap/dmaap-mr:latest
+ container_name: dmaap-mr
ports:
- "3904:3904"
- "3905:3905"
diff --git a/src/main/resources/docker-compose/kafka/zk_client_jaas.conf b/csit/scripts/dmaap-message-router/docker-compose/kafka/zk_client_jaas.conf
index 79a7601..79a7601 100644
--- a/src/main/resources/docker-compose/kafka/zk_client_jaas.conf
+++ b/csit/scripts/dmaap-message-router/docker-compose/kafka/zk_client_jaas.conf
diff --git a/src/main/resources/docker-compose/mr/MsgRtrApi.properties b/csit/scripts/dmaap-message-router/docker-compose/mr/MsgRtrApi.properties
index 8f8260e..4764321 100644
--- a/src/main/resources/docker-compose/mr/MsgRtrApi.properties
+++ b/csit/scripts/dmaap-message-router/docker-compose/mr/MsgRtrApi.properties
@@ -34,13 +34,8 @@
##
## Both Cambria and Kafka make use of Zookeeper.
##
-#config.zk.servers=172.18.1.1
-#config.zk.servers={{.Values.zookeeper.name}}:{{.Values.zookeeper.port}}
config.zk.servers=zookeeper:2181
-#config.zk.root=/fe3c/cambria/config
-
-
###############################################################################
##
## Kafka Connection
@@ -86,8 +81,6 @@ kafka.rebalance.max.retries=6
cambria.secureConfig.key=b/7ouTn9FfEw2PQwL0ov/Q==
cambria.secureConfig.iv=wR9xP5k5vbz/xD0LmtqQLw==
authentication.adminSecret=fe3cCompound
-#cambria.secureConfig.key[pc569h]=YT3XPyxEmKCTLI2NK+Sjbw==
-#cambria.secureConfig.iv[pc569h]=rMm2jhR3yVnU+u2V9Ugu3Q==
###############################################################################
@@ -135,7 +128,8 @@ cambria.consumer.cache.touchFreqMs=120000
## This server can report its metrics periodically on a topic.
##
#metrics.send.cambria.enabled=true
-#metrics.send.cambria.topic=cambria.apinode.metrics #msgrtr.apinode.metrics.dmaap
+#metrics.send.cambria.topic=cambria.apinode.metrics
+#msgrtr.apinode.metrics.dmaap
#metrics.send.cambria.sendEverySeconds=60
cambria.consumer.cache.zkBasePath=/fe3c/cambria/consumerCache
diff --git a/src/main/resources/docker-compose/mr/cadi.properties b/csit/scripts/dmaap-message-router/docker-compose/mr/cadi.properties
index e7d056b..e7d056b 100644
--- a/src/main/resources/docker-compose/mr/cadi.properties
+++ b/csit/scripts/dmaap-message-router/docker-compose/mr/cadi.properties
diff --git a/src/main/resources/docker-compose/mr/logback.xml b/csit/scripts/dmaap-message-router/docker-compose/mr/logback.xml
index f02a2db..f02a2db 100644
--- a/src/main/resources/docker-compose/mr/logback.xml
+++ b/csit/scripts/dmaap-message-router/docker-compose/mr/logback.xml
diff --git a/src/main/resources/docker-compose/zk/zk_server_jaas.conf b/csit/scripts/dmaap-message-router/docker-compose/zk/zk_server_jaas.conf
index 3d2767f..3d2767f 100644
--- a/src/main/resources/docker-compose/zk/zk_server_jaas.conf
+++ b/csit/scripts/dmaap-message-router/docker-compose/zk/zk_server_jaas.conf
diff --git a/csit/scripts/get-instance-ip.sh b/csit/scripts/get-instance-ip.sh
new file mode 100755
index 0000000..a236c02
--- /dev/null
+++ b/csit/scripts/get-instance-ip.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+# Copyright 2016-2017 Huawei Technologies Co., Ltd.
+#
+# 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.
+#
+docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $1
diff --git a/csit/tests/mrpubsub/mrpubsub.robot b/csit/tests/mrpubsub/mrpubsub.robot
new file mode 100755
index 0000000..355c367
--- /dev/null
+++ b/csit/tests/mrpubsub/mrpubsub.robot
@@ -0,0 +1,74 @@
+*** Settings ***
+Library OperatingSystem
+Library RequestsLibrary
+Library requests
+Library Collections
+Library String
+Library Process
+
+*** Variables ***
+${TARGETURL_PUBLISH} http://${DMAAP_MR_IP}:3904/events/TestTopic1
+${TARGETURL_TOPICS} http://${DMAAP_MR_IP}:3904/topics
+${TARGETURL_SUBSCR} http://${DMAAP_MR_IP}:3904/events/TestTopic1/CG1/C1?timeout=1000
+${TEST_DATA} {"topicName": "TestTopic1"}
+${TOPIC_DATA} {"topicName":"FirstTopic","topicDescription":"This is a TestTopic","partitionCount":"1","replicationCount":"3","transactionEnabled":"true"}
+
+*** Test Cases ***
+Run Topic Creation and Publish
+ [Documentation] Topic Creation
+ [Timeout] 1 minute
+ ${resp}= PostCall ${TARGETURL_PUBLISH} ${TEST_DATA}
+ log ${TARGETURL_PUBLISH}
+ log ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ ${count}= Evaluate $resp.json().get('count')
+ log 'JSON Response Code:'${resp}
+
+Run Subscribing a message status
+ [Documentation] Subscribide message status
+ [Timeout] 1 minute
+ ${resp}= GetCall ${TARGETURL_SUBSCR}
+ log ${TARGETURL_SUBSCR}
+ Should Be Equal As Strings ${resp.status_code} 200
+ log 'JSON Response Code :'${resp}
+
+Run check topics are exisiting
+ [Documentation] Get the count of the Topics
+ [Timeout] 1 minute
+ ${resp}= GetCall ${TARGETURL_TOPICS}
+ log ${TARGETURL_TOPICS}
+ Should Be Equal As Strings ${resp.status_code} 200
+ log 'JSON Response Code :'${resp}
+ ${topics}= Evaluate $resp.json().get('topics')
+ log ${topics}
+ ${ListLength}= Get Length ${topics}
+ log ${ListLength}
+ List Should Contain Value ${topics} TestTopic1
+
+Run Publish and Subscribe a message
+ [Documentation] Publish and Subscribe the message
+ [Timeout] 1 minute
+ ${resp}= PostCall ${TARGETURL_PUBLISH} ${TEST_DATA}
+ log ${TARGETURL_PUBLISH}
+ log ${resp.text}
+ Should Be Equal As Strings ${resp.status_code} 200
+ ${sub_resp}= GetCall ${TARGETURL_SUBSCR}
+ log ${TARGETURL_SUBSCR}
+ Should Be Equal As Strings ${sub_resp.status_code} 200
+ log 'JSON Response Code :'${sub_resp}
+ ${ListLength}= Get Length ${sub_resp.json()}
+ log ${ListLength}
+ List Should Contain Value ${sub_resp.json()} {"topicName":"TestTopic1"} case_insensitive=yes
+
+*** Keywords ***
+PostCall
+ [Arguments] ${url} ${data}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
+ ${resp}= Evaluate requests.post('${url}',data='${data}', headers=${headers},verify=False) requests
+ [Return] ${resp}
+
+GetCall
+ [Arguments] ${url}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json
+ ${resp}= Evaluate requests.get('${url}', headers=${headers}, verify=False) requests
+ [Return] ${resp}
diff --git a/pom.xml b/pom.xml
index 1ebf280..4eb9642 100644
--- a/pom.xml
+++ b/pom.xml
@@ -310,7 +310,7 @@
<dependency>
<groupId>com.101tec</groupId>
<artifactId>zkclient</artifactId>
- <version>0.2</version>
+ <version>0.11</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
@@ -755,7 +755,7 @@
<profile>
<id>docker</id>
<properties>
-
+ <skipTests>true</skipTests>
</properties>
<build>
<plugins>
@@ -792,7 +792,7 @@
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.28.0</version>
+ <version>0.33.0</version>
<configuration>
<skipBuild>${skip.docker.build}</skipBuild>
<skipPush>${skip.docker.push}</skipPush>
diff --git a/src/main/ajsc/dmaap_v1/dmaap/v1/conf/jaxrsBeans.groovy b/src/main/ajsc/dmaap_v1/dmaap/v1/conf/jaxrsBeans.groovy
index 326b448..0841a3a 100644
--- a/src/main/ajsc/dmaap_v1/dmaap/v1/conf/jaxrsBeans.groovy
+++ b/src/main/ajsc/dmaap_v1/dmaap/v1/conf/jaxrsBeans.groovy
@@ -7,7 +7,7 @@
userService(org.onap.dmaap.JaxrsUserService)
topicService(org.onap.dmaap.service.TopicRestService)
eventService(org.onap.dmaap.service.EventsRestService)
- adminServiceorg.(org.onap.dmaap.service.AdminRestService)
+ adminService(org.onap.dmaap.service.AdminRestService)
apiKeyService(org.onap.dmaap.service.ApiKeysRestService)
metricsService(org.onap.dmaap.service.MetricsRestService)
transactionService(org.onap.dmaap.service.TransactionRestService)
diff --git a/src/main/resources/docker-compose/docker-compose-old.yml b/src/main/resources/docker-compose/docker-compose-old.yml
deleted file mode 100644
index d84e8de..0000000
--- a/src/main/resources/docker-compose/docker-compose-old.yml
+++ /dev/null
@@ -1,57 +0,0 @@
-version: '2'
-services:
- zookeeper:
- image: nexus3.onap.org:10001/onap/dmaap/zookeeper:6.0.3
- ports:
- - "2181:2181"
- environment:
- ZOOKEEPER_REPLICAS: 1
- ZOOKEEPER_TICK_TIME: 2000
- ZOOKEEPER_SYNC_LIMIT: 5
- ZOOKEEPER_INIT_LIMIT: 10
- ZOOKEEPER_MAX_CLIENT_CNXNS: 200
- ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT: 3
- ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL: 24
- ZOOKEEPER_CLIENT_PORT: 2181
- KAFKA_OPTS: -Djava.security.auth.login.config=/etc/zookeeper/secrets/jaas/zk_server_jaas.conf -Dzookeeper.kerberos.removeHostFromPrincipal=true -Dzookeeper.kerberos.removeRealmFromPrincipal=true -Dzookeeper.authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider -Dzookeeper.requireClientAuthScheme=sasl
- ZOOKEEPER_SERVER_ID: 1
- volumes:
- - ./zk/zk_server_jaas.conf:/opt/app/subscriber/etc/subscriber.properties
-
- kafka:
- image: nexus3.onap.org:10001/onap/dmaap/kafka111:1.0.4
- ports:
- - "9092:9092"
- environment:
- enableCadi: 'false'
- KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
- KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS: 40000
- KAFKA_ZOOKEEPER_SESSION_TIMEOUT_MS: 40000
- KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL_PLAINTEXT:PLAINTEXT,EXTERNAL_PLAINTEXT:PLAINTEXT
- KAFKA_ADVERTISED_LISTENERS: INTERNAL_PLAINTEXT://kafka:9092
- KAFKA_LISTENERS: INTERNAL_PLAINTEXT://0.0.0.0:9092
- KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL_PLAINTEXT
- KAFKA_CONFLUENT_SUPPORT_METRICS_ENABLE: 'false'
- KAFKA_OPTS: -Djava.security.auth.login.config=/etc/kafka/secrets/jaas/zk_client_jaas.conf
- KAFKA_ZOOKEEPER_SET_ACL: 'true'
- KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
- volumes:
- - /var/run/docker.sock:/var/run/docker.sock
- depends_on:
- - zookeeper
-
- dmaap:
- image: nexus3.onap.org:10001/onap/dmaap/dmaap-mr:1.1.18
- ports:
- - "3904:3904"
- - "3905:3905"
- environment:
- enableCadi: 'false'
- volumes:
- - /var/tmp/MsgRtrApi.properties:/appl/dmaapMR1/bundleconfig/etc/appprops/MsgRtrApi.properties
- depends_on:
- - zookeeper
- - kafka
-networks:
- net:
- driver: bridge