Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNothingToDo = errors.New("no services configured")
Functions ¶
This section is empty.
Types ¶
type AWSConfigBuilder ¶ added in v0.0.7
type AWSConfigBuilder struct {
// contains filtered or unexported fields
}
func NewAWSConfigBuilder ¶ added in v0.0.7
func NewAWSConfigBuilder(provided aws.Config) *AWSConfigBuilder
func NewDefaultAWSConfigBuilder ¶ added in v0.0.7
func NewDefaultAWSConfigBuilder(ctx context.Context) (*AWSConfigBuilder, error)
func (*AWSConfigBuilder) Credentials ¶ added in v0.0.7
func (acb *AWSConfigBuilder) Credentials() aws.CredentialsProvider
func (*AWSConfigBuilder) EventBridge ¶ added in v0.0.7
func (acb *AWSConfigBuilder) EventBridge() EventBridgeAPI
func (*AWSConfigBuilder) Region ¶ added in v0.0.7
func (acb *AWSConfigBuilder) Region() string
func (*AWSConfigBuilder) SNS ¶ added in v0.0.7
func (acb *AWSConfigBuilder) SNS() SNSAPI
func (*AWSConfigBuilder) SQS ¶ added in v0.0.7
func (acb *AWSConfigBuilder) SQS() SQSAPI
type AWSProvider ¶ added in v0.0.7
type AWSProvider interface {
SNS() SNSAPI
SQS() SQSAPI
EventBridge() EventBridgeAPI
Region() string
Credentials() aws.CredentialsProvider
}
type Config ¶
type Config struct {
AppName string `env:"APP_NAME" `
EnvironmentName string `env:"ENVIRONMENT_NAME" `
SidecarVersion string // set from main
ServerConfig httpserver.ServerConfig
WorkerConfig queueworker.WorkerConfig
ProxyConfig pgproxy.ProxyConfig
OutboxConfig pgoutbox.OutboxConfig
BridgeConfig bridge.BridgeConfig
EventBridgeConfig eventbridge.EventBridgeConfig
ServiceEndpoints []string `env:"SERVICE_ENDPOINT" default:""`
}
type EventBridgeAPI ¶ added in v0.0.7
type EventBridgeAPI interface {
PutEvents(ctx context.Context, params *eventbridge.PutEventsInput, optFns ...func(*eventbridge.Options)) (*eventbridge.PutEventsOutput, error)
}
EventBridgeAPI is an interface for the EventBridge client which satisfies the interfaces of other packages
type Publisher ¶ added in v0.0.7
type Publisher interface {
pgoutbox.Batcher
queueworker.Publisher
}
type Runtime ¶
type Runtime struct {
// contains filtered or unexported fields
}
func FromConfig ¶
func FromConfig(envConfig Config, awsConfig AWSProvider) (*Runtime, error)
func NewRuntime ¶
func NewRuntime() *Runtime
type SNSAPI ¶ added in v0.0.7
type SNSAPI interface {
PublishBatch(ctx context.Context, params *sns.PublishBatchInput, optFns ...func(*sns.Options)) (*sns.PublishBatchOutput, error)
Publish(ctx context.Context, params *sns.PublishInput, optFns ...func(*sns.Options)) (*sns.PublishOutput, error)
}
SNSAPI is an interface for the SNS client which satisfies the interfaces of other packages
type SQSAPI ¶ added in v0.0.7
type SQSAPI interface {
ReceiveMessage(ctx context.Context, input *sqs.ReceiveMessageInput, opts ...func(*sqs.Options)) (*sqs.ReceiveMessageOutput, error)
DeleteMessage(ctx context.Context, input *sqs.DeleteMessageInput, opts ...func(*sqs.Options)) (*sqs.DeleteMessageOutput, error)
}
SQSAPI is an interface for the SQS client which satisfies the interfaces of other packages
Click to show internal directories.
Click to hide internal directories.