Repository: getmoto/moto
Pull request #8126 (2024-09-15 12:11:42)

chore: update SSM Instance parameters
Automated changes by [create-pull-request](https://github.com/peter-evans/create-pull-request) GitHub action


Patch:
diff --git a/moto/ec2/models/availability_zones_and_regions.py b/moto/ec2/models/availability_zones_and_regions.py
index 34475a87e..5191866d6 100644
--- a/moto/ec2/models/availability_zones_and_regions.py
+++ b/moto/ec2/models/availability_zones_and_regions.py
@@ -70,12 +70,16 @@ class RegionsAndZonesBackend:
             Region(region, f"ec2.{region}.amazonaws.com.cn", "opt-in-not-required")
         )
 
+    # Regions where the regions and zones are different from the norm
+    # Potential reasons:
+    #  - More or less zones than usual (!= 3)
+    #  - More zone id's then zones, resulting in a third zone with id '-az4'
+    #  - Unusual mapping, resulting in zone id's that are not numerically ordered, i.e. a=1, b=3, c=2
+    #
+    # The exact mapping is different from account to account
+    # The mapping defined here will be an amalgamation of different contributors/accounts
+    # We're keeping it as is for legacy/compatibility reasons
     zones = {
-        "af-south-1": [
-            Zone(region_name="af-south-1", name="af-south-1a", zone_id="afs1-az1"),
-            Zone(region_name="af-south-1", name="af-south-1b", zone_id="afs1-az2"),
-            Zone(region_name="af-south-1", name="af-south-1c", zone_id="afs1-az3"),
-        ],
         "ap-south-1": [
             Zone(region_name="ap-south-1", name="ap-south-1a", zone_id="aps1-az1"),
             Zone(region_name="ap-south-1", name="ap-south-1b", zone_id="aps1-az3"),
@@ -86,11 +90,6 @@ class RegionsAndZonesBackend:
             Zone(region_name="eu-west-3", name="eu-west-3b", zone_id="euw3-az2"),
             Zone(region_name="eu-west-3", name="eu-west-3c", zone_id="euw3-az3"),
         ],
-        "eu-north-1": [
-            Zone(region_name="eu-north-1", name="eu-north-1a", zone_id="eun1-az1"),
-            Zone(region_name="eu-north-1", name="eu-north-1b", zone_id="eun1-az2"),
-            Zone(region_name="eu-north-1", name="eu-north-1c", zone_id="eun1-az3"),
-        ],
         "eu-west-2": [
             Zone(region_name="eu-west-2", name="eu-west-2a", zone_id="euw2-az2"),
             Zone(region_name="eu-west-2", name="eu-west-2b", zone_id="euw2-az3"),
@@ -101,23 +100,6 @@ class RegionsAndZonesBackend:
             Zone(region_name="eu-west-1", name="eu-west-1b", zone_id="euw1-az1"),
             Zone(region_name="eu-west-1", name="eu-west-1c", zone_id="euw1-az2"),
         ],
-        "ap-northeast-3": [
-            Zone(
-                region_name="ap-northeast-3",
-                name="ap-northeast-3a",
-                zone_id="apne3-az1",
-            ),
-            Zone(
-                region_name="ap-northeast-3",
-                name="ap-northeast-3b",
-                zone_id="apne3-az2",
-            ),
-            Zone(
-                region_name="ap-northeast-3",
-                name="ap-northeast-3c",
-                zone_id="apne3-az3",
-            ),
-        ],
         "ap-northeast-2": [
             Zone(
                 region_name="ap-northeast-2",
@@ -157,38 +139,11 @@ class RegionsAndZonesBackend:
                 zone_id="apne1-az2",
             ),
         ],
-        "ap-east-1": [
-            Zone(region_name="ap-east-1", name="ap-east-1a", zone_id="ape1-az1"),
-            Zone(region_name="ap-east-1", name="ap-east-1b", zone_id="ape1-az2"),
-            Zone(region_name="ap-east-1", name="ap-east-1c", zone_id="ape1-az3"),
-        ],
-        "sa-east-1": [
-            Zone(region_name="sa-east-1", name="sa-east-1a", zone_id="sae1-az1"),
-            Zone(region_name="sa-east-1", name="sa-east-1b", zone_id="sae1-az2"),
-            Zone(region_name="sa-east-1", name="sa-east-1c", zone_id="sae1-az3"),
-        ],
         "ca-central-1": [
             Zone(region_name="ca-central-1", name="ca-central-1a", zone_id="cac1-az1"),
             Zone(region_name="ca-central-1", name="ca-central-1b", zone_id="cac1-az2"),
             Zone(region_name="ca-central-1", name="ca-central-1d", zone_id="cac1-az4"),
         ],
-        "ap-southeast-1": [
-            Zone(
-                region_name="ap-southeast-1",
-                name="ap-southeast-1a",
-                zone_id="apse1-az1",
-            ),
-            Zone(
-                region_name="ap-southeast-1",
-                name="ap-southeast-1b",
-                zone_id="apse1-az2",
-            ),
-            Zone(
-                region_name="ap-southeast-1",
-                name="ap-southeast-1c",
-                zone_id="apse1-az3",
-            ),
-        ],
         "ap-southeast-2": [
             Zone(
                 region_name="ap-southeast-2",
@@ -206,38 +161,6 @@ class RegionsAndZonesBackend:
                 zone_id="apse2-az2",
             ),
         ],
-        "ap-southeast-3": [
-            Zone(
-                region_name="ap-southeast-3",
-                name="ap-southeast-3a",
-                zone_id="apse3-az1",
-            ),
-            Zone(
-                region_name="ap-southeast-3",
-                name="ap-southeast-3b",
-                zone_id="apse3-az2",
-            ),
-            Zone(
-                region_name="ap-southeast-3",
-                name="ap-southeast-3c",
-                zone_id="apse3-az3",
-            ),
-        ],
-        "eu-central-1": [
-            Zone(region_name="eu-central-1", name="eu-central-1a", zone_id="euc1-az2"),
-            Zone(region_name="eu-central-1", name="eu-central-1b", zone_id="euc1-az3"),
-            Zone(region_name="eu-central-1", name="eu-central-1c", zone_id="euc1-az1"),
-        ],
-        "eu-central-2": [
-            Zone(region_name="eu-central-2", name="eu-central-2a", zone_id="euc2-az1"),
-            Zone(region_name="eu-central-2", name="eu-central-2b", zone_id="euc2-az2"),
-            Zone(region_name="eu-central-2", name="eu-central-2c", zone_id="euc2-az3"),
-        ],
-        "eu-south-1": [
-            Zone(region_name="eu-south-1", name="eu-south-1a", zone_id="eus1-az1"),
-            Zone(region_name="eu-south-1", name="eu-south-1b", zone_id="eus1-az2"),
-            Zone(region_name="eu-south-1", name="eu-south-1c", zone_id="eus1-az3"),
-        ],
         "us-east-1": [
             Zone(region_name="us-east-1", name="us-east-1a", zone_id="use1-az6"),
             Zone(region_name="us-east-1", name="us-east-1b", zone_id="use1-az1"),
@@ -246,11 +169,6 @@ class RegionsAndZonesBackend:
             Zone(region_name="us-east-1", name="us-east-1e", zone_id="use1-az3"),
             Zone(region_name="us-east-1", name="us-east-1f", zone_id="use1-az5"),
         ],
-        "us-east-2": [
-            Zone(region_name="us-east-2", name="us-east-2a", zone_id="use2-az1"),
-            Zone(region_name="us-east-2", name="us-east-2b", zone_id="use2-az2"),
-            Zone(region_name="us-east-2", name="us-east-2c", zone_id="use2-az3"),
-        ],
         "us-west-1": [
             Zone(region_name="us-west-1", name="us-west-1a", zone_id="usw1-az3"),
             Zone(region_name="us-west-1", name="us-west-1b", zone_id="usw1-az1"),
@@ -261,55 +179,27 @@ class RegionsAndZonesBackend:
             Zone(region_name="us-west-2", name="us-west-2c", zone_id="usw2-az3"),
             Zone(region_name="us-west-2", name="us-west-2d", zone_id="usw2-az4"),
         ],
-        "me-south-1": [
-            Zone(region_name="me-south-1", name="me-south-1a", zone_id="mes1-az1"),
-            Zone(region_name="me-south-1", name="me-south-1b", zone_id="mes1-az2"),
-            Zone(region_name="me-south-1", name="me-south-1c", zone_id="mes1-az3"),
-        ],
         "cn-north-1": [
             Zone(region_name="cn-north-1", name="cn-north-1a", zone_id="cnn1-az1"),
             Zone(region_name="cn-north-1", name="cn-north-1b", zone_id="cnn1-az2"),
         ],
-        "cn-northwest-1": [
-            Zone(
-                region_name="cn-northwest-1",
-                name="cn-northwest-1a",
-                zone_id="cnnw1-az1",
-            ),
-            Zone(
-                region_name="cn-northwest-1",
-                name="cn-northwest-1b",
-                zone_id="cnnw1-az2",
-            ),
-            Zone(
-                region_name="cn-northwest-1",
-                name="cn-northwest-1c",
-                zone_id="cnnw1-az3",
-            ),
-        ],
-        "us-gov-west-1": [
-            Zone(
-                region_name="us-gov-west-1", name="us-gov-west-1a", zone_id="usgw1-az1"
-            ),
-            Zone(
-                region_name="us-gov-west-1", name="us-gov-west-1b", zone_id="usgw1-az2"
-            ),
-            Zone(
-                region_name="us-gov-west-1", name="us-gov-west-1c", zone_id="usgw1-az3"
-            ),
-        ],
-        "us-gov-east-1": [
-            Zone(
-                region_name="us-gov-east-1", name="us-gov-east-1a", zone_id="usge1-az1"
-            ),
-            Zone(
-                region_name="us-gov-east-1", name="us-gov-east-1b", zone_id="usge1-az2"
-            ),
-            Zone(
-                region_name="us-gov-east-1", name="us-gov-east-1c", zone_id="usge1-az3"
-            ),
-        ],
     }
+    # Regularized region->zone mapping for all regions not defined above
+    for region in regions:
+        if region.name not in zones:
+            name = region.name
+            region_parts = name.split("-")
+            shorthand = "usg" if name.startswith("us-gov") else region_parts[0]
+            # North and south first - this also handles combinations like northeast -> ne
+            for cardinal in ["north", "south", "central", "east", "west"]:
+                if cardinal in name:
+                    shorthand += cardinal[0]
+            shorthand += region_parts[-1]
+            zones[region.name] = [
+                Zone(region_name=name, name=f"{name}a", zone_id=f"{shorthand}-az1"),
+                Zone(region_name=name, name=f"{name}b", zone_id=f"{shorthand}-az2"),
+                Zone(region_name=name, name=f"{name}c", zone_id=f"{shorthand}-az3"),
+            ]
 
     def describe_regions(
         self, region_names: Optional[List[str]] = None
diff --git a/moto/ssm/resources/regions.json b/moto/ssm/resources/regions.json
index c702473ac..4dda2d492 100644
--- a/moto/ssm/resources/regions.json
+++ b/moto/ssm/resources/regions.json
@@ -2906,6 +2906,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "redshift-serverless": {
+                "Value": "redshift-serverless",
+                "endpoint": {
+                  "Value": "redshift-serverless.ap-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "resiliencehub": {
                 "Value": "resiliencehub",
                 "endpoint": {
@@ -3621,7 +3630,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-northeast-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -3923,15 +3938,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.ap-northeast-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -6360,7 +6366,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-northeast-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -6608,15 +6620,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.ap-northeast-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -10410,7 +10413,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -13284,6 +13293,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "mediapackagev2": {
+                "Value": "mediapackagev2",
+                "endpoint": {
+                  "Value": "mediapackagev2.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "mediatailor": {
                 "Value": "mediatailor",
                 "endpoint": {
@@ -13659,6 +13677,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -14053,7 +14080,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-southeast-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -14355,15 +14388,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.ap-southeast-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -16714,7 +16738,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-southeast-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -17016,15 +17046,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.ap-southeast-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -20134,6 +20155,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "neptune": {
+                "Value": "neptune",
+                "endpoint": {
+                  "Value": "rds.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
+              },
               "network-firewall": {
                 "Value": "network-firewall",
                 "endpoint": {
@@ -21833,6 +21863,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.ap-southeast-4.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -22245,6 +22284,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "efs": {
+                "Value": "efs",
+                "endpoint": {
+                  "Value": "elasticfilesystem.ap-southeast-5.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "eks": {
                 "Value": "eks",
                 "endpoint": {
@@ -22536,6 +22584,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "securityhub": {
+                "Value": "securityhub",
+                "endpoint": {
+                  "Value": "securityhub.ap-southeast-5.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "service-quotas": {
                 "Value": "service-quotas",
                 "endpoint": {
@@ -22892,7 +22949,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ca-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -23143,15 +23206,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.ca-central-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -29179,7 +29233,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -29499,15 +29559,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.eu-central-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -32907,6 +32958,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.eu-central-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -33475,15 +33535,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.eu-north-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -37545,6 +37596,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "neptune": {
+                "Value": "neptune",
+                "endpoint": {
+                  "Value": "rds.eu-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
+              },
               "network-firewall": {
                 "Value": "network-firewall",
                 "endpoint": {
@@ -37893,6 +37953,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.eu-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -38276,7 +38345,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-west-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -38578,15 +38653,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.eu-west-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -41139,7 +41205,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-west-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -41441,15 +41513,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.eu-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -46434,6 +46497,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "redshift-serverless": {
+                "Value": "redshift-serverless",
+                "endpoint": {
+                  "Value": "redshift-serverless.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "rekognition": {
                 "Value": "rekognition",
                 "endpoint": {
@@ -46674,6 +46746,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -47698,6 +47779,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "mediapackagev2": {
+                "Value": "mediapackagev2",
+                "endpoint": {
+                  "Value": "mediapackagev2.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "mediatailor": {
                 "Value": "mediatailor",
                 "endpoint": {
@@ -48106,6 +48196,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ssm-sap": {
+                "Value": "ssm-sap",
+                "endpoint": {
+                  "Value": "ssm-sap.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sso-oidc": {
                 "Value": "sso-oidc",
                 "endpoint": {
@@ -52282,7 +52381,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -52641,15 +52746,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.us-east-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -55504,7 +55600,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-east-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -55761,15 +55863,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.us-east-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -61479,15 +61572,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.us-west-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -63385,7 +63469,13 @@
                 }
               },
               "augmentedairuntime": {
-                "Value": "augmentedairuntime"
+                "Value": "augmentedairuntime",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-west-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "aurora": {
                 "Value": "aurora",
@@ -63714,15 +63804,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "codestar": {
-                "Value": "codestar",
-                "endpoint": {
-                  "Value": "codestar.us-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "codestar-connections": {
                 "Value": "codestar-connections",
                 "endpoint": {
@@ -64431,15 +64512,6 @@
                   "Value": "HTTPS"
                 }
               },
-              "honeycode": {
-                "Value": "honeycode",
-                "endpoint": {
-                  "Value": "honeycode.us-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
               "iam": {
                 "Value": "iam",
                 "endpoint": {
diff --git a/moto/ssm/resources/services.json b/moto/ssm/resources/services.json
index d95bc0f29..4f20d2bd5 100644
--- a/moto/ssm/resources/services.json
+++ b/moto/ssm/resources/services.json
@@ -5842,40 +5842,112 @@
             },
             "regions": {
               "ap-northeast-1": {
-                "Value": "ap-northeast-1"
+                "Value": "ap-northeast-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-northeast-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "ap-northeast-2": {
-                "Value": "ap-northeast-2"
+                "Value": "ap-northeast-2",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-northeast-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "ap-south-1": {
-                "Value": "ap-south-1"
+                "Value": "ap-south-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-south-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "ap-southeast-1": {
-                "Value": "ap-southeast-1"
+                "Value": "ap-southeast-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-southeast-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "ap-southeast-2": {
-                "Value": "ap-southeast-2"
+                "Value": "ap-southeast-2",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ap-southeast-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "ca-central-1": {
-                "Value": "ca-central-1"
+                "Value": "ca-central-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.ca-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "eu-central-1": {
-                "Value": "eu-central-1"
+                "Value": "eu-central-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "eu-west-1": {
-                "Value": "eu-west-1"
+                "Value": "eu-west-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-west-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "eu-west-2": {
-                "Value": "eu-west-2"
+                "Value": "eu-west-2",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.eu-west-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "us-east-1": {
-                "Value": "us-east-1"
+                "Value": "us-east-1",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "us-east-2": {
-                "Value": "us-east-2"
+                "Value": "us-east-2",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-east-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               },
               "us-west-2": {
-                "Value": "us-west-2"
+                "Value": "us-west-2",
+                "endpoint": {
+                  "Value": "a2i-runtime.sagemaker.us-west-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
               }
             }
           },
@@ -6873,6 +6945,9 @@
             "longName": {
               "Value": "AWS B2B Data Interchange"
             },
+            "marketingHomeURL": {
+              "Value": "https://aws.amazon.com/b2b-data-interchange/"
+            },
             "regions": {
               "us-east-1": {
                 "Value": "us-east-1",
@@ -13407,134 +13482,6 @@
               }
             }
           },
-          "codestar": {
-            "Value": "codestar",
-            "longName": {
-              "Value": "AWS CodeStar"
-            },
-            "marketingHomeURL": {
-              "Value": "https://aws.amazon.com/codestar/"
-            },
-            "regions": {
-              "ap-northeast-1": {
-                "Value": "ap-northeast-1",
-                "endpoint": {
-                  "Value": "codestar.ap-northeast-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "ap-northeast-2": {
-                "Value": "ap-northeast-2",
-                "endpoint": {
-                  "Value": "codestar.ap-northeast-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "ap-southeast-1": {
-                "Value": "ap-southeast-1",
-                "endpoint": {
-                  "Value": "codestar.ap-southeast-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "ap-southeast-2": {
-                "Value": "ap-southeast-2",
-                "endpoint": {
-                  "Value": "codestar.ap-southeast-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "ca-central-1": {
-                "Value": "ca-central-1",
-                "endpoint": {
-                  "Value": "codestar.ca-central-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "eu-central-1": {
-                "Value": "eu-central-1",
-                "endpoint": {
-                  "Value": "codestar.eu-central-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "eu-north-1": {
-                "Value": "eu-north-1",
-                "endpoint": {
-                  "Value": "codestar.eu-north-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "eu-west-1": {
-                "Value": "eu-west-1",
-                "endpoint": {
-                  "Value": "codestar.eu-west-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "eu-west-2": {
-                "Value": "eu-west-2",
-                "endpoint": {
-                  "Value": "codestar.eu-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "us-east-1": {
-                "Value": "us-east-1",
-                "endpoint": {
-                  "Value": "codestar.us-east-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "us-east-2": {
-                "Value": "us-east-2",
-                "endpoint": {
-                  "Value": "codestar.us-east-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "us-west-1": {
-                "Value": "us-west-1",
-                "endpoint": {
-                  "Value": "codestar.us-west-1.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              },
-              "us-west-2": {
-                "Value": "us-west-2",
-                "endpoint": {
-                  "Value": "codestar.us-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              }
-            }
-          },
           "codestar-connections": {
             "Value": "codestar-connections",
             "longName": {
@@ -21565,6 +21512,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-southeast-5": {
+                "Value": "ap-southeast-5",
+                "endpoint": {
+                  "Value": "elasticfilesystem.ap-southeast-5.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -30320,26 +30276,6 @@
               }
             }
           },
-          "honeycode": {
-            "Value": "honeycode",
-            "longName": {
-              "Value": "Amazon Honeycode"
-            },
-            "marketingHomeURL": {
-              "Value": "https://www.honeycode.aws/"
-            },
-            "regions": {
-              "us-west-2": {
-                "Value": "us-west-2",
-                "endpoint": {
-                  "Value": "honeycode.us-west-2.amazonaws.com"
-                },
-                "protocols": {
-                  "Value": "HTTPS"
-                }
-              }
-            }
-          },
           "iam": {
             "Value": "iam",
             "longName": {
@@ -41711,6 +41647,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-south-2": {
+                "Value": "ap-south-2",
+                "endpoint": {
+                  "Value": "mediapackagev2.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-southeast-1": {
                 "Value": "ap-southeast-1",
                 "endpoint": {
@@ -41792,6 +41737,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "me-central-1": {
+                "Value": "me-central-1",
+                "endpoint": {
+                  "Value": "mediapackagev2.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "sa-east-1": {
                 "Value": "sa-east-1",
                 "endpoint": {
@@ -43900,6 +43854,15 @@
                   "Value": "HTTPS, HTTP"
                 }
               },
+              "ap-southeast-3": {
+                "Value": "ap-southeast-3",
+                "endpoint": {
+                  "Value": "rds.ap-southeast-3.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -43945,6 +43908,15 @@
                   "Value": "HTTPS, HTTP"
                 }
               },
+              "eu-south-2": {
+                "Value": "eu-south-2",
+                "endpoint": {
+                  "Value": "rds.eu-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS, HTTP"
+                }
+              },
               "eu-west-1": {
                 "Value": "eu-west-1",
                 "endpoint": {
@@ -50941,6 +50913,15 @@
               "Value": "Amazon Redshift Serverless"
             },
             "regions": {
+              "ap-east-1": {
+                "Value": "ap-east-1",
+                "endpoint": {
+                  "Value": "redshift-serverless.ap-east-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-northeast-1": {
                 "Value": "ap-northeast-1",
                 "endpoint": {
@@ -51058,6 +51039,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "il-central-1": {
+                "Value": "il-central-1",
+                "endpoint": {
+                  "Value": "redshift-serverless.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "us-east-1": {
                 "Value": "us-east-1",
                 "endpoint": {
@@ -57292,6 +57282,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-southeast-5": {
+                "Value": "ap-southeast-5",
+                "endpoint": {
+                  "Value": "securityhub.ap-southeast-5.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -61732,6 +61731,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-south-2": {
+                "Value": "ap-south-2",
+                "endpoint": {
+                  "Value": "ssm-sap.ap-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ap-southeast-1": {
                 "Value": "ap-southeast-1",
                 "endpoint": {
@@ -61759,6 +61767,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "ap-southeast-4": {
+                "Value": "ap-southeast-4",
+                "endpoint": {
+                  "Value": "ssm-sap.ap-southeast-4.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "ca-central-1": {
                 "Value": "ca-central-1",
                 "endpoint": {
@@ -61777,6 +61794,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "eu-central-2": {
+                "Value": "eu-central-2",
+                "endpoint": {
+                  "Value": "ssm-sap.eu-central-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "eu-north-1": {
                 "Value": "eu-north-1",
                 "endpoint": {
@@ -61795,6 +61821,15 @@
                   "Value": "HTTPS"
                 }
               },
+              "eu-south-2": {
+                "Value": "eu-south-2",
+                "endpoint": {
+                  "Value": "ssm-sap.eu-south-2.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "eu-west-1": {
                 "Value": "eu-west-1",
                 "endpoint": {
@@ -61822,6 +61857,24 @@
                   "Value": "HTTPS"
                 }
               },
+              "il-central-1": {
+                "Value": "il-central-1",
+                "endpoint": {
+                  "Value": "ssm-sap.il-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
+              "me-central-1": {
+                "Value": "me-central-1",
+                "endpoint": {
+                  "Value": "ssm-sap.me-central-1.amazonaws.com"
+                },
+                "protocols": {
+                  "Value": "HTTPS"
+                }
+              },
               "me-south-1": {
                 "Value": "me-south-1",
                 "endpoint": {


Test patch:
diff --git a/tests/test_ec2/test_availability_zones_and_regions.py b/tests/test_ec2/test_availability_zones_and_regions.py
index 16874457a..d092bcde4 100644
--- a/tests/test_ec2/test_availability_zones_and_regions.py
+++ b/tests/test_ec2/test_availability_zones_and_regions.py
@@ -6,7 +6,7 @@ from moto import mock_aws
 
 
 @mock_aws
-def test_boto3_describe_regions():
+def test_describe_regions():
     ec2 = boto3.client("ec2", "us-east-1")
     resp = ec2.describe_regions()
     assert len(resp["Regions"]) > 1
@@ -27,14 +27,15 @@ def test_boto3_describe_regions():
 
 
 @mock_aws
-def test_boto3_availability_zones():
+def test_availability_zones():
     ec2 = boto3.client("ec2", "us-east-1")
     resp = ec2.describe_regions()
     regions = [r["RegionName"] for r in resp["Regions"]]
     for region in regions:
         conn = boto3.client("ec2", region)
-        resp = conn.describe_availability_zones()
-        for rec in resp["AvailabilityZones"]:
+        zones = conn.describe_availability_zones()["AvailabilityZones"]
+        assert len(zones) > 0, f"Region {region} has no availability zones configured"
+        for rec in zones:
             assert region in rec["ZoneName"]
 
 
@@ -92,12 +93,27 @@ def test_describe_availability_zones_dryrun():
 
 
 @mock_aws
-def test_boto3_zoneId_in_availability_zones():
-    conn = boto3.client("ec2", "us-east-1")
+@pytest.mark.parametrize(
+    "region,shorthand",
+    [
+        # Regular regions
+        ("eu-central-1", "euc1-az"),
+        ("sa-east-1", "sae1-az"),
+        ("us-east-1", "use1-az"),
+        ("us-west-1", "usw1-az"),
+        # Regions never explicitly specified
+        ("ap-southeast-5", "apse5-az"),
+        # Regions with multiple cardinal points
+        ("ap-northeast-1", "apne1-az"),
+        ("ap-southeast-3", "apse3-az"),
+        # Edge cases with different partitions
+        ("cn-northwest-1", "cnnw1-az"),
+        ("us-gov-east-1", "usge1-az"),
+        ("us-gov-west-1", "usgw1-az"),
+    ],
+)
+def test_zoneId_in_availability_zones(region, shorthand):
+    conn = boto3.client("ec2", region)
     resp = conn.describe_availability_zones()
     for rec in resp["AvailabilityZones"]:
-        assert "use1" in rec.get("ZoneId")
-    conn = boto3.client("ec2", "us-west-1")
-    resp = conn.describe_availability_zones()
-    for rec in resp["AvailabilityZones"]:
-        assert "usw1" in rec.get("ZoneId")
+        assert shorthand in rec.get("ZoneId")