diff options
author | Jessica Wagantall <jwagantall@linuxfoundation.org> | 2020-04-02 14:06:46 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2020-04-02 14:06:46 +0000 |
commit | 026d007360ccd8586f0f039c38ccbaae6b9f124a (patch) | |
tree | 506d2d4733911733f53d741e4af9527b4336f24f /jjb | |
parent | e0b12f9a6c943a29e9129e41712abdcb2a3d2363 (diff) | |
parent | b7f20999760402c409a802bd1576cf58960e3498 (diff) |
Merge "Setup CI gating verify job for emssimulator's swm-netconf module"
Diffstat (limited to 'jjb')
-rw-r--r-- | jjb/integration/emssimulator-swm-netconf_post.sh | 44 | ||||
-rw-r--r-- | jjb/integration/integration-docker-compose.yaml | 4 | ||||
-rw-r--r-- | jjb/integration/integration-templates-docker.yaml | 2 |
3 files changed, 50 insertions, 0 deletions
diff --git a/jjb/integration/emssimulator-swm-netconf_post.sh b/jjb/integration/emssimulator-swm-netconf_post.sh new file mode 100644 index 000000000..b69d3c0f8 --- /dev/null +++ b/jjb/integration/emssimulator-swm-netconf_post.sh @@ -0,0 +1,44 @@ +#!/bin/bash + +# Copyright 2020 Samsung Electronics 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. + +echo "---> emssimulator-swm-netconf_post.sh" + +set -e # Exit with zero only if all commands succeed + +SERVICE_NAME="ems-netconf-swm" +DOCKER_COMPOSE_LOG="/tmp/docker-compose.log" +DOCKER_COMPOSE_LOG_MSG=( "INFO success:" "entered RUNNING state" ) +DOCKER_COMPOSE_SLEEP_INTERVAL=4 + +pushd $DOCKER_ROOT + +# Dump container logs +sleep ${DOCKER_COMPOSE_SLEEP_INTERVAL} # Hang for a while so the services settle +docker-compose logs --no-color > ${DOCKER_COMPOSE_LOG} + +# Get the supervisord services running within container +supervisord_services=($(docker-compose exec -T ${SERVICE_NAME} /bin/sh -c \ + 'cat /etc/supervisord.conf /etc/supervisord.d/*' | grep -ho "program:[-a-zA-Z0-9]*" | cut -d: -f 2)) + +# Check all services are running and fail if not +for service in ${supervisord_services[@]}; +do + if ! grep -q "${DOCKER_COMPOSE_LOG_MSG[0]} $service ${DOCKER_COMPOSE_LOG_MSG[1]}" ${DOCKER_COMPOSE_LOG}; + then + echo "ERROR: Service $service is not running, failing the build." + exit 1 + fi +done diff --git a/jjb/integration/integration-docker-compose.yaml b/jjb/integration/integration-docker-compose.yaml index 540ee4f95..ae840f6c6 100644 --- a/jjb/integration/integration-docker-compose.yaml +++ b/jjb/integration/integration-docker-compose.yaml @@ -16,3 +16,7 @@ - 'netconf-pnp-simulator': pattern: 'test/mocks/netconf-pnp-simulator/modules/**' docker_root: 'test/mocks/netconf-pnp-simulator/modules' + - 'emssimulator-swm-netconf': + pattern: 'test/mocks/emssimulator/swm-netconf/**' + docker_root: 'test/mocks/emssimulator/swm-netconf' + post_script: !include-raw-escape: emssimulator-swm-netconf_post.sh diff --git a/jjb/integration/integration-templates-docker.yaml b/jjb/integration/integration-templates-docker.yaml index caa0ad756..0ef7a5212 100644 --- a/jjb/integration/integration-templates-docker.yaml +++ b/jjb/integration/integration-templates-docker.yaml @@ -130,6 +130,7 @@ description: 'This job validates Docker Compose based projects' node: 'ubuntu1804-docker-8c-8g' docker_root: '$WORKSPACE' + post_script: '' parameters: - lf-infra-parameters: @@ -163,6 +164,7 @@ properties-content: | DOCKER_ROOT={docker_root} - shell: '{script}' + - shell: '{post_script}' publishers: - integration-docker-compose-logs |