2021-12-03 23:58:15 +00:00
#!/bin/bash
IMAGE = $1
if [ -z " $1 " ] ; then
IMAGE = harbor.hq.rosti.cz/rosti/runtime:test
fi
RCol = '\e[0m' # Text Reset
# Regular Bold Underline High Intensity BoldHigh Intens Background High Intensity Backgrounds
Bla = '\e[0;30m' ; BBla = '\e[1;30m' ; UBla = '\e[4;30m' ; IBla = '\e[0;90m' ; BIBla = '\e[1;90m' ; On_Bla = '\e[40m' ; On_IBla = '\e[0;100m' ;
Red = '\e[0;31m' ; BRed = '\e[1;31m' ; URed = '\e[4;31m' ; IRed = '\e[0;91m' ; BIRed = '\e[1;91m' ; On_Red = '\e[41m' ; On_IRed = '\e[0;101m' ;
Gre = '\e[0;32m' ; BGre = '\e[1;32m' ; UGre = '\e[4;32m' ; IGre = '\e[0;92m' ; BIGre = '\e[1;92m' ; On_Gre = '\e[42m' ; On_IGre = '\e[0;102m' ;
Yel = '\e[0;33m' ; BYel = '\e[1;33m' ; UYel = '\e[4;33m' ; IYel = '\e[0;93m' ; BIYel = '\e[1;93m' ; On_Yel = '\e[43m' ; On_IYel = '\e[0;103m' ;
Blu = '\e[0;34m' ; BBlu = '\e[1;34m' ; UBlu = '\e[4;34m' ; IBlu = '\e[0;94m' ; BIBlu = '\e[1;94m' ; On_Blu = '\e[44m' ; On_IBlu = '\e[0;104m' ;
Pur = '\e[0;35m' ; BPur = '\e[1;35m' ; UPur = '\e[4;35m' ; IPur = '\e[0;95m' ; BIPur = '\e[1;95m' ; On_Pur = '\e[45m' ; On_IPur = '\e[0;105m' ;
Cya = '\e[0;36m' ; BCya = '\e[1;36m' ; UCya = '\e[4;36m' ; ICya = '\e[0;96m' ; BICya = '\e[1;96m' ; On_Cya = '\e[46m' ; On_ICya = '\e[0;106m' ;
Whi = '\e[0;37m' ; BWhi = '\e[1;37m' ; UWhi = '\e[4;37m' ; IWhi = '\e[0;97m' ; BIWhi = '\e[1;97m' ; On_Whi = '\e[47m' ; On_IWhi = '\e[0;107m' ;
if test -z " $DOCKER " ; then
DOCKER = docker
fi
CONTAINER_NAME = dev_test
$DOCKER stop $CONTAINER_NAME & >/dev/null
2025-01-19 23:07:09 +00:00
COUNT = ` cat Dockerfile | grep -e "build_" | grep -v "/usr/local" | sed "s/RUN //" | sed "s/ADD //" | sed 's/& \\\//' | sed "s/^[ ]*//" | sed "s/build_//" | sed "s/\.sh//" | sed "s/php8/php/" | wc -l`
2021-12-03 23:58:15 +00:00
I = 1
2025-01-19 23:07:09 +00:00
cat Dockerfile | grep -e "build_" | grep -v "/usr/local" | sed "s/RUN //" | sed "s/ADD //" | sed 's/& \\//' | sed "s/^[ ]*//" | sed "s/build_//" | sed "s/\.sh//" | sed "s/php8/php/" | \
2021-12-03 23:58:15 +00:00
while read line
do
tech = ` echo $line | cut -d " " -f 1`
tech_version = ` echo $line | cut -d " " -f 2`
echo -e " ${ BRed } :: ( $I / $COUNT ) ${ Yel } Testing ${ BWhi } $tech ${ Gre } $tech_version ${ RCol } "
set -e
echo -e " ${ BRed } .. ${ Yel } starting test container ${ RCol } "
$DOCKER run -d --rm --name $CONTAINER_NAME $IMAGE > /dev/null || exit 1
echo -e " ${ BRed } .. ${ Yel } ten seconds sleep ${ RCol } "
sleep 10
echo -e " ${ BRed } .. ${ Yel } setting up the tech ${ RCol } "
$DOCKER exec -e TESTMODE = 1 -e MENUITEM = tech -e TECH = $tech -$tech_version $CONTAINER_NAME su app -c rosti > /dev/null || exit 1
echo -e " ${ BRed } .. ${ Yel } three seconds sleep ${ RCol } "
sleep 3
echo -e " ${ BRed } .. ${ Yel } trying to get HTTP status code 200 ${ RCol } "
$DOCKER exec $CONTAINER_NAME curl --head http://localhost:8000 | grep "HTTP/1.1 200" || exit 2
set +e
echo -e " ${ BRed } .. ${ Yel } cleaning this round ${ RCol } "
$DOCKER stop $CONTAINER_NAME & >/dev/null || exit 1
2024-08-13 19:41:29 +00:00
sleep 1
2021-12-03 23:58:15 +00:00
( ( I++) )
done