Documentation
¶
Overview ¶
Package kiri provides a public API for running an in-process AWS service emulator.
Usage:
srv := kiri.NewServer()
defer srv.Close()
client := s3.NewFromConfig(cfg, func(o *s3.Options) {
o.BaseEndpoint = aws.String(srv.URL)
})
Package kiri provides a lightweight AWS service emulator for CI/CD environments.
Index ¶
Constants ¶
View Source
const Version = "0.26.0" // x-release-please-version
Version is the current version of kiri. release-please keeps this in sync with the released tag; do not edit it by hand.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Server ¶
type Server struct {
// URL is the base URL of the server in the form "http://host:port".
URL string
// contains filtered or unexported fields
}
Server is an in-process AWS service emulator. It wraps httptest.Server to provide a familiar API for Go testing.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package cli provides the kiri CLI for managing AWS resources on a kiri server.
|
Package cli provides the kiri CLI for managing AWS resources on a kiri server. |
|
cmd
|
|
|
kiri
command
Package main is the entry point for the kiri CLI.
|
Package main is the entry point for the kiri CLI. |
|
readme-gen
command
Command readme-gen regenerates the README "Supported Services" section from each registered service's Meta().
|
Command readme-gen regenerates the README "Supported Services" section from each registered service's Meta(). |
|
internal
|
|
|
billing
Package billing implements a deterministic cost ledger and pricing model that drive kiri's billing and time-travel simulations.
|
Package billing implements a deterministic cost ledger and pricing model that drive kiri's billing and time-travel simulations. |
|
catalog
Package catalog renders the README "Supported Services" section from the registered services.
|
Package catalog renders the README "Supported Services" section from the registered services. |
|
clock
Package clock provides a process-global virtual clock whose offset can be advanced at runtime to drive billing and time-travel simulations.
|
Package clock provides a process-global virtual clock whose offset can be advanced at runtime to drive billing and time-travel simulations. |
|
initdir
Package initdir executes shell scripts from a directory after kiri starts.
|
Package initdir executes shell scripts from a directory after kiri starts. |
|
registry
Package registry blank-imports every kiri service so that importing it registers the full service catalog via each service's init().
|
Package registry blank-imports every kiri service so that importing it registers the full service catalog via each service's init(). |
|
server
Package server provides the HTTP server for kiri.
|
Package server provides the HTTP server for kiri. |
|
service
Package service provides interfaces and utilities for AWS service implementations.
|
Package service provides interfaces and utilities for AWS service implementations. |
|
service/acm
Package acm provides ACM service emulation for kiri.
|
Package acm provides ACM service emulation for kiri. |
|
service/amplify
Package amplify implements the AWS Amplify service handlers.
|
Package amplify implements the AWS Amplify service handlers. |
|
service/apigateway
Package apigateway provides API Gateway service emulation for kiri.
|
Package apigateway provides API Gateway service emulation for kiri. |
|
service/apigatewayv2
Package apigatewayv2 provides API Gateway v2 (HTTP API) service emulation for kiri.
|
Package apigatewayv2 provides API Gateway v2 (HTTP API) service emulation for kiri. |
|
service/appmesh
Package appmesh provides the AWS App Mesh service implementation.
|
Package appmesh provides the AWS App Mesh service implementation. |
|
service/apprunner
Package apprunner emulates the AWS apprunner API surface.
|
Package apprunner emulates the AWS apprunner API surface. |
|
service/appsync
Package appsync provides AWS AppSync service emulation for kiri.
|
Package appsync provides AWS AppSync service emulation for kiri. |
|
service/athena
Package athena provides Athena service emulation for kiri.
|
Package athena provides Athena service emulation for kiri. |
|
service/autoscaling
Package autoscaling emulates the AWS Auto Scaling API surface.
|
Package autoscaling emulates the AWS Auto Scaling API surface. |
|
service/backup
Package backup provides an AWS Backup service emulator.
|
Package backup provides an AWS Backup service emulator. |
|
service/batch
Package batch provides AWS Batch service emulation for kiri.
|
Package batch provides AWS Batch service emulation for kiri. |
|
service/bedrock
Package bedrock emulates the AWS Bedrock API surface.
|
Package bedrock emulates the AWS Bedrock API surface. |
|
service/budgets
Package budgets emulates the AWS budgets API surface.
|
Package budgets emulates the AWS budgets API surface. |
|
service/ce
Package ce provides AWS Cost Explorer service emulation.
|
Package ce provides AWS Cost Explorer service emulation. |
|
service/cloudcontrol
Package cloudcontrol provides AWS Cloud Control API emulation.
|
Package cloudcontrol provides AWS Cloud Control API emulation. |
|
service/cloudformation
Package cloudformation provides CloudFormation service emulation for kiri.
|
Package cloudformation provides CloudFormation service emulation for kiri. |
|
service/cloudfront
Package cloudfront provides CloudFront service emulation for kiri.
|
Package cloudfront provides CloudFront service emulation for kiri. |
|
service/cloudfront/cache
Package cache implements the cache rule evaluation CloudFront performs at the edge, per RFC 7234 + the CloudFront-specific extensions documented at:
|
Package cache implements the cache rule evaluation CloudFront performs at the edge, per RFC 7234 + the CloudFront-specific extensions documented at: |
|
service/cloudtrail
Package cloudtrail provides a mock implementation of AWS CloudTrail.
|
Package cloudtrail provides a mock implementation of AWS CloudTrail. |
|
service/cloudwatch
Package cloudwatch provides CloudWatch metrics service emulation for kiri.
|
Package cloudwatch provides CloudWatch metrics service emulation for kiri. |
|
service/cloudwatchlogs
Package cloudwatchlogs provides CloudWatch Logs service emulation for kiri.
|
Package cloudwatchlogs provides CloudWatch Logs service emulation for kiri. |
|
service/codeartifact
Package codeartifact emulates the AWS codeartifact API surface.
|
Package codeartifact emulates the AWS codeartifact API surface. |
|
service/codebuild
Package codebuild emulates the AWS codebuild API surface.
|
Package codebuild emulates the AWS codebuild API surface. |
|
service/codecommit
Package codecommit emulates the AWS codecommit API surface.
|
Package codecommit emulates the AWS codecommit API surface. |
|
service/codeconnections
Package codeconnections provides AWS CodeConnections service emulation.
|
Package codeconnections provides AWS CodeConnections service emulation. |
|
service/codeguruprofiler
Package codeguruprofiler implements the AWS CodeGuru Profiler service.
|
Package codeguruprofiler implements the AWS CodeGuru Profiler service. |
|
service/codegurureviewer
Package codegurureviewer implements the AWS CodeGuru Reviewer service.
|
Package codegurureviewer implements the AWS CodeGuru Reviewer service. |
|
service/codepipeline
Package codepipeline emulates the AWS codepipeline API surface.
|
Package codepipeline emulates the AWS codepipeline API surface. |
|
service/cognito
Package cognito provides AWS Cognito Identity Provider service emulation.
|
Package cognito provides AWS Cognito Identity Provider service emulation. |
|
service/comprehend
Package comprehend provides an in-memory implementation of AWS Comprehend.
|
Package comprehend provides an in-memory implementation of AWS Comprehend. |
|
service/configservice
Package configservice provides a mock implementation of AWS Config.
|
Package configservice provides a mock implementation of AWS Config. |
|
service/dataexchange
Package dataexchange provides an AWS Data Exchange service emulator.
|
Package dataexchange provides an AWS Data Exchange service emulator. |
|
service/datasync
Package datasync emulates the AWS datasync API surface.
|
Package datasync emulates the AWS datasync API surface. |
|
service/dlm
Package dlm provides Data Lifecycle Manager service emulation for kiri.
|
Package dlm provides Data Lifecycle Manager service emulation for kiri. |
|
service/documentdb
Package documentdb implements the DocumentDB service handlers.
|
Package documentdb implements the DocumentDB service handlers. |
|
service/ds
Package ds emulates the AWS Directory Service API surface.
|
Package ds emulates the AWS Directory Service API surface. |
|
service/dynamodb
Package dynamodb provides DynamoDB service emulation for kiri.
|
Package dynamodb provides DynamoDB service emulation for kiri. |
|
service/dynamodbstreams
Package dynamodbstreams provides a mock implementation of AWS DynamoDB Streams.
|
Package dynamodbstreams provides a mock implementation of AWS DynamoDB Streams. |
|
service/ebs
Package ebs provides AWS EBS direct API service emulation.
|
Package ebs provides AWS EBS direct API service emulation. |
|
service/ec2
Package ec2 provides EC2 service emulation for kiri.
|
Package ec2 provides EC2 service emulation for kiri. |
|
service/ecr
Package ecr provides a mock implementation of AWS Elastic Container Registry.
|
Package ecr provides a mock implementation of AWS Elastic Container Registry. |
|
service/ecs
Package ecs implements the Amazon ECS service emulator.
|
Package ecs implements the Amazon ECS service emulator. |
|
service/efs
Package efs emulates the AWS efs API surface.
|
Package efs emulates the AWS efs API surface. |
|
service/eks
Package eks provides an EKS service emulator.
|
Package eks provides an EKS service emulator. |
|
service/elasticache
Package elasticache implements the ElastiCache service handlers.
|
Package elasticache implements the ElastiCache service handlers. |
|
service/elasticbeanstalk
Package elasticbeanstalk provides AWS Elastic Beanstalk service emulation.
|
Package elasticbeanstalk provides AWS Elastic Beanstalk service emulation. |
|
service/elbv2
Package elbv2 provides ELB v2 service emulation for kiri.
|
Package elbv2 provides ELB v2 service emulation for kiri. |
|
service/emr
Package emr emulates the AWS emr API surface.
|
Package emr emulates the AWS emr API surface. |
|
service/emrserverless
Package emrserverless provides the EMR Serverless service implementation.
|
Package emrserverless provides the EMR Serverless service implementation. |
|
service/entityresolution
Package entityresolution provides an AWS Entity Resolution service emulator.
|
Package entityresolution provides an AWS Entity Resolution service emulator. |
|
service/eventbridge
Package eventbridge provides AWS EventBridge service emulation.
|
Package eventbridge provides AWS EventBridge service emulation. |
|
service/execapi
Package execapi provides the shared execute-api data-plane engine used by the API Gateway v1 (REST) and v2 (HTTP) services: it builds the Lambda proxy-integration event, invokes the function via kiri's own Lambda invoke endpoint (delegating execution to the function's InvokeEndpoint), unwraps the proxy response envelope, and forwards HTTP_PROXY integrations.
|
Package execapi provides the shared execute-api data-plane engine used by the API Gateway v1 (REST) and v2 (HTTP) services: it builds the Lambda proxy-integration event, invokes the function via kiri's own Lambda invoke endpoint (delegating execution to the function's InvokeEndpoint), unwraps the proxy response envelope, and forwards HTTP_PROXY integrations. |
|
service/finspace
Package finspace provides an in-memory implementation of AWS FinSpace.
|
Package finspace provides an in-memory implementation of AWS FinSpace. |
|
service/firehose
Package firehose provides a mock implementation of Amazon Data Firehose.
|
Package firehose provides a mock implementation of Amazon Data Firehose. |
|
service/forecast
Package forecast provides Amazon Forecast service emulation.
|
Package forecast provides Amazon Forecast service emulation. |
|
service/fsx
Package fsx emulates the AWS fsx API surface.
|
Package fsx emulates the AWS fsx API surface. |
|
service/gamelift
Package gamelift provides a mock implementation of AWS GameLift.
|
Package gamelift provides a mock implementation of AWS GameLift. |
|
service/glacier
Package glacier provides AWS Glacier service emulation.
|
Package glacier provides AWS Glacier service emulation. |
|
service/globalaccelerator
Package globalaccelerator provides AWS Global Accelerator service emulation.
|
Package globalaccelerator provides AWS Global Accelerator service emulation. |
|
service/glue
Package glue provides AWS Glue service emulation for kiri.
|
Package glue provides AWS Glue service emulation for kiri. |
|
service/guardduty
Package guardduty emulates the AWS guardduty API surface.
|
Package guardduty emulates the AWS guardduty API surface. |
|
service/health
Package health emulates the AWS Health API surface.
|
Package health emulates the AWS Health API surface. |
|
service/iam
Package iam provides IAM service emulation for kiri.
|
Package iam provides IAM service emulation for kiri. |
|
service/inspector2
Package inspector2 emulates the AWS inspector2 API surface.
|
Package inspector2 emulates the AWS inspector2 API surface. |
|
service/iot
Package iot emulates the AWS iot API surface.
|
Package iot emulates the AWS iot API surface. |
|
service/iotdata
Package iotdata emulates the AWS iotdata API surface.
|
Package iotdata emulates the AWS iotdata API surface. |
|
service/kafka
Package kafka provides an MSK (Managed Streaming for Apache Kafka) service emulator.
|
Package kafka provides an MSK (Managed Streaming for Apache Kafka) service emulator. |
|
service/kendra
Package kendra emulates the AWS kendra API surface.
|
Package kendra emulates the AWS kendra API surface. |
|
service/keyspaces
Package keyspaces emulates the AWS keyspaces API surface.
|
Package keyspaces emulates the AWS keyspaces API surface. |
|
service/kinesis
Package kinesis provides a mock implementation of AWS Kinesis Data Streams.
|
Package kinesis provides a mock implementation of AWS Kinesis Data Streams. |
|
service/kinesisvideo
Package kinesisvideo emulates the AWS kinesisvideo API surface.
|
Package kinesisvideo emulates the AWS kinesisvideo API surface. |
|
service/kms
Package kms provides AWS KMS service emulation.
|
Package kms provides AWS KMS service emulation. |
|
service/lambda
Package lambda provides Lambda service emulation for kiri.
|
Package lambda provides Lambda service emulation for kiri. |
|
service/lightsail
Package lightsail emulates the AWS lightsail API surface.
|
Package lightsail emulates the AWS lightsail API surface. |
|
service/location
Package location provides a mock implementation of Amazon Location Service.
|
Package location provides a mock implementation of Amazon Location Service. |
|
service/macie2
Package macie2 provides a mock implementation of Amazon Macie2.
|
Package macie2 provides a mock implementation of Amazon Macie2. |
|
service/memorydb
Package memorydb provides AWS MemoryDB service emulation.
|
Package memorydb provides AWS MemoryDB service emulation. |
|
service/mq
Package mq provides Amazon MQ service emulation for kiri.
|
Package mq provides Amazon MQ service emulation for kiri. |
|
service/neptune
Package neptune implements the Neptune service handlers.
|
Package neptune implements the Neptune service handlers. |
|
service/opensearch
Package opensearch emulates the AWS OpenSearch API surface.
|
Package opensearch emulates the AWS OpenSearch API surface. |
|
service/organizations
Package organizations provides AWS Organizations service emulation.
|
Package organizations provides AWS Organizations service emulation. |
|
service/pinpointsmsvoicev2
Package pinpointsmsvoicev2 emulates the AWS Pinpoint SMS Voice v2 API surface.
|
Package pinpointsmsvoicev2 emulates the AWS Pinpoint SMS Voice v2 API surface. |
|
service/pipes
Package pipes implements the AWS EventBridge Pipes service emulation.
|
Package pipes implements the AWS EventBridge Pipes service emulation. |
|
service/polly
Package polly emulates the AWS polly API surface.
|
Package polly emulates the AWS polly API surface. |
|
service/qldb
Package qldb emulates the AWS QLDB (Quantum Ledger Database) API surface.
|
Package qldb emulates the AWS QLDB (Quantum Ledger Database) API surface. |
|
service/quicksight
Package quicksight emulates the AWS quicksight API surface.
|
Package quicksight emulates the AWS quicksight API surface. |
|
service/ram
Package ram emulates the AWS ram API surface.
|
Package ram emulates the AWS ram API surface. |
|
service/rds
Package rds implements the RDS service handlers.
|
Package rds implements the RDS service handlers. |
|
service/redshift
Package redshift implements the Redshift service handlers.
|
Package redshift implements the Redshift service handlers. |
|
service/rekognition
Package rekognition provides AWS Rekognition service emulation.
|
Package rekognition provides AWS Rekognition service emulation. |
|
service/resiliencehub
Package resiliencehub provides an in-memory implementation of AWS Resilience Hub.
|
Package resiliencehub provides an in-memory implementation of AWS Resilience Hub. |
|
service/route53
Package route53 provides an implementation of AWS Route 53 service.
|
Package route53 provides an implementation of AWS Route 53 service. |
|
service/route53resolver
Package route53resolver provides Route 53 Resolver service emulation for kiri.
|
Package route53resolver provides Route 53 Resolver service emulation for kiri. |
|
service/s3
Package s3 provides S3 service emulation for kiri.
|
Package s3 provides S3 service emulation for kiri. |
|
service/s3control
Package s3control implements the AWS S3 Control service.
|
Package s3control implements the AWS S3 Control service. |
|
service/s3tables
Package s3tables provides S3 Tables service emulation for kiri.
|
Package s3tables provides S3 Tables service emulation for kiri. |
|
service/sagemaker
Package sagemaker provides SageMaker service emulation for kiri.
|
Package sagemaker provides SageMaker service emulation for kiri. |
|
service/scheduler
Package scheduler provides EventBridge Scheduler service emulation for kiri.
|
Package scheduler provides EventBridge Scheduler service emulation for kiri. |
|
service/secretsmanager
Package secretsmanager provides Secrets Manager service emulation for kiri.
|
Package secretsmanager provides Secrets Manager service emulation for kiri. |
|
service/securitylake
Package securitylake provides an in-memory implementation of AWS Security Lake.
|
Package securitylake provides an in-memory implementation of AWS Security Lake. |
|
service/serverlessrepo
Package serverlessrepo emulates the AWS serverlessrepo API surface.
|
Package serverlessrepo emulates the AWS serverlessrepo API surface. |
|
service/servicequotas
Package servicequotas provides AWS Service Quotas service emulation.
|
Package servicequotas provides AWS Service Quotas service emulation. |
|
service/ses
Package ses provides SES v1 service emulation for kiri.
|
Package ses provides SES v1 service emulation for kiri. |
|
service/sesv2
Package sesv2 provides SES v2 service emulation for kiri.
|
Package sesv2 provides SES v2 service emulation for kiri. |
|
service/sfn
Package sfn provides a mock implementation of AWS Step Functions.
|
Package sfn provides a mock implementation of AWS Step Functions. |
|
service/signer
Package signer emulates the AWS signer API surface.
|
Package signer emulates the AWS signer API surface. |
|
service/sns
Package sns provides SNS service emulation for kiri.
|
Package sns provides SNS service emulation for kiri. |
|
service/sqs
Package sqs provides SQS service emulation for kiri.
|
Package sqs provides SQS service emulation for kiri. |
|
service/ssm
Package ssm provides SSM Parameter Store service emulation for kiri.
|
Package ssm provides SSM Parameter Store service emulation for kiri. |
|
service/storagegateway
Package storagegateway emulates the AWS storagegateway API surface.
|
Package storagegateway emulates the AWS storagegateway API surface. |
|
service/sts
Package sts implements the AWS Security Token Service handlers.
|
Package sts implements the AWS Security Token Service handlers. |
|
service/synthetics
Package synthetics emulates the AWS synthetics API surface.
|
Package synthetics emulates the AWS synthetics API surface. |
|
service/textract
Package textract emulates the AWS textract API surface.
|
Package textract emulates the AWS textract API surface. |
|
service/timestream
Package timestream emulates the AWS timestream API surface.
|
Package timestream emulates the AWS timestream API surface. |
|
service/transcribe
Package transcribe emulates the AWS transcribe API surface.
|
Package transcribe emulates the AWS transcribe API surface. |
|
service/translate
Package translate emulates the AWS translate API surface.
|
Package translate emulates the AWS translate API surface. |
|
service/wafv2
Package wafv2 emulates the AWS WAFv2 API surface.
|
Package wafv2 emulates the AWS WAFv2 API surface. |
|
service/xray
Package xray provides AWS X-Ray service emulation for kiri.
|
Package xray provides AWS X-Ray service emulation for kiri. |
|
storage
Package storage provides common storage utilities.
|
Package storage provides common storage utilities. |
|
streams
Package streams provides a shared event store for DynamoDB Streams.
|
Package streams provides a shared event store for DynamoDB Streams. |
Click to show internal directories.
Click to hide internal directories.