From 835c1c581fa234355deb83a5d8ae587a6b22580d Mon Sep 17 00:00:00 2001 From: Milos Gajdos Date: Sat, 18 Apr 2026 17:36:52 -0700 Subject: [PATCH] feat(s3): add express zone one support to S3 driver Signed-off-by: Milos Gajdos --- registry/storage/driver/s3-aws/s3.go | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/registry/storage/driver/s3-aws/s3.go b/registry/storage/driver/s3-aws/s3.go index b8f5d4582..215ca0b97 100644 --- a/registry/storage/driver/s3-aws/s3.go +++ b/registry/storage/driver/s3-aws/s3.go @@ -82,6 +82,7 @@ var s3StorageClasses = []string{ s3.StorageClassIntelligentTiering, s3.StorageClassOutposts, s3.StorageClassGlacierIr, + s3.StorageClassExpressOnezone, } // validRegions maps known s3 region identifiers to region descriptors @@ -288,14 +289,7 @@ func FromParameters(ctx context.Context, parameters map[string]any) (*Driver, er } // All valid storage class parameters are UPPERCASE, so be a bit more flexible here storageClassString = strings.ToUpper(storageClassString) - if storageClassString != noStorageClass && - storageClassString != s3.StorageClassStandard && - storageClassString != s3.StorageClassReducedRedundancy && - storageClassString != s3.StorageClassStandardIa && - storageClassString != s3.StorageClassOnezoneIa && - storageClassString != s3.StorageClassIntelligentTiering && - storageClassString != s3.StorageClassOutposts && - storageClassString != s3.StorageClassGlacierIr { + if !slices.Contains(s3StorageClasses, storageClassString) { return nil, fmt.Errorf( "the storageclass parameter must be one of %v, %v invalid", s3StorageClasses,