s3api

package
v1.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2026 License: Apache-2.0 Imports: 20 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdminOpt

type AdminOpt func(s *S3AdminServer)

func WithAdminCORSAllowOrigin added in v1.1.0

func WithAdminCORSAllowOrigin(origin string) AdminOpt

WithAdminCORSAllowOrigin sets the default CORS Access-Control-Allow-Origin value for the standalone admin server.

func WithAdminConcurrencyLimiter added in v1.3.0

func WithAdminConcurrencyLimiter(maxConnections, maxRequests int) AdminOpt

WithAdminConcurrencyLimiter sets the admin standalone server's maximum connection limit and the hard limit for in-flight requests.

func WithAdminDebug added in v1.0.17

func WithAdminDebug() AdminOpt

WithAdminDebug enables the debug logging

func WithAdminQuiet added in v1.0.17

func WithAdminQuiet() AdminOpt

WithQuiet silences default logging output

func WithAdminSrvTLS

func WithAdminSrvTLS(cs *utils.CertStorage) AdminOpt

type Option

type Option func(*S3ApiServer)

Option sets various options for New()

func WithAdminServer

func WithAdminServer() Option

WithAdminServer runs admin endpoints with the gateway in the same network

func WithCORSAllowOrigin added in v1.1.0

func WithCORSAllowOrigin(origin string) Option

WithCORSAllowOrigin sets the default CORS Access-Control-Allow-Origin value. This is applied when no bucket CORS configuration exists, and for admin APIs.

func WithConcurrencyLimiter added in v1.3.0

func WithConcurrencyLimiter(maxConnections, maxRequests int) Option

WithConcurrencyLimiter sets the server's maximum connection limit and the hard limit for in-flight requests.

func WithDisableACL added in v1.3.0

func WithDisableACL() Option

WithDisableACL disables the s3 api server ACLs, by ignoring all bucket/object ACL headers

func WithHealth

func WithHealth(health string) Option

WithHealth sets up a GET health endpoint

func WithHostStyle added in v1.0.14

func WithHostStyle(virtualDomain string) Option

WithHostStyle enabled host-style bucket addressing on the server

func WithKeepAlive added in v1.0.19

func WithKeepAlive() Option

WithKeepAlive enables the server keep alive

func WithMpMaxParts added in v1.4.0

func WithMpMaxParts(n int) Option

WithMpMaxParts sets the maximum number of parts allowed in a multipart upload.

func WithQuiet

func WithQuiet() Option

WithQuiet silences default logging output

func WithReadOnly

func WithReadOnly() Option

func WithTLS

func WithTLS(cs *utils.CertStorage) Option

WithTLS sets TLS Credentials

func WithWebUI added in v1.4.0

func WithWebUI(prefix string, cfg *webui.ServerConfig) Option

WithWebUI mounts the WebUI on the S3 server's Fiber app at the given path prefix, before S3 routes are registered. The prefix must start with "/" and must not be empty or just "/".

type S3AdminRouter

type S3AdminRouter struct {
	// contains filtered or unexported fields
}

func (*S3AdminRouter) Init

func (ar *S3AdminRouter) Init(app *fiber.App, be backend.Backend, iam auth.IAMService, logger s3log.AuditLogger, root middlewares.RootUserConfig, region string, debug bool, corsAllowOrigin string)

type S3AdminServer

type S3AdminServer struct {
	CertStorage *utils.CertStorage
	// contains filtered or unexported fields
}

func (*S3AdminServer) ServeMultiPort added in v1.3.0

func (sa *S3AdminServer) ServeMultiPort(ports []string) error

ServeMultiPort creates listeners for multiple port specifications and serves on all of them simultaneously. This supports listening on multiple ports and/or addresses (e.g., [":8080", "localhost:8081"]).

func (S3AdminServer) Shutdown added in v1.0.19

func (sa S3AdminServer) Shutdown() error

ShutDown gracefully shuts down the server with a context timeout

type S3ApiRouter

type S3ApiRouter struct {
	WithAdmSrv bool

	Ctrl controllers.S3ApiController
	// contains filtered or unexported fields
}

func (*S3ApiRouter) Init

func (sa *S3ApiRouter) Init()

type S3ApiServer

type S3ApiServer struct {
	Router *S3ApiRouter

	CertStorage *utils.CertStorage
	// contains filtered or unexported fields
}

func (*S3ApiServer) ServeMultiPort added in v1.3.0

func (sa *S3ApiServer) ServeMultiPort(ports []string) error

ServeMultiPort creates listeners for multiple port specifications and serves on all of them simultaneously. This supports listening on multiple ports and/or addresses (e.g., [":7070", "localhost:8080", "0.0.0.0:9090"]).

func (*S3ApiServer) ShutDown added in v1.0.19

func (sa *S3ApiServer) ShutDown() error

ShutDown gracefully shuts down the server with a context timeout

Directories

Path Synopsis
code modified from golang std library src/internal/filepathlite/path.go to support path separator '/' for all platforms.
code modified from golang std library src/internal/filepathlite/path.go to support path separator '/' for all platforms.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL