Skip to content
Snippets Groups Projects
Commit b569dbb7 authored by Richard T. Carback III's avatar Richard T. Carback III
Browse files

Merge branch 'feature/XX-3068/keygencnt' into 'release'

Resolve XX-3068 "Feature//keygencnt"

Closes XX-3068

See merge request elixxir/integration!101
parents 59b0e1cc 154c2a2e
No related branches found
No related tags found
No related merge requests found
...@@ -12,6 +12,17 @@ rm server-5.qdrep || true ...@@ -12,6 +12,17 @@ rm server-5.qdrep || true
mkdir -p .elixxir mkdir -p .elixxir
if [ $# -gt 1 ]
then
echo "usage: $0 [permsip:port]"
exit
fi
PERMISSIONING=$1
#export GRPC_GO_LOG_VERBOSITY_LEVEL=99 #export GRPC_GO_LOG_VERBOSITY_LEVEL=99
#export GRPC_GO_LOG_SEVERITY_LEVEL=info #export GRPC_GO_LOG_SEVERITY_LEVEL=info
...@@ -22,113 +33,131 @@ DUMMYOUT=results/dummy-console.txt ...@@ -22,113 +33,131 @@ DUMMYOUT=results/dummy-console.txt
UDBOUT=results/udb-console.txt UDBOUT=results/udb-console.txt
CLIENTCLEAN=results/clients-cleaned CLIENTCLEAN=results/clients-cleaned
CLIENTOPTS="--password hello --ndf ndf.json --waitTimeout 90 --unsafe-channel-creation --verbose" CLIENTOPTS="--password hello --ndf results/ndf.json --waitTimeout 90 --unsafe-channel-creation --verbose"
CLIENTUDOPTS="--password hello --ndf ndf.json --verbose" CLIENTUDOPTS="--password hello --ndf results/ndf.json --verbose"
mkdir -p $SERVERLOGS mkdir -p $SERVERLOGS
mkdir -p $GATEWAYLOGS mkdir -p $GATEWAYLOGS
mkdir -p $CLIENTOUT mkdir -p $CLIENTOUT
mkdir -p $CLIENTCLEAN mkdir -p $CLIENTCLEAN
echo "STARTING SERVERS..." if [ "$PERMISSIONING" == "" ]
then
echo "STARTING SERVERS..."
UDBID=$(../bin/client init -s results/udbsession -l results/udbidgen.log --password hello --ndf ndf.json) UDBID=$(../bin/client init -s results/udbsession -l results/udbidgen.log --password hello --ndf ndf.json)
echo "GENERATED UDB ID: $UDBID" echo "GENERATED UDB ID: $UDBID"
UDBID=$(sed -e 's/[&\\/]/\\&/g; s/$/\\/' -e '$s/\\$//' <<<"$UDBID") UDBID=$(sed -e 's/[&\\/]/\\&/g; s/$/\\/' -e '$s/\\$//' <<<"$UDBID")
cp permissioning.yaml permissioning-actual.yaml cp permissioning.yaml permissioning-actual.yaml
sed -i.bak "s/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD/$UDBID/g" permissioning-actual.yaml sed -i.bak "s/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD/$UDBID/g" permissioning-actual.yaml
PERMCMD="../bin/permissioning --logLevel 2 -c permissioning-actual.yaml " PERMCMD="../bin/permissioning --logLevel 2 -c permissioning-actual.yaml "
$PERMCMD > results/permissioning-console.txt 2>&1 & $PERMCMD > results/permissioning-console.txt 2>&1 &
PIDVAL=$!
echo "$PERMCMD -- $PIDVAL"
for SERVERID in $(seq 5 -1 1)
do
IDX=$(($SERVERID - 1))
SERVERCMD="../bin/server --config server-$SERVERID.yaml"
if [ $SERVERID -eq 5 ] && [ -n "$NSYSENABLED" ]
then
SERVERCMD="nsys profile --session-new=gputest --trace=cuda -o server-$SERVERID $SERVERCMD"
fi
$SERVERCMD > $SERVERLOGS/server-$SERVERID-console.txt 2>&1 &
PIDVAL=$!
echo "$SERVERCMD -- $PIDVAL"
done
# Start gateways
for GWID in $(seq 5 -1 1)
do
IDX=$(($GWID - 1))
GATEWAYCMD="../bin/gateway --logLevel 2 --config gateway-$GWID.yaml"
$GATEWAYCMD > $GATEWAYLOGS/gateway-$GWID-console.txt 2>&1 &
PIDVAL=$! PIDVAL=$!
echo "$GATEWAYCMD -- $PIDVAL" echo "$PERMCMD -- $PIDVAL"
done
jobs -p > results/serverpids for SERVERID in $(seq 5 -1 1)
do
IDX=$(($SERVERID - 1))
SERVERCMD="../bin/server --config server-$SERVERID.yaml"
if [ $SERVERID -eq 5 ] && [ -n "$NSYSENABLED" ]
then
SERVERCMD="nsys profile --session-new=gputest --trace=cuda -o server-$SERVERID $SERVERCMD"
fi
$SERVERCMD > $SERVERLOGS/server-$SERVERID-console.txt 2>&1 &
PIDVAL=$!
echo "$SERVERCMD -- $PIDVAL"
done
finish() { # Start gateways
echo "STOPPING SERVERS AND GATEWAYS..." for GWID in $(seq 5 -1 1)
if [ -n "$NSYSENABLED" ]
then
nsys stop --session=gputest
fi
# NOTE: jobs -p doesn't work in a signal handler
for job in $(cat results/serverpids)
do do
echo "KILLING $job" IDX=$(($GWID - 1))
kill $job || true GATEWAYCMD="../bin/gateway --logLevel 2 --config gateway-$GWID.yaml"
$GATEWAYCMD > $GATEWAYLOGS/gateway-$GWID-console.txt 2>&1 &
PIDVAL=$!
echo "$GATEWAYCMD -- $PIDVAL"
done done
sleep 5 jobs -p > results/serverpids
for job in $(cat results/serverpids) finish() {
do echo "STOPPING SERVERS AND GATEWAYS..."
echo "KILL -9 $job" if [ -n "$NSYSENABLED" ]
kill -9 $job || true then
nsys stop --session=gputest
fi
# NOTE: jobs -p doesn't work in a signal handler
for job in $(cat results/serverpids)
do
echo "KILLING $job"
kill $job || true
done
sleep 5
for job in $(cat results/serverpids)
do
echo "KILL -9 $job"
kill -9 $job || true
done
#tail $SERVERLOGS/*
#tail $CLIENTCLEAN/*
#diff -aruN clients.goldoutput $CLIENTCLEAN
}
trap finish EXIT
trap finish INT
# Sleeps can die in a fire on the sun, we wait for the servers to start running
# rounds
rm rid.txt || true
touch rid.txt
cnt=0
echo -n "Waiting for a round to run"
while [ ! -s rid.txt ] && [ $cnt -lt 120 ]; do
sleep 1
grep -a "RID 1 ReceiveFinishRealtime END" results/servers/server-5.log > rid.txt || true
cnt=$(($cnt + 1))
echo -n "."
done done
#tail $SERVERLOGS/*
#tail $CLIENTCLEAN/*
#diff -aruN clients.goldoutput $CLIENTCLEAN
}
trap finish EXIT # Start a user discovery bot server
trap finish INT echo "STARTING UDB..."
UDBCMD="../bin/udb --logLevel 3 --config udb.yaml -l 1 --devMode"
# Sleeps can die in a fire on the sun, we wait for the servers to start running $UDBCMD >> $UDBOUT 2>&1 &
# rounds PIDVAL=$!
rm rid.txt || true echo $PIDVAL >> results/serverpids
touch rid.txt echo "$UDBCMD -- $PIDVAL"
cnt=0 rm rid.txt || true
echo -n "Waiting for a round to run" while [ ! -s rid.txt ] && [ $cnt -lt 30 ]; do
while [ ! -s rid.txt ] && [ $cnt -lt 120 ]; do sleep 1
sleep 1 grep -a "Sending Poll message" results/udb-console.txt > rid.txt || true
grep -a "RID 1 ReceiveFinishRealtime END" results/servers/server-5.log > rid.txt || true cnt=$(($cnt + 1))
cnt=$(($cnt + 1)) echo -n "."
echo -n "." done
done
echo "localhost:18000" > results/permserver.txt
echo "DONE LETS DO STUFF"
echo "DONE LETS DO STUFF" else
echo "Connecting to network defined at $PERMISSIONING"
echo $PERMISSIONING > results/permserver.txt
fi
# Start a user discovery bot server echo "DOWNLOADING TLS Cert..."
echo "STARTING UDB..." openssl s_client -showcerts -connect $(cat results/permserver.txt) < /dev/null 2>&1 | openssl x509 -outform PEM > results/permcert.pem
UDBCMD="../bin/udb --logLevel 3 --config udb.yaml -l 1 --devMode" echo "DOWNLOADING NDF..."
$UDBCMD >> $UDBOUT 2>&1 & CLIENTCMD="../bin/client getndf --permhost $(cat results/permserver.txt) --cert results/permcert.pem"
eval $CLIENTCMD >> results/ndf.json 2>&1 &
PIDVAL=$! PIDVAL=$!
echo $PIDVAL >> results/serverpids echo "$CLIENTCMD -- $PIDVAL"
echo "$UDBCMD -- $PIDVAL"
rm rid.txt || true
while [ ! -s rid.txt ] && [ $cnt -lt 30 ]; do
sleep 1
grep -a "Sending Poll message" results/udb-console.txt > rid.txt || true
cnt=$(($cnt + 1))
echo -n "."
done
# sleep 5 cat results/ndf.json | jq . | head -5
echo "RUNNING CLIENTS..."
runclients() { runclients() {
echo "Starting clients..." echo "Starting clients..."
...@@ -164,52 +193,56 @@ runclients() { ...@@ -164,52 +193,56 @@ runclients() {
done done
} }
echo "RUNNING BASIC CLIENTS..."
runclients
echo "RUNNING BASIC CLIENTS (2nd time)..."
runclients
if [ "$PERMISSIONING" == "" ]
then
# Send E2E messages between a single user echo "RUNNING BASIC CLIENTS..."
mkdir -p blob9 runclients
mkdir -p blob18 echo "RUNNING BASIC CLIENTS (2nd time)..."
echo "TEST E2E WITH PRECANNED USERS..." runclients
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 2 --receiveCount 2 -s blob9/blob9 --sendid 9 --destid 9 -m \"Hi 9->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 2 --receiveCount 2 -s blob9/blob9 --sendid 9 --destid 9 -m \"Hi 9->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL
# Send E2E messages between two users
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 3 --receiveCount 3 -s blob9/blob9 --sendid 9 --destid 18 -m \"Hi 9->18, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL1=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client18.log --sendDelay 1000 --sendCount 3 --receiveCount 3 -s blob18/blob18 --sendid 18 --destid 9 -m \"Hi 18->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client18.txt 2>&1 &
PIDVAL2=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL1
wait $PIDVAL2
# Send multiple E2E encrypted messages between users that discovered each other
echo "SENDING MESSAGES TO PRECANNED USERS AND FORCING A REKEY..."
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client18_rekey.log --sendCount 20 --receiveCount 20 --destid 9 -s blob18/blob18 -m \"Hello, 9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client18_rekey.txt 2>&1 || true &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9_rekey.log --sendCount 20 --receiveCount 20 --destid 18 -s blob9/blob9 -m \"Hello, 18, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9_rekey.txt 2>&1 || true &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL || true
# Send E2E messages between a single user
mkdir -p blob9
mkdir -p blob18
echo "TEST E2E WITH PRECANNED USERS..."
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 2 --receiveCount 2 -s blob9/blob9 --sendid 9 --destid 9 -m \"Hi 9->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 2 --receiveCount 2 -s blob9/blob9 --sendid 9 --destid 9 -m \"Hi 9->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL
# Send E2E messages between two users
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9.log --sendDelay 1000 --sendCount 3 --receiveCount 3 -s blob9/blob9 --sendid 9 --destid 18 -m \"Hi 9->18, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9.txt 2>&1 &
PIDVAL1=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client18.log --sendDelay 1000 --sendCount 3 --receiveCount 3 -s blob18/blob18 --sendid 18 --destid 9 -m \"Hi 18->9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client18.txt 2>&1 &
PIDVAL2=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL1
wait $PIDVAL2
# Send multiple E2E encrypted messages between users that discovered each other
echo "SENDING MESSAGES TO PRECANNED USERS AND FORCING A REKEY..."
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client18_rekey.log --sendCount 20 --receiveCount 20 --destid 9 -s blob18/blob18 -m \"Hello, 9, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client18_rekey.txt 2>&1 || true &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client9_rekey.log --sendCount 20 --receiveCount 20 --destid 18 -s blob9/blob9 -m \"Hello, 18, with E2E Encryption\""
eval $CLIENTCMD >> $CLIENTOUT/client9_rekey.txt 2>&1 || true &
PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL || true
fi
# Non-precanned E2E user messaging # Non-precanned E2E user messaging
echo "SENDING E2E MESSAGES TO NEW USERS..." echo "SENDING E2E MESSAGES TO NEW USERS..."
...@@ -253,46 +286,49 @@ wait $PIDVAL ...@@ -253,46 +286,49 @@ wait $PIDVAL
wait $PIDVAL2 wait $PIDVAL2
# UD Test if [ "$PERMISSIONING" == "" ]
echo "TESTING USER DISCOVERY..." then
CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client13.log -s blob13 --register josh13 --addemail josh13@elixxir.io --addphone 6178675309US" # UD Test
eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true & echo "TESTING USER DISCOVERY..."
PIDVAL=$! CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client13.log -s blob13 --register josh13 --addemail josh13@elixxir.io --addphone 6178675309US"
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true &
wait $PIDVAL PIDVAL=$!
CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client31.log -s blob31 --register josh31 --addemail josh31@elixxir.io --addphone 6178675310US" echo "$CLIENTCMD -- $PIDVAL"
eval $CLIENTCMD >> $CLIENTOUT/client31.txt || true & wait $PIDVAL
PIDVAL=$! CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client31.log -s blob31 --register josh31 --addemail josh31@elixxir.io --addphone 6178675310US"
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD >> $CLIENTOUT/client31.txt || true &
wait $PIDVAL PIDVAL=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client13.log -s blob13 --searchusername josh31 --searchemail josh31@elixxir.io --searchphone 6178675310US" wait $PIDVAL
eval $CLIENTCMD > $CLIENTOUT/josh31.bin|| true &
PIDVAL1=$! CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client13.log -s blob13 --searchusername josh31 --searchemail josh31@elixxir.io --searchphone 6178675310US"
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD > $CLIENTOUT/josh31.bin|| true &
CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client31.log -s blob31 --searchusername josh13 --searchemail josh13@elixxir.io --searchphone 6178675309US" PIDVAL1=$!
eval $CLIENTCMD > $CLIENTOUT/josh13.bin || true & echo "$CLIENTCMD -- $PIDVAL"
PIDVAL2=$! CLIENTCMD="timeout 240s ../bin/client ud $CLIENTUDOPTS -l $CLIENTOUT/client31.log -s blob31 --searchusername josh13 --searchemail josh13@elixxir.io --searchphone 6178675309US"
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD > $CLIENTOUT/josh13.bin || true &
wait $PIDVAL1 PIDVAL2=$!
wait $PIDVAL2 echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL1
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client13.log -s blob13 --destfile $CLIENTOUT/josh31.bin --sendCount 0 --receiveCount 0" wait $PIDVAL2
eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true &
PIDVAL2=$! CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client13.log -s blob13 --destfile $CLIENTOUT/josh31.bin --sendCount 0 --receiveCount 0"
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true &
wait $PIDVAL2 PIDVAL2=$!
echo "$CLIENTCMD -- $PIDVAL"
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client31.log -s blob31 --destfile $CLIENTOUT/josh13.bin --sendCount 5 --receiveCount 5 -m \"Hello from Josh31, with E2E Encryption\"" wait $PIDVAL2
eval $CLIENTCMD >> $CLIENTOUT/client31.txt || true &
PIDVAL=$! CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client31.log -s blob31 --destfile $CLIENTOUT/josh13.bin --sendCount 5 --receiveCount 5 -m \"Hello from Josh31, with E2E Encryption\""
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD >> $CLIENTOUT/client31.txt || true &
CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client13.log -s blob13 --destfile $CLIENTOUT/josh31.bin --sendCount 5 --receiveCount 5 -m \"Hello from Josh13, with E2E Encryption\"" PIDVAL=$!
eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true & echo "$CLIENTCMD -- $PIDVAL"
PIDVAL2=$! CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client13.log -s blob13 --destfile $CLIENTOUT/josh31.bin --sendCount 5 --receiveCount 5 -m \"Hello from Josh13, with E2E Encryption\""
echo "$CLIENTCMD -- $PIDVAL" eval $CLIENTCMD >> $CLIENTOUT/client13.txt || true &
wait $PIDVAL PIDVAL2=$!
wait $PIDVAL2 echo "$CLIENTCMD -- $PIDVAL"
wait $PIDVAL
wait $PIDVAL2
fi
cp $CLIENTOUT/*.txt $CLIENTCLEAN/ cp $CLIENTOUT/*.txt $CLIENTCLEAN/
...@@ -312,19 +348,26 @@ set -e ...@@ -312,19 +348,26 @@ set -e
echo "TESTS EXITED SUCCESSFULLY, CHECKING OUTPUT..." echo "TESTS EXITED SUCCESSFULLY, CHECKING OUTPUT..."
set +x set +x
diff -aruN clients.goldoutput $CLIENTCLEAN for C in $(ls -1 $CLIENTCLEAN)
do
#cat $CLIENTOUT/* | strings | grep -e "ERROR" -e "FATAL" > results/client-errors || true diff -auN clients.goldoutput/$C $CLIENTCLEAN/$C
#diff -ruN results/client-errors.txt noerrors.txt done
cat $SERVERLOGS/server-*.log | grep -a "ERROR" | grep -a -v "context" | grep -av "metrics" | grep -av "database" > results/server-errors.txt || true
cat $SERVERLOGS/server-*.log | grep -a "FATAL" | grep -a -v "context" | grep -av "transport is closing" | grep -av "database" >> results/server-errors.txt || true if [ "$PERMISSIONING" == "" ]
diff -aruN results/server-errors.txt noerrors.txt then
cat $DUMMYOUT | grep -a "ERROR" | grep -av "context" | grep -av "failed\ to\ read\ certificate" > results/dummy-errors.txt || true
cat $DUMMYOUT | grep -a "FATAL" | grep -av "context" >> results/dummy-errors.txt || true #cat $CLIENTOUT/* | strings | grep -e "ERROR" -e "FATAL" > results/client-errors || true
diff -aruN results/dummy-errors.txt noerrors.txt #diff -ruN results/client-errors.txt noerrors.txt
IGNOREMSG="GetRoundBufferInfo: Error received: rpc error: code = Unknown desc = round buffer is empty" cat $SERVERLOGS/server-*.log | grep -a "ERROR" | grep -a -v "context" | grep -av "metrics" | grep -av "database" > results/server-errors.txt || true
cat $GATEWAYLOGS/*.log | grep -a "ERROR" | grep -av "context" | grep -av "certificate" | grep -av "Failed to read key" | grep -av "$IGNOREMSG" > results/gateway-errors.txt || true cat $SERVERLOGS/server-*.log | grep -a "FATAL" | grep -a -v "context" | grep -av "transport is closing" | grep -av "database" >> results/server-errors.txt || true
cat $GATEWAYLOGS/*.log | grep -a "FATAL" | grep -av "context" | grep -av "transport is closing" >> results/gateway-errors.txt || true diff -aruN results/server-errors.txt noerrors.txt
diff -aruN results/gateway-errors.txt noerrors.txt cat $DUMMYOUT | grep -a "ERROR" | grep -av "context" | grep -av "failed\ to\ read\ certificate" > results/dummy-errors.txt || true
cat $DUMMYOUT | grep -a "FATAL" | grep -av "context" >> results/dummy-errors.txt || true
diff -aruN results/dummy-errors.txt noerrors.txt
IGNOREMSG="GetRoundBufferInfo: Error received: rpc error: code = Unknown desc = round buffer is empty"
cat $GATEWAYLOGS/*.log | grep -a "ERROR" | grep -av "context" | grep -av "certificate" | grep -av "Failed to read key" | grep -av "$IGNOREMSG" > results/gateway-errors.txt || true
cat $GATEWAYLOGS/*.log | grep -a "FATAL" | grep -av "context" | grep -av "transport is closing" >> results/gateway-errors.txt || true
diff -aruN results/gateway-errors.txt noerrors.txt
fi
echo "NO OUTPUT ERRORS, SUCCESS!" echo "NO OUTPUT ERRORS, SUCCESS!"
#!/usr/bin/env bash #!/usr/bin/env bash
# Get platform parameter
# === LINUX ===
if [[ $1 == "l" ]] ||[[ $1 == "linux" ]] || [[ -z $1 ]]; then
if [[ $2 == "d" ]]; then # DEFAULTS FOR INTEGRATION -- do not publish
BIN=".linux64?job=build" if [ "$GITLAB_ACCESS_TOKEN" == "" ]
else then
BIN=".linux64" echo "ERROR: SET GITLAB_ACCESS_TOKEN in your environment"
exit -1
fi fi
echo "Platform set to Linux"
# === MACOS ===
elif [[ $1 == "m" ]] || [[ $1 == "mac" ]]; then
if [[ $2 == "d" ]]; then PLATFORM=$1
BIN=".darwin64?job=build" USEREPO=$2
else
BIN=".darwin64" if [ "$PLATFORM" == "" ]
then
PLATFORM="l"
fi
if [ "$USEREPO" == "" ]
then
USEREPO="d"
fi fi
# Get platform parameter
# === LINUX ===
if [[ $PLATFORM == "l" ]] ||[[ $PLATFORM == "linux" ]] || [[ -z $PLATFORM ]]; then
if [[ $USEREPO == "d" ]]; then
BIN=".linux64?job=build"
else
BIN=".linux64"
fi
echo "Platform set to Linux"
# === MACOS ===
elif [[ $PLATFORM == "m" ]] || [[ $PLATFORM == "mac" ]]; then
if [[ $USEREPO == "d" ]]; then
BIN=".darwin64?job=build"
else
BIN=".darwin64"
fi
echo "Platform set to Mac" echo "Platform set to Mac"
else else
echo "Invalid platform argument: $1" echo "Invalid platform argument: $PLATFORM"
exit 0 exit 0
fi fi
# Set up the URL for downloading the binaries # Set up the URL for downloading the binaries
DEFAULTBRANCH=${DEFAULTBRANCH:="release"} DEFAULTBRANCH=${DEFAULTBRANCH:="release"}
if [[ $2 == "d" ]]; then if [[ $USEREPO == "d" ]]; then
REPOS_API=${REPOS_API:="https://gitlab.com/api/v4/projects/elixxir%2F"} REPOS_API=${REPOS_API:="https://gitlab.com/api/v4/projects/elixxir%2F"}
else else
REPOS_API=${REPOS_API:="https://elixxir-bins.s3-us-west-1.amazonaws.com"} REPOS_API=${REPOS_API:="https://elixxir-bins.s3-us-west-1.amazonaws.com"}
...@@ -54,23 +74,23 @@ echo "(Note: if you forced a branch, that is checked first!)" ...@@ -54,23 +74,23 @@ echo "(Note: if you forced a branch, that is checked first!)"
for BRANCH in $(echo "forcedbranch" $FBRANCH $FBRANCH2 $DEFAULTBRANCH); do for BRANCH in $(echo "forcedbranch" $FBRANCH $FBRANCH2 $DEFAULTBRANCH); do
echo "Attempting downloads from: $BRANCH" echo "Attempting downloads from: $BRANCH"
if [[ $2 == "d" ]]; then if [[ $USEREPO == "d" ]]; then
BRANCH_URL=${BRANCH_URL:="jobs/artifacts/$BRANCH/raw/release"} BRANCH_URL=${BRANCH_URL:="jobs/artifacts/$BRANCH/raw/release"}
# Get URLs for artifacts from all relevant repos # Get URLs for artifacts from all relevant repos
UDB_URL=${UDB_URL:="${REPOS_API}user-discovery-bot/$BRANCH_URL/udb$BIN"} UDB_URL=${UDB_URL:="${REPOS_API}user-discovery-bot/$BRANCH_URL/udb$BIN"}
SERVER_URL=${SERVER_URL:="${REPOS_API}server/$BRANCH_URL/server$BIN"} SERVER_URL=${SERVER_URL:="${REPOS_API}server/$BRANCH_URL/server$BIN"}
GW_URL=${GW_URL:="${REPOS_API}gateway/$BRANCH_URL/gateway$BIN"} GW_URL=${GW_URL:="${REPOS_API}gateway/$BRANCH_URL/gateway$BIN"}
PERMISSIONING_URL=${PERMISSIONING_URL:="${REPOS_API}registration/$BRANCH_URL/registration$BIN"} PERMISSIONING_URL=${PERMISSIONING_URL:="${REPOS_API}registration/$BRANCH_URL/registration$BIN"}
CLIENT_URL=${CLIENT_URL:="${REPOS_API}client/$BRANCH_URL/client$BIN"} CLIENT_URL=${CLIENT_URL:="${REPOS_API}client/$BRANCH_URL/client$BIN"}
SERVER_GPU_URL=${SERVER_GPU_URL:="${REPOS_API}server/$BRANCH_URL/server-cuda.linux64?job=build"} SERVER_GPU_URL=${SERVER_GPU_URL:="${REPOS_API}server/$BRANCH_URL/server-cuda.linux64?job=build"}
GPULIB_URL=${GPULIB_URL:="${REPOS_API}server/$BRANCH_URL/libpowmosm75.so?job=build"} GPULIB_URL=${GPULIB_URL:="${REPOS_API}server/$BRANCH_URL/libpowmosm75.so?job=build"}
else else
UDB_URL=${UDB_URL:="${REPOS_API}/$BRANCH/udb$BIN"} UDB_URL=${UDB_URL:="${REPOS_API}/$BRANCH/udb$BIN"}
SERVER_URL=${SERVER_URL:="${REPOS_API}/$BRANCH/server$BIN"} SERVER_URL=${SERVER_URL:="${REPOS_API}/$BRANCH/server$BIN"}
GW_URL=${GW_URL:="${REPOS_API}/$BRANCH/gateway$BIN"} GW_URL=${GW_URL:="${REPOS_API}/$BRANCH/gateway$BIN"}
PERMISSIONING_URL=${PERMISSIONING_URL:="${REPOS_API}/$BRANCH/registration.stateless$BIN"} PERMISSIONING_URL=${PERMISSIONING_URL:="${REPOS_API}/$BRANCH/registration.stateless$BIN"}
CLIENT_URL=${CLIENT_URL:="${REPOS_API}/$BRANCH/client$BIN"} CLIENT_URL=${CLIENT_URL:="${REPOS_API}/$BRANCH/client$BIN"}
fi fi
set -x set -x
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment