.. _implementedservice_ecr: .. |start-h3| raw:: html

.. |end-h3| raw:: html

=== ecr === |start-h3| Implemented features for this service |end-h3| - [ ] batch_check_layer_availability - [X] batch_delete_image - [X] batch_get_image The parameter AcceptedMediaTypes has not yet been implemented - [X] batch_get_repository_scanning_configuration - [ ] 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 - [ ] delete_signing_configuration - [ ] deregister_pull_time_update_exclusion - [ ] describe_image_replication_status - [X] describe_image_scan_findings This operation will return a static result by default. It is possible to configure a custom result using the Moto API. Here is some example code showing how this can be configured: .. sourcecode:: python # Dict with the exact response that you want to Moto to return example_response = { "imageScanFindings": { "enhancedFindings": [ ], "findingSeverityCounts": { "MEDIUM": 1, "UNTRIAGED": 1 } }, "registryId": 000000000000, "repositoryName": "reponame", "imageId": { "imageTag": "latest" }, "imageScanStatus": { "status": "COMPLETE", "description": "The scan was completed successfully." } } findings = { "results": [example_response], # Specify a region - us-east-1 by default "region": "us-west-1", } resp = requests.post( "http://motoapi.amazonaws.com/moto-api/static/ecr/scan-finding-results", json=findings, ) ecr = boto3.client("ecr", region_name="us-west-1") # Create an image and start a scan # ... # Return the findings for reponame:latest findings = ecr.describe_image_scan_findings( repositoryName="reponame", imageId={"imageTag": "latest"} ) findings.pop("ResponseMetadata") assert findings == example_response Note that the repository-name and imageTag/imageDigest should be an exact match. If you call `describe_image_scan_findings` with a repository/imageTag that is not part of any of the custom results, Moto will return a static default response. - [ ] describe_image_signing_status - [X] describe_images - [ ] describe_pull_through_cache_rules - [X] describe_registry - [X] describe_repositories maxResults and nextToken not implemented - [ ] describe_repository_creation_templates - [ ] get_account_setting - [ ] get_authorization_token - [ ] get_download_url_for_layer - [X] get_lifecycle_policy - [ ] get_lifecycle_policy_preview - [X] get_registry_policy - [X] get_registry_scanning_configuration - [X] get_repository_policy - [ ] get_signing_configuration - [ ] initiate_layer_upload - [ ] list_image_referrers - [X] list_images maxResults and filtering not implemented - [ ] list_pull_time_update_exclusions - [X] list_tags_for_resource - [ ] put_account_setting - [X] put_image - [X] put_image_scanning_configuration - [X] put_image_tag_mutability - [X] put_lifecycle_policy - [X] put_registry_policy - [X] put_registry_scanning_configuration - [X] put_replication_configuration - [ ] put_signing_configuration - [ ] register_pull_time_update_exclusion - [X] set_repository_policy - [X] start_image_scan - [ ] start_lifecycle_policy_preview - [X] tag_resource - [X] untag_resource - [ ] update_image_storage_class - [ ] update_pull_through_cache_rule - [ ] update_repository_creation_template - [ ] upload_layer_part - [ ] validate_pull_through_cache_rule