aws

package
v1.6.2 Latest Latest
Warning

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

Go to latest
Published: May 14, 2026 License: MIT Imports: 19 Imported by: 0

Documentation

Overview

Package aws assembles CloudEmu's AWS-compatible HTTP server.

New takes a Drivers bundle and returns a *server.Server preloaded with the handler for each non-nil driver. Consumers that want a single service can skip this package and register the handler directly on their own server.Server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(d Drivers) *server.Server

New returns a server that speaks the AWS SDK wire protocols for every non-nil driver in d. Handlers are registered most-specific-first so the dispatch is unambiguous:

  • CloudWatch matches on Smithy-Protocol: rpc-v2-cbor header.
  • DynamoDB matches on X-Amz-Target header (JSON-RPC).
  • RDS matches form-encoded POSTs whose Action is one of the known RDS operations. It must register before EC2 because both speak the AWS query protocol on the same content type.
  • EC2 matches on Action= (form-encoded POST or query string). The EC2 handler also serves VPC and Auto Scaling ops since real AWS uses the same query-protocol endpoint for all of them.
  • Lambda matches on the /2015-03-31/functions path prefix and must register before S3 so its REST URLs aren't swallowed by the catch-all.
  • S3 is the REST fallback.

keeps the caller API ergonomic (awsserver.New(Drivers{...})).

Types

type Drivers added in v1.5.1

Drivers bundles the driver interfaces the AWS server can expose. Leave a field nil to omit that service; the server returns 501 Not Implemented for any request that no registered handler matches.

Directories

Path Synopsis
Package cloudwatch implements AWS CloudWatch's Smithy RPC-v2-CBOR protocol as a server.Handler.
Package cloudwatch implements AWS CloudWatch's Smithy RPC-v2-CBOR protocol as a server.Handler.
Package dynamodb implements the DynamoDB JSON-RPC protocol as a server.Handler.
Package dynamodb implements the DynamoDB JSON-RPC protocol as a server.Handler.
Package ec2 implements the AWS EC2 query-protocol as a server.Handler.
Package ec2 implements the AWS EC2 query-protocol as a server.Handler.
Package eks implements the AWS EKS REST/JSON control-plane API as a server.Handler.
Package eks implements the AWS EKS REST/JSON control-plane API as a server.Handler.
Package lambda implements the AWS Lambda REST+JSON control-plane protocol as a server.Handler.
Package lambda implements the AWS Lambda REST+JSON control-plane protocol as a server.Handler.
Package rds implements the AWS RDS query-protocol as a server.Handler.
Package rds implements the AWS RDS query-protocol as a server.Handler.
Package redshift implements the AWS Redshift query-protocol as a server.Handler.
Package redshift implements the AWS Redshift query-protocol as a server.Handler.
Package s3 implements the S3 REST+XML protocol as a server.Handler.
Package s3 implements the S3 REST+XML protocol as a server.Handler.
Package sqs implements the AWS SQS JSON-RPC protocol as a server.Handler.
Package sqs implements the AWS SQS JSON-RPC protocol as a server.Handler.

Jump to

Keyboard shortcuts

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