awsinit

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 10, 2026 License: AGPL-3.0 Imports: 18 Imported by: 0

Documentation

Overview

Package awsinit provides standardized AWS service initialization for Lambda functions.

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrLoggerRequired indicates that a logger parameter was nil or not provided
	ErrLoggerRequired = errors.LoggerRequired()
)

Error constants for AWS initialization failures

Functions

This section is empty.

Types

type AWSServices

type AWSServices struct {
	Config         aws.Config
	S3             *s3.Client
	SQS            *sqs.Client
	CloudWatch     *cloudwatch.Client
	SecretsManager *secretsmanager.Client
	Comprehend     *comprehend.Client
	MediaConvert   *mediaconvert.Client
	SNS            *sns.Client
	Lambda         *awslambda.Client
	Logger         *zap.Logger
}

AWSServices contains initialized AWS service clients

func InitializeServices

func InitializeServices(ctx context.Context, serviceConfig ServiceConfig, logger *zap.Logger) (*AWSServices, error)

InitializeServices creates AWS service clients based on configuration

func InitializeWithConfig

func InitializeWithConfig(awsConfig aws.Config, serviceConfig ServiceConfig, logger *zap.Logger) *AWSServices

InitializeWithConfig creates services using an existing AWS config

func MustInitializeServices

func MustInitializeServices(ctx context.Context, serviceConfig ServiceConfig, logger *zap.Logger) *AWSServices

MustInitializeServices is like InitializeServices but panics on error

type ServiceConfig

type ServiceConfig struct {
	// Service flags - only initialize what's needed
	RequiresDynamoDB       bool
	RequiresS3             bool
	RequiresSQS            bool
	RequiresCloudWatch     bool
	RequiresSecretsManager bool
	RequiresComprehend     bool
	RequiresMediaConvert   bool
	RequiresSNS            bool
	RequiresLambda         bool

	// Configuration
	Region           string
	ServiceName      string
	RequestTimeout   time.Duration
	RetryMaxAttempts int
}

ServiceConfig defines which AWS services to initialize

func AIServiceConfig

func AIServiceConfig() ServiceConfig

AIServiceConfig returns config for AI processing Lambda functions

func APIServiceConfig

func APIServiceConfig() ServiceConfig

APIServiceConfig returns config for API Lambda functions

func BasicServiceConfig

func BasicServiceConfig() ServiceConfig

BasicServiceConfig returns a minimal config for simple Lambda functions

func FederationServiceConfig

func FederationServiceConfig() ServiceConfig

FederationServiceConfig returns config for federation Lambda functions

func MediaServiceConfig

func MediaServiceConfig() ServiceConfig

MediaServiceConfig returns config for media processing Lambda functions

func ProcessorServiceConfig

func ProcessorServiceConfig() ServiceConfig

ProcessorServiceConfig returns config for processor Lambda functions

Jump to

Keyboard shortcuts

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