MAVEN_VERSION_DIR="apache-maven-3.3.9"
MAVEN_TAR_FILE="$MAVEN_VERSION_DIR-bin.tar.gz"
-MAVEN_TAR_LOCATION="http://apache.claz.org/maven/maven-3/3.3.9/binaries/$MAVEN_TAR_FILE"
+MAVEN_TAR_LOCATION="https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/$MAVEN_TAR_FILE"
SCRIPT_HOME="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
SCRIPT_NAME=$(basename $0)
TEMP_DIR_PATH=$SCRIPT_HOME/temp
TEST_LAB_DIR_PATH=$TEMP_DIR_PATH/test_lab
DOCKER_COMPOSE_FILE_PATH=$SCRIPT_HOME/docker-compose.yml
+DOCKER_COMPOSE_LOCAL_OVERRIDE_FILE=$SCRIPT_HOME/docker-compose.local.yml
+TEAR_DOWN_SCRIPT=$SCRIPT_HOME/teardown.sh
+CAMUNDA_SQL_SCRIPT_NAME=mariadb_engine_7.10.0.sql
+CAMUNDA_SQL_SCRIPT_DIR=$CONFIG_DIR/camunda-sql
+TEST_LAB_SQL_SCRIPTS_DIR=$TEST_LAB_DIR_PATH/volumes/mariadb/docker-entrypoint-initdb.d/db-sql-scripts
MAVEN_DIR=$TEMP_DIR_PATH/maven
INSTALLED_MAVEN_DIR=$MAVEN_DIR/$MAVEN_VERSION_DIR
export $(egrep -v '^#' $ENV_FILE | xargs)
-MANDATORY_VARIABLES_NAMES=( "NEXUS_DOCKER_REPO_MSO" "TAG" "TIME_OUT_DEFAULT_VALUE_SEC" "PROJECT_NAME" "DEFAULT_NETWORK_NAME")
+MANDATORY_VARIABLES_NAMES=( "NEXUS_DOCKER_REPO_MSO" "DOCKER_ENVIRONMENT" "TAG" "TIME_OUT_DEFAULT_VALUE_SEC" "PROJECT_NAME" "DEFAULT_NETWORK_NAME", "ETSI_CATALOG_IMAGE_VERSION", "SOL_003_ADAPTER_IMAGE_VERSION", "ETSI_NFVO_NS_LCM_IMAGE_VERSION", "MARIADB_VERSION")
for var in "${MANDATORY_VARIABLES_NAMES[@]}"
do
exit 1
fi
- tar -xzvf apache-maven-3.3.9-bin.tar.gz
+ tar -xzvf $MAVEN_TAR_FILE
echo "Finished installing maven ..."
fi
git clone http://gerrit.onap.org/r/so/docker-config.git $TEST_LAB_DIR_PATH
+echo "Replacing $CAMUNDA_SQL_SCRIPT_NAME ..."
+rm -rf $TEST_LAB_SQL_SCRIPTS_DIR/$CAMUNDA_SQL_SCRIPT_NAME
+cp $CAMUNDA_SQL_SCRIPT_DIR/$CAMUNDA_SQL_SCRIPT_NAME $TEST_LAB_SQL_SCRIPTS_DIR
+
export TEST_LAB_DIR=$TEST_LAB_DIR_PATH
export CONFIG_DIR_PATH=$CONFIG_DIR
-docker-compose -f $DOCKER_COMPOSE_FILE_PATH -p $PROJECT_NAME up -d
+if [ "$DOCKER_ENVIRONMENT" == "remote" ]; then
+ echo "Starting docker containers with remote images ..."
+ docker-compose -f $DOCKER_COMPOSE_FILE_PATH -p $PROJECT_NAME up -d
+elif [ "$DOCKER_ENVIRONMENT" == "local" ]; then
+ echo "Starting docker containers with local images ..."
+ docker-compose -f $DOCKER_COMPOSE_FILE_PATH -f $DOCKER_COMPOSE_LOCAL_OVERRIDE_FILE -p $PROJECT_NAME up -d
+else
+ echo "DOCKER_ENVIRONMENT not set correctly in $ENV_FILE. Allowed values: local | remote"
+ exit 1
+fi
echo "Sleeping for 3m"
sleep 3m
+docker ps -a
+
echo "Will execute $WAIT_FOR_WORKAROUND_SCRIPT script"
$WAIT_FOR_WORKAROUND_SCRIPT
if [ $? -ne 0 ]; then
echo "ERROR: $WAIT_FOR_WORKAROUND_SCRIPT failed"
echo "Will stop running docker containers . . ."
- docker-compose -f $DOCKER_COMPOSE_FILE_PATH -p $PROJECT_NAME down
+ $TEAR_DOWN_SCRIPT
exit 1
fi
if [ $? -ne 0 ]; then
echo "ERROR: $WAIT_FOR_POPULATE_AAI_SCRIPT failed"
echo "Will stop running docker containers . . ."
- docker-compose -f $DOCKER_COMPOSE_FILE_PATH -p $PROJECT_NAME down
+ $TEAR_DOWN_SCRIPT
exit 1
fi
-API_INFRA_CONTAINER_NAME="api-handler-infra"
-echo "Will execute $WAIT_FOR_CONTAINER_SCRIPT to wait for $API_INFRA_CONTAINER_NAME container to start up"
-$WAIT_FOR_CONTAINER_SCRIPT -c "$API_INFRA_CONTAINER_NAME" -t "300" -n "$DEFAULT_NETWORK_NAME"
+PODS_NAMES=( "api-handler-infra" "modeling-etsicatalog" "so-etsi-nfvo-ns-lcm")
-if [ $? -ne 0 ]; then
- echo "ERROR: $WAIT_FOR_CONTAINER_SCRIPT failed"
- echo "Will stop running docker containers . . ."
- docker-compose -f $DOCKER_COMPOSE_FILE_PATH -p $PROJECT_NAME down
- exit 1
-fi
+for pod in "${PODS_NAMES[@]}"
+ do
+ echo "Will execute $WAIT_FOR_CONTAINER_SCRIPT to wait for $pod container to start up"
+ $WAIT_FOR_CONTAINER_SCRIPT -c "$pod" -t "300" -n "$DEFAULT_NETWORK_NAME"
+
+ if [ $? -ne 0 ]; then
+ echo "ERROR: $WAIT_FOR_CONTAINER_SCRIPT for pod: $pod failed"
+ echo "Will stop running docker containers . . ."
+ $TEAR_DOWN_SCRIPT
+ exit 1
+ fi
+done
REPO_IP='127.0.0.1'
ROBOT_VARIABLES="-v REPO_IP:${REPO_IP}"
+# install required Robot libraries
+pip install robotframework-archivelibrary
+
echo "Finished executing $SCRIPT_HOME/$SCRIPT_NAME"