cubefs/docker/script/start_client_auth.sh
zhuzhengyi001 9f968b373d Enhancement: update dockerimage for s3test
Signed-off-by: zhuzhengyi001 <zhuzhengyi001@ke.com>
Signed-off-by: slasher <shenjie1@oppo.com>
2023-11-24 14:41:14 +08:00

116 lines
2.9 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
MntPoint=/cfs/mnt
mkdir -p /cfs/bin /cfs/log /cfs/mnt
src_path=/go/src/github.com/cubefs/cfs
Master1Addr="192.168.0.11:17010"
LeaderAddr=""
VolName="ltptest"
TryTimes=5
getLeaderAddr() {
echo -n "check Master "
for i in $(seq 1 300) ; do
LeaderAddr=$(curl -s "http://$Master1Addr/admin/getCluster" | jq '.data.LeaderAddr' | tr -d '"' )
if [ "x$LeaderAddr" != "x" ] ; then
break
fi
echo -n "."
sleep 1
done
if [ "x$LeaderAddr" == "x" ] ; then
echo -n "timeout, exit\n"
exit 1
fi
echo "ok"
}
check_status() {
node="$1"
up=0
echo -n "check $node "
for i in $(seq 1 300) ; do
clusterInfo=$(curl -s "http://$LeaderAddr/admin/getCluster")
#NodeUpCount=$( echo "$clusterInfo" | jq ".data.${node}s | .[].Status" | grep "true" | wc -l)
NodeTotoalGB=$( echo "$clusterInfo" | jq ".data.${node}StatInfo.TotalGB" )
if [[ $NodeTotoalGB -gt 0 ]] ; then
up=1
break
fi
echo -n "."
sleep 1
done
if [ $up -eq 0 ] ; then
echo -n "timeout, exit"
curl "http://$LeaderAddr/admin/getCluster" | jq
exit 1
fi
echo "ok"
}
create_vol() {
clusterInfo=$(curl -s "http://$LeaderAddr/admin/getCluster")
volname=$(echo "$clusterInfo" | jq ".data.VolStatInfo[0].Name" | tr -d \")
if [[ "-$volname" == "-$VolName" ]] ; then
echo "vol ok"
return
fi
echo -n "create vol "
res=$(curl -s "http://$LeaderAddr/admin/createVol?name=$VolName&capacity=30&owner=ltptest&authenticate=true")
code=$(echo "$res" | jq .code)
if [[ $code -ne 0 ]] ; then
echo "failed, exit"
curl -s "http://$LeaderAddr/admin/getCluster" | jq
exit 1
fi
echo "ok"
}
create_dp() {
echo -n "create datapartition "
res=$(curl -s "http://$LeaderAddr/dataPartition/create?count=20&name=$VolName&type=extent" )
code=$(echo "$res" | jq .code)
if [[ $code -ne 0 ]] ; then
echo "failed, exit"
#curl -s "http://$LeaderAddr/admin/getCluster" | jq
exit 1
fi
echo "ok"
}
print_error_info() {
echo "------ err ----"
cat /cfs/log/cfs.out
cat /cfs/log/client/client_info.log
cat /cfs/log/client/client_error.log
curl -s "http://$LeaderAddr/admin/getCluster" | jq
mount
df -h
stat $MntPoint
ls -l $MntPoint
ls -l $LTPTestDir
}
start_client() {
echo -n "start client "
/cfs/bin/cfs-client -c /cfs/conf/client.json
for((i=0; i<$TryTimes; i++)) ; do
sleep 2
sta=$(stat $MntPoint 2>/dev/null | tr ":" " " | awk '/Inode/{print $4}')
if [[ "x$sta" == "x1" ]] ; then
ok=1
echo "ok"
exit 0
fi
done
echo "failed"
exit 1
}
getLeaderAddr
check_status "MetaNode"
check_status "DataNode"
create_vol
start_client