diff --git a/scripts/backup-common.sh b/scripts/backup-common.sh index 0e40eee..c42d96d 100755 --- a/scripts/backup-common.sh +++ b/scripts/backup-common.sh @@ -169,8 +169,8 @@ backup_oss_upload() { backup_validate_oss_uri() { local uri="$1" - if [[ ! "${uri}" =~ ^oss://[A-Za-z0-9][A-Za-z0-9._-]*$ ]]; then - backup_error "BACKUP_OSS_URI 必须是 oss://bucket 格式,当前值:${uri}" + if [[ ! "${uri}" =~ ^oss://[A-Za-z0-9][A-Za-z0-9._-]*(/[A-Za-z0-9._-]+)*$ ]]; then + backup_error "BACKUP_OSS_URI 必须是 oss://bucket 或 oss://bucket/prefix 格式,当前值:${uri}" exit 1 fi } diff --git a/scripts/deploy-prod.sh b/scripts/deploy-prod.sh index 1a9abe3..d54252e 100755 --- a/scripts/deploy-prod.sh +++ b/scripts/deploy-prod.sh @@ -230,8 +230,8 @@ validate_env() { log_error "BACKUP_RESTORE_DIR 必须是与 BACKUP_DIR 不同的 /data 子目录,当前值:${backup_restore_dir}" exit 1 fi - if [[ ! "${backup_oss_uri}" =~ ^oss://[A-Za-z0-9][A-Za-z0-9._-]*$ ]]; then - log_error "BACKUP_OSS_URI 必须是 oss://bucket 格式,当前值:${backup_oss_uri}" + if [[ ! "${backup_oss_uri}" =~ ^oss://[A-Za-z0-9][A-Za-z0-9._-]*(/[A-Za-z0-9._-]+)*$ ]]; then + log_error "BACKUP_OSS_URI 必须是 oss://bucket 或 oss://bucket/prefix 格式,当前值:${backup_oss_uri}" exit 1 fi if [[ ! "${backup_user}" =~ ^[A-Za-z0-9_]{1,32}$ ]]; then