def redshift(): from localstack.services.redshift.provider import RedshiftProvider provider = RedshiftProvider() listener = AwsApiListener("redshift", MotoFallbackDispatcher(provider)) return Service("redshift", listener=listener)
def apigateway_asf(): from localstack.services.apigateway.provider_asf import AsfApigatewayProvider provider = AsfApigatewayProvider() listener = AwsApiListener("apigateway", MotoFallbackDispatcher(provider)) return Service("apigateway", listener=listener, lifecycle_hook=provider)
def acm(): from localstack.services.acm.provider import AcmProvider from localstack.services.moto import MotoFallbackDispatcher provider = AcmProvider() return Service("acm", listener=AwsApiListener("acm", MotoFallbackDispatcher(provider)))
def s3control(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.s3control.provider import S3ControlProvider provider = S3ControlProvider() return Service("s3control", listener=AwsApiListener("s3control", MotoFallbackDispatcher(provider)))
def route53(): from localstack.services.route53.provider import Route53Provider provider = Route53Provider() return Service("route53", listener=AwsApiListener("route53", MotoFallbackDispatcher(provider)))
def awsconfig(): from localstack.services.configservice.provider import ConfigProvider from localstack.services.moto import MotoFallbackDispatcher provider = ConfigProvider() return Service("config", listener=AwsApiListener("config", MotoFallbackDispatcher(provider)))
def swf(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.swf.provider import SWFProvider provider = SWFProvider() return Service( "swf", listener=AwsApiListener("swf", MotoFallbackDispatcher(provider)), )
def route53resolver(): from localstack.services.route53.provider import Route53ResolverApi provider = Route53ResolverApi() return Service( "route53resolver", listener=AwsApiListener("route53resolver", MotoFallbackDispatcher(provider)), )
def support(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.support.provider import SupportProvider provider = SupportProvider() return Service( "support", listener=AwsApiListener("support", MotoFallbackDispatcher(provider)), )
def events(): from localstack.services.events.provider import EventsProvider from localstack.services.moto import MotoFallbackDispatcher provider = EventsProvider() return Service( "events", listener=AwsApiListener("events", MotoFallbackDispatcher(provider)), )
def iam(): from localstack.services.iam.provider import IamProvider from localstack.services.moto import MotoFallbackDispatcher provider = IamProvider() return Service( "iam", listener=AwsApiListener("iam", MotoFallbackDispatcher(provider)), )
def resource_groups(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.resourcegroups.provider import ResourceGroupsProvider provider = ResourceGroupsProvider() return Service( "resource-groups", listener=AwsApiListener("resource-groups", MotoFallbackDispatcher(provider)), )
def secretsmanager(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.secretsmanager.provider import SecretsmanagerProvider provider = SecretsmanagerProvider() return Service( "secretsmanager", listener=AwsApiListener("secretsmanager", MotoFallbackDispatcher(provider)), )
def ssm(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.ssm.provider import SsmProvider provider = SsmProvider() return Service( "ssm", listener=AwsApiListener("ssm", MotoFallbackDispatcher(provider)), )
def ec2(): from localstack.services.ec2.provider import Ec2Provider from localstack.services.moto import MotoFallbackDispatcher provider = Ec2Provider() return Service( "ec2", listener=AwsApiListener("ec2", MotoFallbackDispatcher(provider)), )
def ses(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.ses.provider import SesProvider provider = SesProvider() return Service( "ses", listener=AwsApiListener("ses", MotoFallbackDispatcher(provider)), lifecycle_hook=provider, )
def kms(): if config.KMS_PROVIDER == "local-kms": from localstack.services.kms import kms_starter return Service("kms", start=kms_starter.start_kms_local) # fall back to default provider from localstack.services.kms.provider import KmsProvider provider = KmsProvider() return Service("kms", listener=AwsApiListener("kms", MotoFallbackDispatcher(provider)))
def resourcegroupstaggingapi(): from localstack.services.moto import MotoFallbackDispatcher from localstack.services.resourcegroupstaggingapi.provider import ( ResourcegroupstaggingapiProvider, ) provider = ResourcegroupstaggingapiProvider() return Service( "resourcegroupstaggingapi", listener=AwsApiListener("resourcegroupstaggingapi", MotoFallbackDispatcher(provider)), )
def cloudwatch(): from localstack.services.cloudwatch.provider import CloudwatchProvider from localstack.services.moto import MotoFallbackDispatcher provider = CloudwatchProvider() listener = AwsApiListener("cloudwatch", MotoFallbackDispatcher(provider)) return Service( "cloudwatch", listener=listener, lifecycle_hook=provider, )
def cloudwatch(): from localstack.services.cloudwatch import cloudwatch_listener, cloudwatch_starter from localstack.services.cloudwatch.provider import CloudwatchProvider from localstack.services.moto import MotoFallbackDispatcher listener = AsfWithFallbackListener( "cloudwatch", MotoFallbackDispatcher( CloudwatchProvider()), # ASF provider that falls through to moto cloudwatch_listener. UPDATE_CLOUD_WATCH, # if both moto and ASF fail, invoke the fallback listener ) return Service( "cloudwatch", listener=listener, start=cloudwatch_starter.start_cloudwatch, )
def test_moto_fallback_dispatcher(): provider = FakeSqsProvider() dispatcher = MotoFallbackDispatcher(provider) assert "ListQueues" in dispatcher assert "CreateQueue" in dispatcher def _dispatch(action, params): context = moto.create_aws_request_context("sqs", action, params) return dispatcher[action](context, params) qname = f"queue-{short_uid()}" # when falling through the dispatcher returns an HTTP response http_response = _dispatch("CreateQueue", {"QueueName": qname}) assert http_response.status_code == 200 # this returns an response = _dispatch("ListQueues", None) assert len(provider.calls) == 1 assert len([url for url in response["QueueUrls"] if qname in url])
def __init__(self): self.provider = StsProvider() super().__init__("sts", MotoFallbackDispatcher(self.provider))
def __init__(self): self.provider = LogsProvider() super().__init__("logs", MotoFallbackDispatcher(self.provider))