mirror of
https://github.com/deepseek-ai/3FS
synced 2025-06-26 18:16:45 +00:00
Initial commit
This commit is contained in:
6
tests/scripts/CMakeLists.txt
Normal file
6
tests/scripts/CMakeLists.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
add_custom_target(fdb_loopback ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/fdb_loopback.sh)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/fdb_loopback.sh
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/fdb_loopback.sh
|
||||
${CMAKE_CURRENT_BINARY_DIR}/fdb_loopback.sh
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/fdb_loopback.sh)
|
||||
32
tests/scripts/binary_backup.sh
Normal file
32
tests/scripts/binary_backup.sh
Normal file
@@ -0,0 +1,32 @@
|
||||
#/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
# This scripe is used by CI to back test binarys when failure.
|
||||
|
||||
if (( $# != 3 )) ; then
|
||||
echo "Usage 'cd working-directory; ${0} <build-directory> <backup-directory> <pipeline-id>' "
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo 'Back up binarys and logs.'
|
||||
|
||||
BUILD_DIRECTORY=${1}
|
||||
BACKUP_DIRECTORY=${2}
|
||||
PIPELINE_ID=${3}
|
||||
|
||||
mkdir -p ${BACKUP_DIRECTORY}
|
||||
|
||||
# To avoid backup directory use up space, clean backup directory before test.
|
||||
# Only keeps backup files created in 72 hours.
|
||||
OLD_BACKUPS=`find ${BACKUP_DIRECTORY} -type f -mtime +3 -name 'backup-*.tar.gz'`
|
||||
echo 'Remove old updates:' ${OLD_BACKUPS}
|
||||
echo ${OLD_BACKUPS} | xargs rm -f
|
||||
|
||||
# Save binarys.
|
||||
mkdir -p ${BUILD_DIRECTORY}/backup
|
||||
cp ${BUILD_DIRECTORY}/tests/test_* ${BUILD_DIRECTORY}/backup || true
|
||||
|
||||
BACKUP_PATH=${BACKUP_DIRECTORY}/backup-${PIPELINE_ID}.tar.gz
|
||||
echo 'Tar all files to' ${BACKUP_PATH}
|
||||
tar -zcvf ${BACKUP_PATH} ${BUILD_DIRECTORY}/backup
|
||||
71
tests/scripts/fdb_loopback.sh
Executable file
71
tests/scripts/fdb_loopback.sh
Executable file
@@ -0,0 +1,71 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
function cleanup {
|
||||
rv=$?
|
||||
jobs -p | xargs -r kill || true
|
||||
exit $rv
|
||||
}
|
||||
trap "cleanup" EXIT
|
||||
|
||||
if (( $# == 0 )) ; then
|
||||
echo "FDB_PATH=<fdb-binary-path> FDB_PORT=<fdb-port> FDB_CLUSTER_SIZE=<n> ${0} <data> <cmd>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
DATA_DIR=${1}
|
||||
COMMAND=${2:-}
|
||||
|
||||
echo $DATA_DIR $COMMAND
|
||||
|
||||
FDB_PORT=${FDB_PORT:-8000}
|
||||
FDB_CLUSTER_SIZE=${FDB_CLUSTER_SIZE:-1}
|
||||
|
||||
echo $FDB_PORT $FDB_CLUSTER_SIZE
|
||||
|
||||
if [ -z ${FDB_PATH:-''} ]; then
|
||||
FDB=`which fdbserver`
|
||||
FDBCLI=`which fdbcli`
|
||||
else
|
||||
FDB=$FDB_PATH/fdbserver
|
||||
FDBCLI=$FDB_PATH/fdbcli
|
||||
fi
|
||||
|
||||
echo fdbserver: $FDB
|
||||
echo fdbclient: $FDBCLI
|
||||
|
||||
rm -rf ${DATA_DIR}
|
||||
mkdir -p ${DATA_DIR}
|
||||
|
||||
CLUSTER_FILE="test${FDB_PORT}:testdb${FDB_PORT}@127.0.0.1:${FDB_PORT}"
|
||||
CLUSTER=${DATA_DIR}/fdb.cluster
|
||||
echo $CLUSTER_FILE > $CLUSTER
|
||||
echo "Starting Cluster: " $CLUSTER_FILE
|
||||
|
||||
for j in `seq 1 ${FDB_CLUSTER_SIZE}`; do
|
||||
PORT=`expr $FDB_PORT + $j - 1`
|
||||
LOG=${DATA_DIR}/${j}/log
|
||||
DATA=${DATA_DIR}/${j}/data
|
||||
mkdir -p ${LOG} ${DATA}
|
||||
${FDB} -p auto:${PORT}`` -d $DATA -L $LOG -C $CLUSTER &
|
||||
done
|
||||
|
||||
CLI="$FDBCLI -C ${CLUSTER} --exec"
|
||||
sleep 5 && $CLI "configure new memory single"
|
||||
sleep 5 && echo "Check Foundationdb status:" `$CLI status`
|
||||
|
||||
echo ""
|
||||
echo "Run test:"
|
||||
FDB_CLUSTER_FILE=`realpath ${CLUSTER}`
|
||||
echo export FDB_UNITTEST_CLUSTER=${FDB_CLUSTER_FILE}
|
||||
export FDB_UNITTEST_CLUSTER=$FDB_CLUSTER_FILE
|
||||
|
||||
if [ -z ${COMMAND} ]; then
|
||||
while read -p "> " -r command; do
|
||||
echo Executing command: $command
|
||||
eval $command
|
||||
done
|
||||
else
|
||||
echo Executing command: ${COMMAND}
|
||||
eval ${COMMAND}
|
||||
fi
|
||||
Reference in New Issue
Block a user