mirror of
https://github.com/hanzoai/forge.git
synced 2026-10-30 15:00:39 +00:00
Replace the S3-client storage driver's dependency github.com/minio/minio-go/v7 with our native github.com/hanzoai/storage-go (v1.0.0, the S3 client cloud already uses), and rename the whole storage surface from "minio" to "s3" for real -- no alias, no backwards compatibility. This SUPERSEDES hanzoai/git#3, which had made STORAGE_TYPE=s3 a mere alias that getStorage() canonicalised back to "minio". That funnel + the MinioStorageType const are deleted; S3StorageType ("s3") is now the one real type. - modules/storage/minio.go -> s3.go; import github.com/hanzoai/storage-go (aliased `s3`, since the fork still declares `package minio` internally) + .../pkg/credentials. MinioStorage->S3Storage, NewMinioStorage->NewS3Storage, minioObject/minioFileInfo/convertMinioErr/buildMinio* -> s3* . - The credential chain drops the two minio-named providers (EnvMinio, FileMinioClient) so no `minio` identifier and no MINIO_* credential env survives in our code; production always uses static creds via secretKeyRef, and the AWS-standard chain (EnvAWS -> FileAWSCredentials -> IAM) remains. - modules/setting/storage.go: delete MinioStorageType + the s3->minio canonicalisation funnel; MinioStorageConfig->S3StorageConfig, Storage.MinioConfig->S3Config, getStorageForMinio->getStorageForS3, and every MINIO_* ini key -> S3_* (S3_ENDPOINT/S3_BUCKET/S3_ACCESS_KEY_ID/...). - cmd/migrate_storage.go: --minio-* flags -> --s3-*, type option `s3`. - tests renamed + reasserted (STORAGE_TYPE=s3 now resolves to Type "s3", not "minio"); go-licenses.json regenerated (minio-go dropped, storage-go added). Zero "minio" left in our code surface (types/keys/files/imports). Only storage-go's own transitive utility deps (github.com/minio/{crc64nvme,md5-simd, minlz}) remain, which are not ours to rename. go build ./... green; go test ./modules/setting/... and ./modules/storage/... green. Co-authored-by: Hanzo Dev <[email protected]>