Skip to content

Commit c6030c9

Browse files
authoredJan 19, 2025
Prep release 5.0.27 (getmoto#8505)
1 parent 62dd9bc commit c6030c9

File tree

11 files changed

+117
-64
lines changed

11 files changed

+117
-64
lines changed
 

‎CHANGELOG.md

+40
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,46 @@
11
Moto Changelog
22
==============
33

4+
5.0.27
5+
-----
6+
Docker Digest for 5.0.27: <autopopulateddigest>
7+
8+
New Methods:
9+
* Glue:
10+
* create_dev_endpoint()
11+
* get_dev_endpoint()
12+
* get_dev_endpoints()
13+
14+
* KMS:
15+
* generate_mac()
16+
* list_key_rotations()
17+
* rotate_key_on_demand()
18+
* verify_mac()
19+
20+
* SES:
21+
* delete_configuration_set()
22+
* list_configuration_sets()
23+
24+
* SESv2:
25+
* create_configuration_set()
26+
* create_dedicated_ip_pool()
27+
* delete_configuration_set()
28+
* delete_dedicated_ip_pool()
29+
* get_configuration_set()
30+
* get_dedicated_ip_pool()
31+
* list_configuration_sets()
32+
* list_dedicated_ip_pools()
33+
34+
Miscellaneous:
35+
* Introduced a new setting for ServerMode, `MOTO_DISABLE_GLOBAL_CORS`. Disabling the global CORS setting makes it possible to test the CORS-policies on S3 buckets
36+
* ElastiCache: create_user() now supports the AuthenticationMode-parameter
37+
* ElasticSearch/OpenSearch: list_domain_names() now returns domains from both services
38+
* Kafka: list_clusters_v2() now returns all parameters
39+
* Scheduler: The `schedule_expression_timezone` now defaults to UTC
40+
* RDS: create_db_instance() now throws an exception if an instance with that ID already exists
41+
* RDS: restore_db_instance_from_db_snapshot() now throws an exception if an instance with that ID already exists
42+
43+
444
5.0.26
545
-----
646
Docker Digest for 5.0.26: _sha256:1cae28be97cc87151ecabb531d1507b8dd3d52d3636b86143a16cccf4b5fcf43_

‎IMPLEMENTATION_COVERAGE.md

+27-29
Original file line numberDiff line numberDiff line change
@@ -3641,10 +3641,10 @@
36413641

36423642
## es
36433643
<details>
3644-
<summary>9% implemented</summary>
3644+
<summary>15% implemented</summary>
36453645

36463646
- [ ] accept_inbound_cross_cluster_search_connection
3647-
- [ ] add_tags
3647+
- [X] add_tags
36483648
- [ ] associate_package
36493649
- [ ] authorize_vpc_endpoint_access
36503650
- [ ] cancel_domain_config_change
@@ -3681,13 +3681,13 @@
36813681
- [ ] list_elasticsearch_instance_types
36823682
- [ ] list_elasticsearch_versions
36833683
- [ ] list_packages_for_domain
3684-
- [ ] list_tags
3684+
- [X] list_tags
36853685
- [ ] list_vpc_endpoint_access
36863686
- [ ] list_vpc_endpoints
36873687
- [ ] list_vpc_endpoints_for_domain
36883688
- [ ] purchase_reserved_elasticsearch_instance_offering
36893689
- [ ] reject_inbound_cross_cluster_search_connection
3690-
- [ ] remove_tags
3690+
- [X] remove_tags
36913691
- [ ] revoke_vpc_endpoint_access
36923692
- [ ] start_elasticsearch_service_software_update
36933693
- [ ] update_elasticsearch_domain_config
@@ -3938,7 +3938,7 @@
39383938

39393939
## glue
39403940
<details>
3941-
<summary>26% implemented</summary>
3941+
<summary>27% implemented</summary>
39423942

39433943
- [X] batch_create_partition
39443944
- [ ] batch_delete_connection
@@ -3972,7 +3972,7 @@
39723972
- [ ] create_custom_entity_type
39733973
- [ ] create_data_quality_ruleset
39743974
- [X] create_database
3975-
- [ ] create_dev_endpoint
3975+
- [X] create_dev_endpoint
39763976
- [ ] create_integration
39773977
- [ ] create_integration_resource_property
39783978
- [ ] create_integration_table_properties
@@ -4055,8 +4055,8 @@
40554055
- [X] get_database
40564056
- [X] get_databases
40574057
- [ ] get_dataflow_graph
4058-
- [ ] get_dev_endpoint
4059-
- [ ] get_dev_endpoints
4058+
- [X] get_dev_endpoint
4059+
- [X] get_dev_endpoints
40604060
- [ ] get_entity_records
40614061
- [ ] get_integration_resource_property
40624062
- [ ] get_integration_table_properties
@@ -5109,7 +5109,7 @@
51095109

51105110
## kms
51115111
<details>
5112-
<summary>64% implemented</summary>
5112+
<summary>75% implemented</summary>
51135113

51145114
- [X] cancel_key_deletion
51155115
- [ ] connect_custom_key_store
@@ -5134,17 +5134,17 @@
51345134
- [ ] generate_data_key_pair
51355135
- [ ] generate_data_key_pair_without_plaintext
51365136
- [X] generate_data_key_without_plaintext
5137-
- [ ] generate_mac
5138-
- [ ] generate_random
5137+
- [X] generate_mac
5138+
- [X] generate_random
51395139
- [X] get_key_policy
51405140
- [X] get_key_rotation_status
51415141
- [ ] get_parameters_for_import
51425142
- [X] get_public_key
51435143
- [ ] import_key_material
51445144
- [X] list_aliases
51455145
- [X] list_grants
5146-
- [ ] list_key_policies
5147-
- [ ] list_key_rotations
5146+
- [X] list_key_policies
5147+
- [X] list_key_rotations
51485148
- [X] list_keys
51495149
- [X] list_resource_tags
51505150
- [X] list_retirable_grants
@@ -5153,7 +5153,7 @@
51535153
- [X] replicate_key
51545154
- [X] retire_grant
51555155
- [X] revoke_grant
5156-
- [ ] rotate_key_on_demand
5156+
- [X] rotate_key_on_demand
51575157
- [X] schedule_key_deletion
51585158
- [X] sign
51595159
- [X] tag_resource
@@ -5163,7 +5163,7 @@
51635163
- [X] update_key_description
51645164
- [ ] update_primary_region
51655165
- [X] verify
5166-
- [ ] verify_mac
5166+
- [X] verify_mac
51675167
</details>
51685168

51695169
## lakeformation
@@ -8262,7 +8262,7 @@
82628262

82638263
## ses
82648264
<details>
8265-
<summary>40% implemented</summary>
8265+
<summary>43% implemented</summary>
82668266

82678267
- [ ] clone_receipt_rule_set
82688268
- [X] create_configuration_set
@@ -8273,7 +8273,7 @@
82738273
- [X] create_receipt_rule
82748274
- [X] create_receipt_rule_set
82758275
- [ ] create_template
8276-
- [ ] delete_configuration_set
8276+
- [X] delete_configuration_set
82778277
- [ ] delete_configuration_set_event_destination
82788278
- [ ] delete_configuration_set_tracking_options
82798279
- [ ] delete_custom_verification_email_template
@@ -8298,7 +8298,7 @@
82988298
- [X] get_send_quota
82998299
- [X] get_send_statistics
83008300
- [X] get_template
8301-
- [ ] list_configuration_sets
8301+
- [X] list_configuration_sets
83028302
- [ ] list_custom_verification_email_templates
83038303
- [X] list_identities
83048304
- [ ] list_identity_policies
@@ -8339,43 +8339,43 @@
83398339

83408340
## sesv2
83418341
<details>
8342-
<summary>9% implemented</summary>
8342+
<summary>17% implemented</summary>
83438343

83448344
- [ ] batch_get_metric_data
83458345
- [ ] cancel_export_job
8346-
- [ ] create_configuration_set
8346+
- [X] create_configuration_set
83478347
- [ ] create_configuration_set_event_destination
83488348
- [X] create_contact
83498349
- [X] create_contact_list
83508350
- [ ] create_custom_verification_email_template
8351-
- [ ] create_dedicated_ip_pool
8351+
- [X] create_dedicated_ip_pool
83528352
- [ ] create_deliverability_test_report
83538353
- [ ] create_email_identity
83548354
- [ ] create_email_identity_policy
83558355
- [ ] create_email_template
83568356
- [ ] create_export_job
83578357
- [ ] create_import_job
83588358
- [ ] create_multi_region_endpoint
8359-
- [ ] delete_configuration_set
8359+
- [X] delete_configuration_set
83608360
- [ ] delete_configuration_set_event_destination
83618361
- [X] delete_contact
83628362
- [X] delete_contact_list
83638363
- [ ] delete_custom_verification_email_template
8364-
- [ ] delete_dedicated_ip_pool
8364+
- [X] delete_dedicated_ip_pool
83658365
- [ ] delete_email_identity
83668366
- [ ] delete_email_identity_policy
83678367
- [ ] delete_email_template
83688368
- [ ] delete_multi_region_endpoint
83698369
- [ ] delete_suppressed_destination
83708370
- [ ] get_account
83718371
- [ ] get_blacklist_reports
8372-
- [ ] get_configuration_set
8372+
- [X] get_configuration_set
83738373
- [ ] get_configuration_set_event_destinations
83748374
- [X] get_contact
83758375
- [X] get_contact_list
83768376
- [ ] get_custom_verification_email_template
83778377
- [ ] get_dedicated_ip
8378-
- [ ] get_dedicated_ip_pool
8378+
- [X] get_dedicated_ip_pool
83798379
- [ ] get_dedicated_ips
83808380
- [ ] get_deliverability_dashboard_options
83818381
- [ ] get_deliverability_test_report
@@ -8389,11 +8389,11 @@
83898389
- [ ] get_message_insights
83908390
- [ ] get_multi_region_endpoint
83918391
- [ ] get_suppressed_destination
8392-
- [ ] list_configuration_sets
8392+
- [X] list_configuration_sets
83938393
- [X] list_contact_lists
83948394
- [X] list_contacts
83958395
- [ ] list_custom_verification_email_templates
8396-
- [ ] list_dedicated_ip_pools
8396+
- [X] list_dedicated_ip_pools
83978397
- [ ] list_deliverability_test_reports
83988398
- [ ] list_domain_deliverability_campaigns
83998399
- [ ] list_email_identities
@@ -9482,8 +9482,6 @@
94829482
- internetmonitor
94839483
- invoicing
94849484
- iot-jobs-data
9485-
- iot1click-devices
9486-
- iot1click-projects
94879485
- iotanalytics
94889486
- iotdeviceadvisor
94899487
- iotevents

‎docs/docs/services/es.rst

+3-10
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,10 @@
1212
es
1313
==
1414

15-
.. autoclass:: moto.es.models.ElasticsearchServiceBackend
16-
1715
|start-h3| Implemented features for this service |end-h3|
1816

1917
- [ ] accept_inbound_cross_cluster_search_connection
20-
- [ ] add_tags
18+
- [X] add_tags
2119
- [ ] associate_package
2220
- [ ] authorize_vpc_endpoint_access
2321
- [ ] cancel_domain_config_change
@@ -50,22 +48,17 @@ es
5048
- [ ] get_upgrade_history
5149
- [ ] get_upgrade_status
5250
- [X] list_domain_names
53-
54-
The engine-type parameter is not yet supported.
55-
Pagination is not yet implemented.
56-
57-
5851
- [ ] list_domains_for_package
5952
- [ ] list_elasticsearch_instance_types
6053
- [ ] list_elasticsearch_versions
6154
- [ ] list_packages_for_domain
62-
- [ ] list_tags
55+
- [X] list_tags
6356
- [ ] list_vpc_endpoint_access
6457
- [ ] list_vpc_endpoints
6558
- [ ] list_vpc_endpoints_for_domain
6659
- [ ] purchase_reserved_elasticsearch_instance_offering
6760
- [ ] reject_inbound_cross_cluster_search_connection
68-
- [ ] remove_tags
61+
- [X] remove_tags
6962
- [ ] revoke_vpc_endpoint_access
7063
- [ ] start_elasticsearch_service_software_update
7164
- [ ] update_elasticsearch_domain_config

‎docs/docs/services/kms.rst

+6-6
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,17 @@ kms
4848
- [ ] generate_data_key_pair
4949
- [ ] generate_data_key_pair_without_plaintext
5050
- [X] generate_data_key_without_plaintext
51-
- [ ] generate_mac
52-
- [ ] generate_random
51+
- [X] generate_mac
52+
- [X] generate_random
5353
- [X] get_key_policy
5454
- [X] get_key_rotation_status
5555
- [ ] get_parameters_for_import
5656
- [X] get_public_key
5757
- [ ] import_key_material
5858
- [X] list_aliases
5959
- [X] list_grants
60-
- [ ] list_key_policies
61-
- [ ] list_key_rotations
60+
- [X] list_key_policies
61+
- [X] list_key_rotations
6262
- [X] list_keys
6363
- [X] list_resource_tags
6464
- [X] list_retirable_grants
@@ -67,7 +67,7 @@ kms
6767
- [X] replicate_key
6868
- [X] retire_grant
6969
- [X] revoke_grant
70-
- [ ] rotate_key_on_demand
70+
- [X] rotate_key_on_demand
7171
- [X] schedule_key_deletion
7272
- [X] sign
7373

@@ -90,5 +90,5 @@ kms
9090
- The MessageType-parameter DIGEST is not yet implemented
9191

9292

93-
- [ ] verify_mac
93+
- [X] verify_mac
9494

‎docs/docs/services/s3.rst

+2-1
Original file line numberDiff line numberDiff line change
@@ -116,10 +116,11 @@ s3
116116
- [X] put_bucket_acl
117117
- [ ] put_bucket_analytics_configuration
118118
- [X] put_bucket_cors
119-
119+
120120
Note that the moto server configures global wildcard CORS settings by default. To avoid this from overriding empty bucket CORS, disable global CORS with an environment variable:
121121

122122
MOTO_DISABLE_GLOBAL_CORS=true
123+
123124

124125
- [X] put_bucket_encryption
125126
- [ ] put_bucket_intelligent_tiering_configuration

‎docs/docs/services/ses.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ ses
2525
- [X] create_receipt_rule
2626
- [X] create_receipt_rule_set
2727
- [ ] create_template
28-
- [ ] delete_configuration_set
28+
- [X] delete_configuration_set
2929
- [ ] delete_configuration_set_event_destination
3030
- [ ] delete_configuration_set_tracking_options
3131
- [ ] delete_custom_verification_email_template
@@ -50,7 +50,7 @@ ses
5050
- [X] get_send_quota
5151
- [X] get_send_statistics
5252
- [X] get_template
53-
- [ ] list_configuration_sets
53+
- [X] list_configuration_sets
5454
- [ ] list_custom_verification_email_templates
5555
- [X] list_identities
5656
- [ ] list_identity_policies

‎docs/docs/services/sesv2.rst

+8-8
Original file line numberDiff line numberDiff line change
@@ -18,39 +18,39 @@ sesv2
1818

1919
- [ ] batch_get_metric_data
2020
- [ ] cancel_export_job
21-
- [ ] create_configuration_set
21+
- [X] create_configuration_set
2222
- [ ] create_configuration_set_event_destination
2323
- [X] create_contact
2424
- [X] create_contact_list
2525
- [ ] create_custom_verification_email_template
26-
- [ ] create_dedicated_ip_pool
26+
- [X] create_dedicated_ip_pool
2727
- [ ] create_deliverability_test_report
2828
- [ ] create_email_identity
2929
- [ ] create_email_identity_policy
3030
- [ ] create_email_template
3131
- [ ] create_export_job
3232
- [ ] create_import_job
3333
- [ ] create_multi_region_endpoint
34-
- [ ] delete_configuration_set
34+
- [X] delete_configuration_set
3535
- [ ] delete_configuration_set_event_destination
3636
- [X] delete_contact
3737
- [X] delete_contact_list
3838
- [ ] delete_custom_verification_email_template
39-
- [ ] delete_dedicated_ip_pool
39+
- [X] delete_dedicated_ip_pool
4040
- [ ] delete_email_identity
4141
- [ ] delete_email_identity_policy
4242
- [ ] delete_email_template
4343
- [ ] delete_multi_region_endpoint
4444
- [ ] delete_suppressed_destination
4545
- [ ] get_account
4646
- [ ] get_blacklist_reports
47-
- [ ] get_configuration_set
47+
- [X] get_configuration_set
4848
- [ ] get_configuration_set_event_destinations
4949
- [X] get_contact
5050
- [X] get_contact_list
5151
- [ ] get_custom_verification_email_template
5252
- [ ] get_dedicated_ip
53-
- [ ] get_dedicated_ip_pool
53+
- [X] get_dedicated_ip_pool
5454
- [ ] get_dedicated_ips
5555
- [ ] get_deliverability_dashboard_options
5656
- [ ] get_deliverability_test_report
@@ -64,11 +64,11 @@ sesv2
6464
- [ ] get_message_insights
6565
- [ ] get_multi_region_endpoint
6666
- [ ] get_suppressed_destination
67-
- [ ] list_configuration_sets
67+
- [X] list_configuration_sets
6868
- [X] list_contact_lists
6969
- [X] list_contacts
7070
- [ ] list_custom_verification_email_templates
71-
- [ ] list_dedicated_ip_pools
71+
- [X] list_dedicated_ip_pools
7272
- [ ] list_deliverability_test_reports
7373
- [ ] list_domain_deliverability_campaigns
7474
- [ ] list_email_identities

‎moto/es/models.py

+21-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,27 @@
1-
from moto.core.base_backend import BackendDict, BaseBackend
1+
from moto.core.base_backend import BackendDict
2+
from moto.opensearch.models import OpenSearchServiceBackend
23

34

4-
class ElasticsearchServiceBackend(BaseBackend):
5-
def __init__(self, region_name: str, account_id: str):
5+
class ElasticsearchServiceBackend(OpenSearchServiceBackend):
6+
def create_elasticsearch_domain(self) -> None:
67
# Functionality is part of OpenSearch, as that includes all of ES functionality + more
7-
super().__init__(region_name, account_id)
8+
# Method is kept here to make sure our documentation register this as supported
9+
pass
10+
11+
def delete_elasticsearch_domain(self) -> None:
12+
# Functionality is part of OpenSearch, as that includes all of ES functionality + more
13+
# Method is kept here to make sure our documentation register this as supported
14+
pass
15+
16+
def describe_elasticsearch_domain(self) -> None:
17+
# Functionality is part of OpenSearch, as that includes all of ES functionality + more
18+
# Method is kept here to make sure our documentation register this as supported
19+
pass
20+
21+
def describe_elasticsearch_domains(self) -> None:
22+
# Functionality is part of OpenSearch, as that includes all of ES functionality + more
23+
# Method is kept here to make sure our documentation register this as supported
24+
pass
825

926

1027
es_backends = BackendDict(ElasticsearchServiceBackend, "es")

‎moto/s3/models.py

+5
Original file line numberDiff line numberDiff line change
@@ -2433,6 +2433,11 @@ def delete_bucket_tagging(self, bucket_name: str) -> None:
24332433
def put_bucket_cors(
24342434
self, bucket_name: str, cors_rules: List[Dict[str, Any]]
24352435
) -> None:
2436+
"""
2437+
Note that the moto server configures global wildcard CORS settings by default. To avoid this from overriding empty bucket CORS, disable global CORS with an environment variable:
2438+
2439+
MOTO_DISABLE_GLOBAL_CORS=true
2440+
"""
24362441
bucket = self.get_bucket(bucket_name)
24372442
bucket.set_cors(cors_rules)
24382443

‎scripts/implementation_coverage.py

-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010

1111
script_dir = os.path.dirname(os.path.abspath(__file__))
12-
alternative_service_names = {"lambda": "awslambda"}
1312

1413

1514
def get_moto_implementation(service_name):

‎tests/test_sesv2/test_sesv2.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -670,7 +670,7 @@ def test_delete_configuration_set():
670670

671671
@mock_aws
672672
def test_create_and_get_dedicated_ip_pool():
673-
client = boto3.client("sesv2")
673+
client = boto3.client("sesv2", "us-east-1")
674674
pool_name = "test-pool"
675675
scaling_mode = "STANDARD"
676676
tags = [{"Key": "Owner", "Value": "Zach"}]
@@ -685,7 +685,7 @@ def test_create_and_get_dedicated_ip_pool():
685685

686686
@mock_aws
687687
def test_list_dedicated_ip_pools():
688-
client = boto3.client("sesv2")
688+
client = boto3.client("sesv2", "us-east-1")
689689
num_pools = 3
690690
pool_name = "test-pool"
691691
scaling_mode = "STANDARD"
@@ -700,7 +700,7 @@ def test_list_dedicated_ip_pools():
700700

701701
@mock_aws
702702
def test_delete_dedicated_ip_pool():
703-
client = boto3.client("sesv2")
703+
client = boto3.client("sesv2", "us-east-1")
704704
num_pools = 2
705705
pool_name = "test-pool"
706706
scaling_mode = "STANDARD"

0 commit comments

Comments
 (0)
Please sign in to comment.