Skip to content

v1.0.0 – Initial S3 storage release

Choose a tag to compare

@m9agrest m9agrest released this 04 Dec 20:09
· 2 commits to main since this release
55f8d8f

Overview

First public release of storage-s3 – a lightweight S3 storage abstraction for Spring Boot based on AWS SDK v2.

Provides a simple StorageService interface and auto-configuration for any S3-compatible object storage (AWS S3, MinIO, custom S3 endpoints, etc.).

Features

  • StorageService interface with basic operations:
    • save(key, InputStream, length, contentType)
    • update(key, InputStream, length, contentType)
    • load(key)
    • delete(key)
  • S3StorageServiceImpl – implementation using AWS SDK v2 (S3)
  • S3StorageProperties – configuration via storage.s3.* properties:
    • enabled
    • bucket
    • endpoint
    • region
    • access-key
    • secret-key
    • prefix
  • Spring Boot auto-configuration:
    • creates S3Client
    • exposes a StorageService bean
  • Works with any S3-compatible provider (AWS S3, MinIO, etc.)

Configuration (quick example)

storage:
  s3:
    enabled: true
    bucket: your-bucket-name
    endpoint: https://s3.example.com
    region: us-east-1
    access-key: YOUR_ACCESS_KEY
    secret-key: YOUR_SECRET_KEY
    prefix: ""

Notes

  • License: MIT
  • Requires: Java 17+ (recommended 21), Spring Boot 3.x