Aliyun OSS Upload File ๐
Send a file to Alibaba Cloud OSS from your workflow โ progress bar included
- aliyun_oss_connector
- log
If your storage lives on Alibaba Cloud instead of a home NAS, this is the single-file upload node for you. AliyunOSSUploadFile takes one file (or a glob of files) from under your ComfyUI directory and pushes it to your OSS bucket, with the nice touch of a real progress bar while it's at it - which, on a cloud connection with a few hundred megabytes to move, is a lot more useful than it sounds.
What it does. It uploads a file to your Aliyun OSS bucket as an object. Same path-safety rule as the whole pack: everything is resolved under the ComfyUI base directory, so output/my_image.png and temp/refs/*.jpg are in, anything with an absolute or .. path is out by design. The node globs your path, so wildcards genuinely work here too.
The inputs that matter:
aliyun_oss_connector- fromInitAliyunOSSConnector. Note: no bucket input here - the bucket is baked into the connector.file_path- relative to the ComfyUI root.object_name- the remote key. Empty defaults to the file's basename.path_prefix- a folder prefix prepended to the remote key. This is the Aliyun side's answer to the MinIO upload node: leave it empty to upload flat, or set it toexperiments/round3to namespace objects without restructuring your local folders.
The remote key math is worth spelling out, because it's the one thing people get wrong. The final object name is os.path.join(path_prefix, object_name or basename). So path_prefix = "logs/2026" + object_name = "run_a.png" โ object logs/2026/run_a.png. Leave object_name empty and it becomes logs/2026/my_file.png using the local filename.
How it works. It uses Alibaba's oss2 SDK, computes the local MD5, and compares it against the remote ETag before uploading - so unchanged files get skipped and re-runs are cheap, same trick as the MinIO family. Then it streams the file up with a tqdm progress bar driven by the SDK's progress callback. Output is a single log string, one line per file uploaded. The download direction has progress bars too, so you always know the pipe is actually moving.
Install. This is one pack; install it once. ComfyUI Manager โ search "ComfyUI-MinioConnector" โ install โ restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/MieMieeeee/ComfyUI-MinioConnector
cd ComfyUI-MinioConnector
pip install -r requirements.txt
Deps: oss2, tqdm, and two Aliyun SDK helper packages. No models, no GPU.
Gotchas. Credential errors surface here, not at the init node - the OSS client is lazy too. And since this is real cloud storage, the path-prefix habit is your friend: a namespace costs nothing and saves you from a flat bucket full of image.png, image (1).png chaos. Also, the safety restriction is real: paths outside the ComfyUI directory will simply not match, and the node raises "No files matched the pattern" rather than doing nothing quietly.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| aliyun_oss_connector | ALIYUN_OSS_CONNECTOR | โ | |
| object_name | STRING | โ | |
| file_path | STRING | โ | |
| path_prefix | STRING | โ |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| log | STRING | โ |