修改上传oss shell

main
yurui 2024-09-10 17:44:10 +08:00
parent fcb9f8c7d3
commit e4bde7b202
2 changed files with 38 additions and 8 deletions

View File

@ -1,7 +1,9 @@
#!/bin/bash
# 使用 ossutil 上传至服务器
# 上传参数 VERSION(版本) PLATFORM(平台) CHANNEL(渠道) DIR_PATH(文件路径)
# 传入资源文件夹路径模版 DIR_PATH="../../$PROJECT_NAME/ServerData/$PLATFORM/"
##!/bin/bash
SHELL_DIR=$(dirname $0)
echo "change dir to $SHELL_DIR"
cd "$SHELL_DIR"
@ -18,16 +20,41 @@ if [ -f ./project_env.sh ]; then
echo "found the project_env file"
fi
VERSION="$1"
PLATFORM="$2"
CHANNEL="$3"
DIR_PATH="$4"
file_url="$1"
cloud_url="$2"
# 获取服务器路径
REMOTE_PATH="$OSS_REMOTE_UPLOAD_PATH/$CHANNEL/$PLATFORM/$VERSION/"
echo "remote path : $REMOTE_PATH"
# 需要安装和配置阿里云oss的命令行管理工具
# 检查服务器上的文件夹是否存在
"$OSSUTIL_PATH" ls "$REMOTE_PATH" > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "Remote Create $REMOTE_PATH .."
"$OSSUTIL_PATH" mkdir "$REMOTE_PATH"
fi
echo "运行阿里云oss sync $file_url $cloud_url"
# 判断DIR_PATH是文件还是目录 -f强制覆盖同名文件
if [ -d "$DIR_PATH" ]; then
echo "dir : $DIR_PATH"
"$OSSUTIL_PATH" cp -r "$DIR_PATH" "$REMOTE_PATH" -f
elif [ -f "$DIR_PATH" ]; then
echo "file : $DIR_PATH"
"$OSSUTIL_PATH" cp "$DIR_PATH" "$REMOTE_PATH" -f
else
echo "Error: $DIR_PATH is neither a file nor a directory. Exiting."
exit 1
fi
upload_result=$?
#ossutil sync ~/bin oss://nld-test/srouce/ -f -u -j 16
if [ $upload_result -eq 0 ]; then
echo "Upload [$DIR_PATH] to remote server successfully."
else
echo "Failed to upload [$DIR_PATH] to remote server."
exit 1
fi
ossutil sync $file_url $cloud_url -f -u -j 16

View File

@ -15,6 +15,9 @@ REMOTE_USER="root"
# 服务器地址
REMOTE_HOST="132.232.113.98"
# 内部OSS服务器地址
OSS_REMOTE_UPLOAD_PATH="oss://nld-test/pre_release"
# 服务器上传资源路径
REMOTE_UPLOAD_PATH="var/www/html/nld/Build"