Skip to content

Commit 5147364

Browse files
committed
```
feat(bash): 支持通过环境变量设置OSS对象键名 - 添加 ALIYUN_OSS_OBJECT_KEY 环境变量作为 --key 参数的默认值 - 更新 README.md 文档,添加新的环境变量说明和示例 - 修改验证逻辑,当 OBJECT_KEY 为空时检查环境变量 - 脚本现在会显示本地文件的 sha256、文件大小和目标 object-key ```
1 parent a66e79d commit 5147364

2 files changed

Lines changed: 11 additions & 3 deletions

File tree

scripts/bash/README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@
6363
- `ALIYUN_ACCESS_KEY_SECRET`
6464
- `ALIYUN_SECURITY_TOKEN`
6565
- `ALIYUN_OSS_BUCKET`
66+
- `ALIYUN_OSS_OBJECT_KEY`
6667
- `ALIYUN_OSS_REGION`
6768
- `ALIYUN_OSS_HOST`
6869
- `ALIYUN_OSS_CONTENT_TYPE`
@@ -106,6 +107,7 @@
106107
ALIYUN_ACCESS_KEY_ID=your-access-key-id
107108
ALIYUN_ACCESS_KEY_SECRET=your-access-key-secret
108109
ALIYUN_OSS_BUCKET=examplebucket
110+
ALIYUN_OSS_OBJECT_KEY=demo/demo.txt
109111
ALIYUN_OSS_REGION=cn-hangzhou
110112
ALIYUN_OSS_HOST=examplebucket.oss-cn-hangzhou.aliyuncs.com
111113
```
@@ -119,10 +121,11 @@ ALIYUN_SECURITY_TOKEN=your-sts-token
119121

120122
```bash
121123
./scripts/bash/aliyun-oss-put.sh \
122-
--file ./demo.txt \
123-
--key demo/demo.txt
124+
--file ./demo.txt
124125
```
125126

127+
如果你在命令行里显式传了 `--key`,它的优先级仍然高于 `ALIYUN_OSS_OBJECT_KEY`
128+
126129
脚本会在发起上传前打印本地文件的 `sha256`、文件大小和目标 `object-key`,方便排查“传错文件”“内容被修改”这类问题。
127130

128131
### Host 说明

scripts/bash/aliyun-oss-put.sh

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ Environment variables:
9393
ALIYUN_ACCESS_KEY_SECRET
9494
ALIYUN_SECURITY_TOKEN Optional STS token.
9595
ALIYUN_OSS_BUCKET Optional default for --bucket.
96+
ALIYUN_OSS_OBJECT_KEY Optional default for --key.
9697
ALIYUN_OSS_REGION Optional default for --region.
9798
ALIYUN_OSS_HOST Optional default for --host.
9899
ALIYUN_OSS_CONTENT_TYPE Optional default for --content-type.
@@ -317,6 +318,10 @@ apply_environment_defaults() {
317318
BUCKET_NAME="$ALIYUN_OSS_BUCKET"
318319
fi
319320

321+
if [ -z "$OBJECT_KEY" ] && [ -n "${ALIYUN_OSS_OBJECT_KEY:-}" ]; then
322+
OBJECT_KEY="$ALIYUN_OSS_OBJECT_KEY"
323+
fi
324+
320325
if [ -z "$REGION_ID" ] && [ -n "${ALIYUN_OSS_REGION:-}" ]; then
321326
REGION_ID="$ALIYUN_OSS_REGION"
322327
fi
@@ -354,7 +359,7 @@ normalize_target() {
354359
validate_inputs() {
355360
[ -n "$FILE_PATH" ] || die 1 "--file is required"
356361
[ -n "$BUCKET_NAME" ] || die 1 "--bucket is required or set ALIYUN_OSS_BUCKET"
357-
[ -n "$OBJECT_KEY" ] || die 1 "--key is required"
362+
[ -n "$OBJECT_KEY" ] || die 1 "--key is required or set ALIYUN_OSS_OBJECT_KEY"
358363
[ -n "$REGION_ID" ] || die 1 "--region is required or set ALIYUN_OSS_REGION"
359364
[ -n "$HOST_INPUT" ] || die 1 "--host is required or set ALIYUN_OSS_HOST"
360365
[ -n "${ALIYUN_ACCESS_KEY_ID:-}" ] || die 1 "ALIYUN_ACCESS_KEY_ID is required"

0 commit comments

Comments
 (0)