Skip to content

feat(storage): add Aliyun OSS backend with OSS_PRESIGN_DISABLED support#3021

Open
ruanjf wants to merge 1 commit into
multica-ai:mainfrom
ruanjf:agent/agent/fd194f8d
Open

feat(storage): add Aliyun OSS backend with OSS_PRESIGN_DISABLED support#3021
ruanjf wants to merge 1 commit into
multica-ai:mainfrom
ruanjf:agent/agent/fd194f8d

Conversation

@ruanjf
Copy link
Copy Markdown

@ruanjf ruanjf commented May 21, 2026

  • Add server/internal/storage/oss.go: full OSS storage implementation using the Aliyun alibabacloud-oss-go-sdk-v2 SDK
  • OSS_PRESIGN_DISABLED env var: when set to "true" or "1", PresignGetURL returns empty string instead of generating a signed URL
  • Support AK+SK and ECS RAM role auth, CDN URL Auth (Type A), custom endpoints
  • Wire OSSStorage into router as secondary option (S3 > OSS > local)
  • Add OSS env vars to docker-compose.selfhost.yml including OSS_PRESIGN_DISABLED

What does this PR do?

Related Issue

Closes #

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Refactor / code improvement (no behavior change)
  • Documentation update
  • Tests (adding or improving test coverage)
  • CI / infrastructure

Changes Made

How to Test

Checklist

  • I have included a thinking path that traces from project context to this change
  • I have run tests locally and they pass
  • I have added or updated tests where applicable
  • If this change affects the UI, I have included before/after screenshots
  • I have updated relevant documentation to reflect my changes
  • If I added a new runtime / coding tool / UI tab, I synced the change to landing copy (apps/web/features/landing/i18n/) and relevant docs (apps/docs/content/docs/)
  • If this PR touches Chinese product copy, I checked it against apps/docs/content/docs/developers/conventions.zh.mdx (terminology, mixed-rule for task / issue / skill)
  • I have considered and documented any risks above
  • I will address all reviewer comments before requesting merge

AI Disclosure

AI tool used:

Prompt / approach:

Screenshots (optional)

- Add server/internal/storage/oss.go: full OSS storage implementation
  using the Aliyun alibabacloud-oss-go-sdk-v2 SDK
- OSS_PRESIGN_DISABLED env var: when set to "true" or "1", PresignGetURL
  returns empty string instead of generating a signed URL
- Support AK+SK and ECS RAM role auth, CDN URL Auth (Type A), custom endpoints
- Wire OSSStorage into router as secondary option (S3 > OSS > local)
- Add OSS env vars to docker-compose.selfhost.yml including OSS_PRESIGN_DISABLED

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 21, 2026

@ruanjiefeng is attempting to deploy a commit to the IndexLabs Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants