Skip to content

Commit

Permalink
Appmesh: virtual nodes (#8050)
Browse files Browse the repository at this point in the history
  • Loading branch information
armichaud authored Sep 1, 2024
1 parent 2519843 commit 204b966
Show file tree
Hide file tree
Showing 27 changed files with 2,853 additions and 591 deletions.
108 changes: 27 additions & 81 deletions IMPLEMENTATION_COVERAGE.md

Large diffs are not rendered by default.

30 changes: 15 additions & 15 deletions docs/docs/services/appmesh.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,40 +18,40 @@ appmesh

- [ ] create_gateway_route
- [X] create_mesh
- [ ] create_route
- [X] create_route
- [ ] create_virtual_gateway
- [ ] create_virtual_node
- [ ] create_virtual_router
- [X] create_virtual_node
- [X] create_virtual_router
- [ ] create_virtual_service
- [ ] delete_gateway_route
- [X] delete_mesh
- [ ] delete_route
- [X] delete_route
- [ ] delete_virtual_gateway
- [ ] delete_virtual_node
- [ ] delete_virtual_router
- [X] delete_virtual_node
- [X] delete_virtual_router
- [ ] delete_virtual_service
- [ ] describe_gateway_route
- [X] describe_mesh
- [ ] describe_route
- [X] describe_route
- [ ] describe_virtual_gateway
- [ ] describe_virtual_node
- [ ] describe_virtual_router
- [X] describe_virtual_node
- [X] describe_virtual_router
- [ ] describe_virtual_service
- [ ] list_gateway_routes
- [X] list_meshes
- [ ] list_routes
- [X] list_routes
- [X] list_tags_for_resource
- [ ] list_virtual_gateways
- [ ] list_virtual_nodes
- [ ] list_virtual_routers
- [X] list_virtual_nodes
- [X] list_virtual_routers
- [ ] list_virtual_services
- [X] tag_resource
- [ ] untag_resource
- [ ] update_gateway_route
- [X] update_mesh
- [ ] update_route
- [X] update_route
- [ ] update_virtual_gateway
- [ ] update_virtual_node
- [ ] update_virtual_router
- [X] update_virtual_node
- [X] update_virtual_router
- [ ] update_virtual_service

21 changes: 0 additions & 21 deletions docs/docs/services/bedrock-agent.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,50 +21,32 @@ bedrock-agent
- [ ] create_agent_action_group
- [ ] create_agent_alias
- [ ] create_data_source
- [ ] create_flow
- [ ] create_flow_alias
- [ ] create_flow_version
- [X] create_knowledge_base
- [ ] create_prompt
- [ ] create_prompt_version
- [X] delete_agent
- [ ] delete_agent_action_group
- [ ] delete_agent_alias
- [ ] delete_agent_version
- [ ] delete_data_source
- [ ] delete_flow
- [ ] delete_flow_alias
- [ ] delete_flow_version
- [X] delete_knowledge_base
- [ ] delete_prompt
- [ ] disassociate_agent_knowledge_base
- [X] get_agent
- [ ] get_agent_action_group
- [ ] get_agent_alias
- [ ] get_agent_knowledge_base
- [ ] get_agent_version
- [ ] get_data_source
- [ ] get_flow
- [ ] get_flow_alias
- [ ] get_flow_version
- [ ] get_ingestion_job
- [X] get_knowledge_base
- [ ] get_prompt
- [ ] list_agent_action_groups
- [ ] list_agent_aliases
- [ ] list_agent_knowledge_bases
- [ ] list_agent_versions
- [X] list_agents
- [ ] list_data_sources
- [ ] list_flow_aliases
- [ ] list_flow_versions
- [ ] list_flows
- [ ] list_ingestion_jobs
- [X] list_knowledge_bases
- [ ] list_prompts
- [X] list_tags_for_resource
- [ ] prepare_agent
- [ ] prepare_flow
- [ ] start_ingestion_job
- [X] tag_resource
- [X] untag_resource
Expand All @@ -73,8 +55,5 @@ bedrock-agent
- [ ] update_agent_alias
- [ ] update_agent_knowledge_base
- [ ] update_data_source
- [ ] update_flow
- [ ] update_flow_alias
- [ ] update_knowledge_base
- [ ] update_prompt

3 changes: 0 additions & 3 deletions docs/docs/services/bedrock.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ bedrock
- [ ] create_evaluation_job
- [ ] create_guardrail
- [ ] create_guardrail_version
- [ ] create_model_copy_job
- [X] create_model_customization_job
- [ ] create_provisioned_model_throughput
- [X] delete_custom_model
Expand All @@ -30,7 +29,6 @@ bedrock
- [ ] get_evaluation_job
- [ ] get_foundation_model
- [ ] get_guardrail
- [ ] get_model_copy_job
- [X] get_model_customization_job
- [X] get_model_invocation_logging_configuration
- [ ] get_provisioned_model_throughput
Expand All @@ -42,7 +40,6 @@ bedrock
- [ ] list_evaluation_jobs
- [ ] list_foundation_models
- [ ] list_guardrails
- [ ] list_model_copy_jobs
- [X] list_model_customization_jobs
- [ ] list_provisioned_model_throughputs
- [X] list_tags_for_resource
Expand Down
3 changes: 0 additions & 3 deletions docs/docs/services/codepipeline.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,8 @@ codepipeline
- [ ] list_action_types
- [ ] list_pipeline_executions
- [X] list_pipelines
- [ ] list_rule_executions
- [ ] list_rule_types
- [X] list_tags_for_resource
- [ ] list_webhooks
- [ ] override_stage_condition
- [ ] poll_for_jobs
- [ ] poll_for_third_party_jobs
- [ ] put_action_revision
Expand Down
17 changes: 17 additions & 0 deletions docs/docs/services/ebs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ ebs
|start-h3| Implemented features for this service |end-h3|

- [X] complete_snapshot

The following parameters are not yet supported: ChangedBlocksCount, Checksum, ChecksumAlgorithm, ChecksumAggregationMethod


- [X] get_snapshot_block

The BlockToken-parameter is not yet implemented
Expand All @@ -28,6 +32,19 @@ ebs


- [X] list_snapshot_blocks

The following parameters are not yet implemented: NextToken, MaxResults, StartingBlockIndex


- [X] put_snapshot_block

The following parameters are currently not taken into account: DataLength, Progress.
The Checksum and ChecksumAlgorithm are taken at face-value, but no validation takes place.


- [X] start_snapshot

The following parameters are not yet implemented: ParentSnapshotId, ClientToken, Encrypted, KmsKeyArn, Timeout



5 changes: 0 additions & 5 deletions docs/docs/services/ec2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ ec2
- [X] copy_image
- [X] copy_snapshot
- [ ] create_capacity_reservation
- [ ] create_capacity_reservation_by_splitting
- [ ] create_capacity_reservation_fleet
- [X] create_carrier_gateway
- [ ] create_client_vpn_endpoint
Expand All @@ -93,7 +92,6 @@ ec2
- [ ] create_instance_export_task
- [X] create_internet_gateway
- [ ] create_ipam
- [ ] create_ipam_external_resource_verification_token
- [ ] create_ipam_pool
- [ ] create_ipam_resource_discovery
- [ ] create_ipam_scope
Expand Down Expand Up @@ -174,7 +172,6 @@ ec2
- [ ] delete_instance_event_window
- [X] delete_internet_gateway
- [ ] delete_ipam
- [ ] delete_ipam_external_resource_verification_token
- [ ] delete_ipam_pool
- [ ] delete_ipam_resource_discovery
- [ ] delete_ipam_scope
Expand Down Expand Up @@ -312,7 +309,6 @@ ec2
- [X] describe_instances
- [X] describe_internet_gateways
- [ ] describe_ipam_byoasn
- [ ] describe_ipam_external_resource_verification_tokens
- [ ] describe_ipam_pools
- [ ] describe_ipam_resource_discoveries
- [ ] describe_ipam_resource_discovery_associations
Expand Down Expand Up @@ -615,7 +611,6 @@ ec2
- [ ] monitor_instances
- [ ] move_address_to_vpc
- [ ] move_byoip_cidr_to_ipam
- [ ] move_capacity_reservation_instances
- [ ] provision_byoip_cidr
- [ ] provision_ipam_byoasn
- [ ] provision_ipam_pool_cidr
Expand Down
6 changes: 0 additions & 6 deletions docs/docs/services/ecr.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,10 @@ ecr
- [ ] complete_layer_upload
- [ ] create_pull_through_cache_rule
- [X] create_repository
- [ ] create_repository_creation_template
- [X] delete_lifecycle_policy
- [ ] delete_pull_through_cache_rule
- [X] delete_registry_policy
- [X] delete_repository
- [ ] delete_repository_creation_template
- [X] delete_repository_policy
- [ ] describe_image_replication_status
- [X] describe_image_scan_findings
Expand All @@ -42,8 +40,6 @@ ecr
maxResults and nextToken not implemented


- [ ] describe_repository_creation_templates
- [ ] get_account_setting
- [ ] get_authorization_token
- [ ] get_download_url_for_layer
- [X] get_lifecycle_policy
Expand All @@ -58,7 +54,6 @@ ecr


- [X] list_tags_for_resource
- [ ] put_account_setting
- [X] put_image
- [X] put_image_scanning_configuration
- [X] put_image_tag_mutability
Expand All @@ -72,7 +67,6 @@ ecr
- [X] tag_resource
- [X] untag_resource
- [ ] update_pull_through_cache_rule
- [ ] update_repository_creation_template
- [ ] upload_layer_part
- [ ] validate_pull_through_cache_rule

2 changes: 0 additions & 2 deletions docs/docs/services/elbv2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ elbv2
- [X] delete_listener
- [X] delete_load_balancer
- [X] delete_rule
- [ ] delete_shared_trust_store_association
- [X] delete_target_group
- [ ] delete_trust_store
- [X] deregister_targets
Expand All @@ -43,7 +42,6 @@ elbv2
- [ ] describe_trust_store_associations
- [ ] describe_trust_store_revocations
- [ ] describe_trust_stores
- [ ] get_resource_policy
- [ ] get_trust_store_ca_certificates_bundle
- [ ] get_trust_store_revocation_content
- [X] modify_listener
Expand Down
6 changes: 0 additions & 6 deletions docs/docs/services/glue.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ glue
- [ ] batch_get_table_optimizer
- [X] batch_get_triggers
- [ ] batch_get_workflows
- [ ] batch_put_data_quality_statistic_annotation
- [ ] batch_stop_job_run
- [X] batch_update_partition
- [ ] cancel_data_quality_rule_recommendation_run
Expand Down Expand Up @@ -108,8 +107,6 @@ glue
- [X] get_crawlers
- [ ] get_custom_entity_type
- [ ] get_data_catalog_encryption_settings
- [ ] get_data_quality_model
- [ ] get_data_quality_model_result
- [ ] get_data_quality_result
- [ ] get_data_quality_rule_recommendation_run
- [ ] get_data_quality_ruleset
Expand Down Expand Up @@ -184,8 +181,6 @@ glue
- [ ] list_data_quality_rule_recommendation_runs
- [ ] list_data_quality_ruleset_evaluation_runs
- [ ] list_data_quality_rulesets
- [ ] list_data_quality_statistic_annotations
- [ ] list_data_quality_statistics
- [ ] list_dev_endpoints
- [X] list_jobs
- [ ] list_ml_transforms
Expand All @@ -199,7 +194,6 @@ glue
- [ ] list_usage_profiles
- [ ] list_workflows
- [ ] put_data_catalog_encryption_settings
- [ ] put_data_quality_profile_annotation
- [ ] put_resource_policy
- [X] put_schema_version_metadata
- [ ] put_workflow_run_properties
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/services/logs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ logs
|start-h3| Implemented features for this service |end-h3|

- [ ] associate_kms_key
- [ ] cancel_export_task
- [X] cancel_export_task
- [ ] create_delivery
- [X] create_export_task
- [ ] create_log_anomaly_detector
Expand Down
3 changes: 0 additions & 3 deletions docs/docs/services/quicksight.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,6 @@ quicksight

|start-h3| Implemented features for this service |end-h3|

- [ ] batch_create_topic_reviewed_answer
- [ ] batch_delete_topic_reviewed_answer
- [ ] cancel_ingestion
- [ ] create_account_customization
- [ ] create_account_subscription
Expand Down Expand Up @@ -148,7 +146,6 @@ quicksight
- [ ] list_theme_versions
- [ ] list_themes
- [ ] list_topic_refresh_schedules
- [ ] list_topic_reviewed_answers
- [ ] list_topics
- [ ] list_user_groups
- [X] list_users
Expand Down
5 changes: 0 additions & 5 deletions docs/docs/services/resiliencehub.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ resiliencehub

|start-h3| Implemented features for this service |end-h3|

- [ ] accept_resource_grouping_recommendations
- [ ] add_draft_app_version_resource_mappings
- [ ] batch_update_recommendation_status
- [X] create_app
Expand Down Expand Up @@ -46,7 +45,6 @@ resiliencehub
- [ ] describe_app_version_template
- [ ] describe_draft_app_version_resources_import_status
- [X] describe_resiliency_policy
- [ ] describe_resource_grouping_recommendation_task
- [X] import_resources_to_draft_app_version
- [ ] list_alarm_recommendations
- [ ] list_app_assessment_compliance_drifts
Expand Down Expand Up @@ -102,19 +100,16 @@ resiliencehub

- [ ] list_recommendation_templates
- [X] list_resiliency_policies
- [ ] list_resource_grouping_recommendations
- [ ] list_sop_recommendations
- [ ] list_suggested_resiliency_policies
- [X] list_tags_for_resource
- [ ] list_test_recommendations
- [ ] list_unsupported_app_version_resources
- [X] publish_app_version
- [ ] put_draft_app_version_template
- [ ] reject_resource_grouping_recommendations
- [ ] remove_draft_app_version_resource_mappings
- [ ] resolve_app_version_resources
- [ ] start_app_assessment
- [ ] start_resource_grouping_recommendation_task
- [X] tag_resource
- [X] untag_resource
- [ ] update_app
Expand Down
4 changes: 4 additions & 0 deletions docs/docs/services/sagemaker.rst
Original file line number Diff line number Diff line change
Expand Up @@ -292,6 +292,10 @@ sagemaker
- [ ] render_ui_template
- [ ] retry_pipeline_execution
- [X] search

Only a few SearchExpressions are implemented. Please open a bug report if you find any issues.


- [ ] send_pipeline_execution_step_failure
- [ ] send_pipeline_execution_step_success
- [ ] start_edge_deployment_stage
Expand Down
2 changes: 2 additions & 0 deletions moto/appmesh/dataclasses/mesh.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from typing import Any, Dict, List, Literal, Optional

from moto.appmesh.dataclasses.shared import Metadata, Status
from moto.appmesh.dataclasses.virtual_node import VirtualNode
from moto.appmesh.dataclasses.virtual_router import VirtualRouter


Expand All @@ -18,6 +19,7 @@ class Mesh:
spec: MeshSpec
status: Status
tags: List[Dict[str, str]]
virtual_nodes: Dict[str, VirtualNode] = field(default_factory=dict)
virtual_routers: Dict[str, VirtualRouter] = field(default_factory=dict)

def to_dict(self) -> Dict[str, Any]: # type ignore[misc]
Expand Down
Loading

0 comments on commit 204b966

Please sign in to comment.