跳到主要内容

清理算盘项目临时文件

清理规则:
如果项目未在运行,则清理项目的所有临时文件;如果项目还在运行,则保留项目的最新3个临时文件

#!/bin/bash 

studio_dir=/data/sp_minio/suanpan/studio
if [ "$#" -eq 1 ]; then
studio_dir=$1
fi

if [ -d $studio_dir ]; then
echo "Studio dir: $studio_dir"
else
echo "Studio dir: $studio_dir does not exist."
exit 1
fi

for userid in `ls $studio_dir | grep ^1`; do
tmp_dir=$studio_dir/$userid/tmp

if [ -d $tmp_dir ]; then
for appid in `ls $tmp_dir`; do
app_dir=$studio_dir/$userid/tmp/$appid
result=`kubectl get pod --all-namespaces -lappId=$appid | head -n1` &> /dev/null

if [ -z "$result" ]; then
echo "Clean up: $app_dir"
rm -rf $app_dir
else
echo "Clean up: $app_dir, and keep the latest 3 catalogs"
cd $app_dir && rm -rf `ls -t | tail -n +4` && cd ..
# app_size=`du $app_dir | tail -n1 | awk '{print $1}'`
# if [ $app_size -gt 1024000 ]; then
# rm -rf $app_dir
# fi
fi
done
fi
done