Tech debt - Fix more URL regexes (#4380)

This commit is contained in:
Bert Blommers 2021-10-08 10:03:05 +00:00 committed by GitHub
parent 6fdb62a0a5
commit 0b9f5adec2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
39 changed files with 92 additions and 80 deletions

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from .responses import AWSCertificateManagerResponse
url_bases = ["https?://acm\.(.+)\.amazonaws\.com"]
url_bases = [r"https?://acm\.(.+)\.amazonaws\.com"]
url_paths = {"{0}/$": AWSCertificateManagerResponse.dispatch}

View File

@ -3,7 +3,7 @@ from .responses import APIGatewayResponse
response = APIGatewayResponse()
url_bases = ["https?://apigateway.(.+).amazonaws.com"]
url_bases = [r"https?://apigateway\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/restapis$": response.restapis,

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import ApplicationAutoScalingResponse
url_bases = ["https?://application-autoscaling.(.+).amazonaws.com"]
url_bases = [r"https?://application-autoscaling\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/$": ApplicationAutoScalingResponse.dispatch,

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import LambdaResponse
url_bases = ["https?://lambda.(.+).amazonaws.com(|.cn)"]
url_bases = [r"https?://lambda\.(.+)\.amazonaws\.com(|.cn)"]
response = LambdaResponse()

View File

@ -3,27 +3,33 @@ import re
backend_url_patterns = [
("acm", re.compile("https?://acm\\.(.+)\\.amazonaws\\.com")),
("apigateway", re.compile("https?://apigateway.(.+).amazonaws.com")),
("apigateway", re.compile("https?://apigateway\\.(.+)\\.amazonaws.com")),
(
"applicationautoscaling",
re.compile("https?://application-autoscaling.(.+).amazonaws.com"),
re.compile("https?://application-autoscaling\\.(.+)\\.amazonaws.com"),
),
("athena", re.compile("https?://athena\\.(.+)\\.amazonaws\\.com")),
("autoscaling", re.compile("https?://autoscaling\\.(.+)\\.amazonaws\\.com")),
("batch", re.compile("https?://batch.(.+).amazonaws.com")),
("batch", re.compile("https?://batch\\.(.+)\\.amazonaws.com")),
("cloudformation", re.compile("https?://cloudformation\\.(.+)\\.amazonaws\\.com")),
("cloudwatch", re.compile("https?://monitoring.(.+).amazonaws.com")),
("cloudwatch", re.compile("https?://monitoring\\.(.+)\\.amazonaws.com")),
("codecommit", re.compile("https?://codecommit\\.(.+)\\.amazonaws\\.com")),
("codepipeline", re.compile("https?://codepipeline\\.(.+)\\.amazonaws\\.com")),
("cognito-identity", re.compile("https?://cognito-identity.(.+).amazonaws.com")),
("cognito-idp", re.compile("https?://cognito-idp.(.+).amazonaws.com")),
(
"cognito-identity",
re.compile("https?://cognito-identity\\.(.+)\\.amazonaws.com"),
),
("cognito-idp", re.compile("https?://cognito-idp\\.(.+)\\.amazonaws.com")),
("config", re.compile("https?://config\\.(.+)\\.amazonaws\\.com")),
("datapipeline", re.compile("https?://datapipeline\\.(.+)\\.amazonaws\\.com")),
("datasync", re.compile("https?://(.*\\.)?(datasync)\\.(.+).amazonaws.com")),
("datasync", re.compile("https?://(.*\\.)?(datasync)\\.(.+)\\.amazonaws.com")),
("dms", re.compile("https?://dms\\.(.+)\\.amazonaws\\.com")),
("dynamodb", re.compile("https?://dynamodb\\.(.+)\\.amazonaws\\.com")),
("dynamodb2", re.compile("https?://dynamodb\\.(.+)\\.amazonaws\\.com")),
("dynamodbstreams", re.compile("https?://streams.dynamodb.(.+).amazonaws.com")),
(
"dynamodbstreams",
re.compile("https?://streams\\.dynamodb\\.(.+)\\.amazonaws.com"),
),
("ec2", re.compile("https?://ec2\\.(.+)\\.amazonaws\\.com(|\\.cn)")),
(
"ec2instanceconnect",
@ -32,64 +38,70 @@ backend_url_patterns = [
("ecr", re.compile("https?://ecr\\.(.+)\\.amazonaws\\.com")),
("ecr", re.compile("https?://api\\.ecr\\.(.+)\\.amazonaws\\.com")),
("ecs", re.compile("https?://ecs\\.(.+)\\.amazonaws\\.com")),
("efs", re.compile("https?://elasticfilesystem.(.+).amazonaws.com")),
("efs", re.compile("https?://elasticfilesystem.amazonaws.com")),
("eks", re.compile("https?://eks.(.+).amazonaws.com")),
("efs", re.compile("https?://elasticfilesystem\\.(.+)\\.amazonaws.com")),
("efs", re.compile("https?://elasticfilesystem\\.amazonaws.com")),
("eks", re.compile("https?://eks\\.(.+)\\.amazonaws.com")),
(
"elasticbeanstalk",
re.compile(
"https?://elasticbeanstalk.(?P<region>[a-zA-Z0-9\\-_]+).amazonaws.com"
"https?://elasticbeanstalk\\.(?P<region>[a-zA-Z0-9\\-_]+)\\.amazonaws.com"
),
),
("elastictranscoder", re.compile("https?://elastictranscoder.(.+).amazonaws.com")),
("elb", re.compile("https?://elasticloadbalancing.(.+).amazonaws.com")),
("elbv2", re.compile("https?://elasticloadbalancing.(.+).amazonaws.com")),
("emr", re.compile("https?://(.+).elasticmapreduce.amazonaws.com")),
("emr", re.compile("https?://elasticmapreduce.(.+).amazonaws.com")),
(
"elastictranscoder",
re.compile("https?://elastictranscoder\\.(.+)\\.amazonaws.com"),
),
("elb", re.compile("https?://elasticloadbalancing\\.(.+)\\.amazonaws.com")),
("elbv2", re.compile("https?://elasticloadbalancing\\.(.+)\\.amazonaws.com")),
("emr", re.compile("https?://(.+)\\.elasticmapreduce\\.amazonaws.com")),
("emr", re.compile("https?://elasticmapreduce\\.(.+)\\.amazonaws.com")),
("events", re.compile("https?://events\\.(.+)\\.amazonaws\\.com")),
("firehose", re.compile("https?://firehose\\.(.+)\\.amazonaws\\.com")),
("forecast", re.compile("https?://forecast\\.(.+)\\.amazonaws\\.com")),
("glacier", re.compile("https?://glacier.(.+).amazonaws.com")),
("glacier", re.compile("https?://glacier\\.(.+)\\.amazonaws.com")),
("glue", re.compile("https?://glue\\.(.+)\\.amazonaws\\.com")),
("iam", re.compile("https?://iam\\.(.*\\.)?amazonaws\\.com")),
("iot", re.compile("https?://iot\\.(.+)\\.amazonaws\\.com")),
("iot-data", re.compile("https?://data.iot.(.+).amazonaws.com")),
("iot-data", re.compile("https?://data\\.iot\\.(.+)\\.amazonaws.com")),
("kinesis", re.compile("https?://kinesis\\.(.+)\\.amazonaws\\.com")),
("kinesisvideo", re.compile("https?://kinesisvideo.(.+).amazonaws.com")),
("kinesisvideo", re.compile("https?://kinesisvideo\\.(.+)\\.amazonaws.com")),
(
"kinesis-video-archived-media",
re.compile("https?://.*\\.kinesisvideo.(.+).amazonaws.com"),
re.compile("https?://.*\\.kinesisvideo\\.(.+)\\.amazonaws.com"),
),
("kms", re.compile("https?://kms\\.(.+)\\.amazonaws\\.com")),
("lambda", re.compile("https?://lambda.(.+).amazonaws.com(|.cn)")),
("lambda", re.compile("https?://lambda\\.(.+)\\.amazonaws\\.com(|.cn)")),
("logs", re.compile("https?://logs\\.(.+)\\.amazonaws\\.com")),
("managedblockchain", re.compile("https?://managedblockchain.(.+).amazonaws.com")),
("mediaconnect", re.compile("https?://mediaconnect.(.+).amazonaws.com")),
("medialive", re.compile("https?://medialive.(.+).amazonaws.com")),
("mediapackage", re.compile("https?://mediapackage.(.+).amazonaws.com")),
(
"managedblockchain",
re.compile("https?://managedblockchain\\.(.+)\\.amazonaws.com"),
),
("mediaconnect", re.compile("https?://mediaconnect\\.(.+)\\.amazonaws.com")),
("medialive", re.compile("https?://medialive\\.(.+)\\.amazonaws.com")),
("mediapackage", re.compile("https?://mediapackage\\.(.+)\\.amazonaws.com")),
("mediastore", re.compile("https?://mediastore\\.(.+)\\.amazonaws\\.com")),
("mediastore-data", re.compile("https?://data.mediastore.(.+).amazonaws.com")),
("opsworks", re.compile("https?://opsworks.us-east-1.amazonaws.com")),
("mediastore-data", re.compile("https?://data.mediastore\\.(.+)\\.amazonaws.com")),
("opsworks", re.compile("https?://opsworks\\.us-east-1\\.amazonaws.com")),
("organizations", re.compile("https?://organizations\\.(.+)\\.amazonaws\\.com")),
("polly", re.compile("https?://polly.(.+).amazonaws.com")),
("ram", re.compile("https?://ram.(.+).amazonaws.com")),
("polly", re.compile("https?://polly\\.(.+)\\.amazonaws.com")),
("ram", re.compile("https?://ram\\.(.+)\\.amazonaws.com")),
("rds", re.compile("https?://rds\\.(.+)\\.amazonaws\\.com")),
("rds", re.compile("https?://rds\\.amazonaws\\.com")),
("redshift", re.compile("https?://redshift\\.(.+)\\.amazonaws\\.com")),
(
"resource-groups",
re.compile("https?://resource-groups(-fips)?.(.+).amazonaws.com"),
re.compile("https?://resource-groups(-fips)?\\.(.+)\\.amazonaws.com"),
),
("resourcegroupstaggingapi", re.compile("https?://tagging.(.+).amazonaws.com")),
("route53", re.compile("https?://route53(.*).amazonaws.com")),
("s3", re.compile("https?://s3(.*).amazonaws.com")),
("resourcegroupstaggingapi", re.compile("https?://tagging\\.(.+)\\.amazonaws.com")),
("route53", re.compile("https?://route53(.*)\\.amazonaws.com")),
("s3", re.compile("https?://s3(.*)\\.amazonaws.com")),
(
"s3",
re.compile(
"https?://(?P<bucket_name>[a-zA-Z0-9\\-_.]*)\\.?s3(.*).amazonaws.com"
"https?://(?P<bucket_name>[a-zA-Z0-9\\-_.]*)\\.?s3(.*)\\.amazonaws.com"
),
),
("sagemaker", re.compile("https?://api.sagemaker.(.+).amazonaws.com")),
("sagemaker", re.compile("https?://api.sagemaker\\.(.+)\\.amazonaws.com")),
("secretsmanager", re.compile("https?://secretsmanager\\.(.+)\\.amazonaws\\.com")),
("ses", re.compile("https?://email\\.(.+)\\.amazonaws\\.com")),
("ses", re.compile("https?://ses\\.(.+)\\.amazonaws\\.com")),
@ -97,11 +109,11 @@ backend_url_patterns = [
("sqs", re.compile("https?://(.*\\.)?(queue|sqs)\\.(.*\\.)?amazonaws\\.com")),
("ssm", re.compile("https?://ssm\\.(.+)\\.amazonaws\\.com")),
("ssm", re.compile("https?://ssm\\.(.+)\\.amazonaws\\.com\\.cn")),
("stepfunctions", re.compile("https?://states.(.+).amazonaws.com")),
("stepfunctions", re.compile("https?://states\\.(.+)\\.amazonaws.com")),
("sts", re.compile("https?://sts\\.(.*\\.)?amazonaws\\.com(|.cn)")),
("support", re.compile("https?://support\\.(.+)\\.amazonaws\\.com")),
("swf", re.compile("https?://swf\\.(.+)\\.amazonaws\\.com")),
("transcribe", re.compile("https?://transcribe\\.(.+)\\.amazonaws\\.com")),
("wafv2", re.compile("https?://wafv2\\.(.+)\\.amazonaws.com")),
("xray", re.compile("https?://xray.(.+).amazonaws.com")),
("xray", re.compile("https?://xray\\.(.+)\\.amazonaws.com")),
]

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import BatchResponse
url_bases = ["https?://batch.(.+).amazonaws.com"]
url_bases = [r"https?://batch\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/v1/createcomputeenvironment$": BatchResponse.dispatch,

View File

@ -1,5 +1,5 @@
from .responses import CloudWatchResponse
url_bases = ["https?://monitoring.(.+).amazonaws.com"]
url_bases = [r"https?://monitoring\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": CloudWatchResponse.dispatch}

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from .responses import CognitoIdentityResponse
url_bases = ["https?://cognito-identity.(.+).amazonaws.com"]
url_bases = [r"https?://cognito-identity\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": CognitoIdentityResponse.dispatch}

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import CognitoIdpResponse, CognitoIdpJsonWebKeyResponse
url_bases = ["https?://cognito-idp.(.+).amazonaws.com"]
url_bases = [r"https?://cognito-idp\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/$": CognitoIdpResponse.dispatch,

View File

@ -450,7 +450,7 @@ class BotocoreEventMockAWS(BaseMockAWS):
responses_mock.add(
CallbackResponse(
method=method,
url=re.compile(r"https?://.+.amazonaws.com/.*"),
url=re.compile(r"https?://.+\.amazonaws.com/.*"),
callback=not_implemented_callback,
stream=True,
match_querystring=False,
@ -459,7 +459,7 @@ class BotocoreEventMockAWS(BaseMockAWS):
botocore_mock.add(
CallbackResponse(
method=method,
url=re.compile(r"https?://.+.amazonaws.com/.*"),
url=re.compile(r"https?://.+\.amazonaws.com/.*"),
callback=not_implemented_callback,
stream=True,
match_querystring=False,

View File

@ -2,6 +2,6 @@ from __future__ import unicode_literals
from .responses import DataSyncResponse
url_bases = [r"https?://(.*\.)?(datasync)\.(.+).amazonaws.com"]
url_bases = [r"https?://(.*\.)?(datasync)\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": DataSyncResponse.dispatch}

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from .responses import DynamoDBStreamsHandler
url_bases = ["https?://streams.dynamodb.(.+).amazonaws.com"]
url_bases = [r"https?://streams\.dynamodb\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": DynamoDBStreamsHandler.dispatch}

View File

@ -3,8 +3,8 @@ from __future__ import unicode_literals
from .responses import EFSResponse
url_bases = [
"https?://elasticfilesystem.(.+).amazonaws.com",
"https?://elasticfilesystem.amazonaws.com",
r"https?://elasticfilesystem\.(.+)\.amazonaws.com",
r"https?://elasticfilesystem\.amazonaws.com",
]

View File

@ -3,7 +3,7 @@ from __future__ import unicode_literals
from .responses import EKSResponse
url_bases = [
"https?://eks.(.+).amazonaws.com",
r"https?://eks\.(.+)\.amazonaws.com",
]

View File

@ -3,7 +3,7 @@ from __future__ import unicode_literals
from .responses import EBResponse
url_bases = [
r"https?://elasticbeanstalk.(?P<region>[a-zA-Z0-9\-_]+).amazonaws.com",
r"https?://elasticbeanstalk\.(?P<region>[a-zA-Z0-9\-_]+)\.amazonaws.com",
]
url_paths = {

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import ElasticTranscoderResponse
url_bases = [
"https?://elastictranscoder.(.+).amazonaws.com",
r"https?://elastictranscoder\.(.+)\.amazonaws.com",
]

View File

@ -35,6 +35,6 @@ def api_version_elb_backend(*args, **kwargs):
raise Exception("Unknown ELB API version: {}".format(version))
url_bases = ["https?://elasticloadbalancing.(.+).amazonaws.com"]
url_bases = [r"https?://elasticloadbalancing\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": api_version_elb_backend}

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from ..elb.urls import api_version_elb_backend
url_bases = ["https?://elasticloadbalancing.(.+).amazonaws.com"]
url_bases = [r"https?://elasticloadbalancing\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": api_version_elb_backend}

View File

@ -2,8 +2,8 @@ from __future__ import unicode_literals
from .responses import ElasticMapReduceResponse
url_bases = [
"https?://(.+).elasticmapreduce.amazonaws.com",
"https?://elasticmapreduce.(.+).amazonaws.com",
r"https?://(.+)\.elasticmapreduce\.amazonaws.com",
r"https?://elasticmapreduce\.(.+)\.amazonaws.com",
]
url_paths = {"{0}/$": ElasticMapReduceResponse.dispatch}

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import GlacierResponse
url_bases = ["https?://glacier.(.+).amazonaws.com"]
url_bases = [r"https?://glacier\.(.+)\.amazonaws.com"]
response = GlacierResponse()

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import IoTDataPlaneResponse
url_bases = ["https?://data.iot.(.+).amazonaws.com"]
url_bases = [r"https?://data\.iot\.(.+)\.amazonaws.com"]
response = IoTDataPlaneResponse()

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import KinesisVideoResponse
url_bases = [
"https?://kinesisvideo.(.+).amazonaws.com",
r"https?://kinesisvideo\.(.+)\.amazonaws.com",
]

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import KinesisVideoArchivedMediaResponse
url_bases = [
r"https?://.*\.kinesisvideo.(.+).amazonaws.com",
r"https?://.*\.kinesisvideo\.(.+)\.amazonaws.com",
]

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import ManagedBlockchainResponse
url_bases = ["https?://managedblockchain.(.+).amazonaws.com"]
url_bases = [r"https?://managedblockchain\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/networks$": ManagedBlockchainResponse.network_response,

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import MediaConnectResponse
url_bases = [
"https?://mediaconnect.(.+).amazonaws.com",
r"https?://mediaconnect\.(.+)\.amazonaws.com",
]

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import MediaLiveResponse
url_bases = [
"https?://medialive.(.+).amazonaws.com",
r"https?://medialive\.(.+)\.amazonaws.com",
]

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import MediaPackageResponse
url_bases = [
"https?://mediapackage.(.+).amazonaws.com",
r"https?://mediapackage\.(.+)\.amazonaws.com",
]

View File

@ -3,7 +3,7 @@ from __future__ import unicode_literals
from .responses import MediaStoreDataResponse
url_bases = [
"https?://data.mediastore.(.+).amazonaws.com",
r"https?://data.mediastore\.(.+)\.amazonaws.com",
]
response = MediaStoreDataResponse()

View File

@ -3,6 +3,6 @@ from .responses import OpsWorksResponse
# AWS OpsWorks has a single endpoint: opsworks.us-east-1.amazonaws.com
# and only supports HTTPS requests.
url_bases = ["https?://opsworks.us-east-1.amazonaws.com"]
url_bases = [r"https?://opsworks\.us-east-1\.amazonaws.com"]
url_paths = {"{0}/$": OpsWorksResponse.dispatch}

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import PollyResponse
url_bases = ["https?://polly.(.+).amazonaws.com"]
url_bases = [r"https?://polly\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/v1/voices": PollyResponse.dispatch,

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import ResourceAccessManagerResponse
url_bases = ["https?://ram.(.+).amazonaws.com"]
url_bases = [r"https?://ram\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/createresourceshare$": ResourceAccessManagerResponse.dispatch,

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import ResourceGroupsResponse
url_bases = ["https?://resource-groups(-fips)?.(.+).amazonaws.com"]
url_bases = [r"https?://resource-groups(-fips)?\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/delete-group$": ResourceGroupsResponse.dispatch,

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from .responses import ResourceGroupsTaggingAPIResponse
url_bases = ["https?://tagging.(.+).amazonaws.com"]
url_bases = [r"https?://tagging\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": ResourceGroupsTaggingAPIResponse.dispatch}

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import Route53
url_bases = ["https?://route53(.*).amazonaws.com"]
url_bases = [r"https?://route53(.*)\.amazonaws.com"]
def tag_response1(*args, **kwargs):

View File

@ -3,8 +3,8 @@ from __future__ import unicode_literals
from .responses import S3ResponseInstance
url_bases = [
"https?://s3(.*).amazonaws.com",
r"https?://(?P<bucket_name>[a-zA-Z0-9\-_.]*)\.?s3(.*).amazonaws.com",
r"https?://s3(.*)\.amazonaws.com",
r"https?://(?P<bucket_name>[a-zA-Z0-9\-_.]*)\.?s3(.*)\.amazonaws.com",
]
url_paths = {

View File

@ -11,7 +11,7 @@ from moto.settings import S3_IGNORE_SUBDOMAIN_BUCKETNAME
log = logging.getLogger(__name__)
bucket_name_regex = re.compile("(.+).s3(.*).amazonaws.com")
bucket_name_regex = re.compile(r"(.+)\.s3(.*)\.amazonaws.com")
user_settable_fields = {
"content-md5",
"content-language",

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from .responses import SageMakerResponse
url_bases = [
"https?://api.sagemaker.(.+).amazonaws.com",
r"https?://api.sagemaker\.(.+)\.amazonaws.com",
]
url_paths = {

View File

@ -1,6 +1,6 @@
from __future__ import unicode_literals
from .responses import StepFunctionResponse
url_bases = ["https?://states.(.+).amazonaws.com"]
url_bases = [r"https?://states\.(.+)\.amazonaws.com"]
url_paths = {"{0}/$": StepFunctionResponse.dispatch}

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from .responses import XRayResponse
url_bases = ["https?://xray.(.+).amazonaws.com"]
url_bases = [r"https?://xray\.(.+)\.amazonaws.com"]
url_paths = {
"{0}/TelemetryRecords$": XRayResponse.dispatch,