Newer
Older
any_test_failed=1 # false
# fetch secrets and write them to their according files
cat $vhr18_db > ../env/vhr18_db.env
cat $vhr18_django > ../env/vhr18_django.env
cat $vhr18_obs > ../env/vhr18_obs.env
cat $emg_db > ../env/emg_db.env
cat $emg_django > ../env/emg_django.env
cat $emg_obs > ../env/emg_obs.env
# randomize the bucket name to avoid clash of two CI pipelines (linux)
PREPROCESSOR_RESULTS_BUCKET=$(cat /proc/sys/kernel/random/uuid)
echo "PREPROCESSOR_RESULTS_BUCKET=$PREPROCESSOR_RESULTS_BUCKET" >> ../env/emg.env
# use `pvs_testing` bucket instead
sed -i -e 's/emg-data/pvs_testing/g' ../env/emg.env
sed -i -e 's/vhr18-data/pvs_testing/g' ../env/vhr18.env
sed -i -e 's/emg-cache/pvs_testing/g' ../env/emg_obs.env
sed -i -e 's/vhr18-cache/pvs_testing/g' ../env/vhr18_obs.env
echo "DJANGO_SECRET_KEY=${DJANGO_SECRET_KEY}" >> ../env/emg.env
set -o allexport
source ../env/emg.env
set +o allexport
mkdir data
docker swarm init
docker network create -d overlay emg-extnet
printf $OS_PASSWORD_DOWNLOAD | docker secret create OS_PASSWORD_DOWNLOAD -
printf $DJANGO_PASSWORD | docker secret create DJANGO_PASSWORD -
printf $DJANGO_SECRET_KEY | docker secret create DJANGO_SECRET_KEY -
printf $OS_PASSWORD | docker secret create OS_PASSWORD -
printf $sftp_users_emg | docker config create sftp_users_emg -
cat ./testing_preprocessor_config.yml>../config/emg_preprocessor-config.yml
docker stack deploy -c ../docker-compose.emg.yml -c ../docker-compose.emg.dev.yml emg-pvs
./docker-stack-wait.sh -n renderer -n registrar -n preprocessor -n database -n sftp -n ingestor emg-pvs
bash ./preprocessor_prep.sh preprocessed_list.csv
bash ./registrar_prep.sh product_list.csv
pytest registrar_test.py preprocessor_test.py renderer_test.py
if [ $? -ne 0 ]; then any_test_failed=0;fi
swift delete $PREPROCESSOR_RESULTS_BUCKET
# ingestor test
bash ./ingestor_prep.sh
if [ $? -ne 0 ]; then any_test_failed=0;fi
# cleanup
swift delete $PREPROCESSOR_RESULTS_BUCKET
for service in $(docker service ls --format "{{.Name}}"); do
docker service ps $service --no-trunc >> "$CI_PROJECT_DIR/$service.txt"
docker service logs $service --timestamps >> "$CI_PROJECT_DIR/$service.txt"
done
if [ $any_test_failed -ne 1 ]; then echo "Some test failed"; exit 1;fi