Skip to content

winterbaume-ecr

ECR service implementation for winterbaume.

Coverage

MetricValue
ServiceECR
AWS modelecr
ProtocolawsJson1.1
winterbaume coverage58/58 operations (100.0%)
stubs (routed, returns empty/default)0/58 operations (0.0%)
moto coverage29/58 operations (50.0%)
floci coverage0/58 operations (0.0%)
kumo coverage11/58 operations (19.0%)
Coverage report date2026-05-13

Server-mode usage

Start winterbaume-server and point the AWS CLI at it:

sh
cargo run -p winterbaume-server -- --host 127.0.0.1 --port 5555
sh
export AWS_ENDPOINT_URL=http://localhost:5555
aws ecr describe-repositories

Example

rust
use aws_sdk_ecr::config::BehaviorVersion;
use winterbaume_core::MockAws;
use winterbaume_ecr::EcrService;

#[tokio::main]
async fn main() {
    let mock = MockAws::builder().with_service(EcrService::new()).build();

    let config = aws_config::defaults(BehaviorVersion::latest())
        .http_client(mock.http_client())
        .credentials_provider(mock.credentials_provider())
        .region(aws_sdk_ecr::config::Region::new("us-east-1"))
        .load()
        .await;

    let client = aws_sdk_ecr::Client::new(&config);

    let resp = client
        .describe_repositories()
        .send()
        .await
        .expect("describe_repositories should succeed");
    println!("ECR repositories: {}", resp.repositories().len());
}

Implemented APIs (58)

  • BatchCheckLayerAvailability
  • BatchDeleteImage
  • BatchGetImage
  • BatchGetRepositoryScanningConfiguration
  • CompleteLayerUpload
  • CreatePullThroughCacheRule
  • CreateRepository
  • CreateRepositoryCreationTemplate
  • DeleteLifecyclePolicy
  • DeletePullThroughCacheRule
  • DeleteRegistryPolicy
  • DeleteRepository
  • DeleteRepositoryCreationTemplate
  • DeleteRepositoryPolicy
  • DeleteSigningConfiguration
  • DeregisterPullTimeUpdateExclusion
  • DescribeImageReplicationStatus
  • DescribeImageScanFindings
  • DescribeImageSigningStatus
  • DescribeImages
  • DescribePullThroughCacheRules
  • DescribeRegistry
  • DescribeRepositories
  • DescribeRepositoryCreationTemplates
  • GetAccountSetting
  • GetAuthorizationToken
  • GetDownloadUrlForLayer
  • GetLifecyclePolicy
  • GetLifecyclePolicyPreview
  • GetRegistryPolicy
  • GetRegistryScanningConfiguration
  • GetRepositoryPolicy
  • GetSigningConfiguration
  • InitiateLayerUpload
  • ListImageReferrers
  • ListImages
  • ListPullTimeUpdateExclusions
  • ListTagsForResource
  • PutAccountSetting
  • PutImage
  • PutImageScanningConfiguration
  • PutImageTagMutability
  • PutLifecyclePolicy
  • PutRegistryPolicy
  • PutRegistryScanningConfiguration
  • PutReplicationConfiguration
  • PutSigningConfiguration
  • RegisterPullTimeUpdateExclusion
  • SetRepositoryPolicy
  • StartImageScan
  • StartLifecyclePolicyPreview
  • TagResource
  • UntagResource
  • UpdateImageStorageClass
  • UpdatePullThroughCacheRule
  • UpdateRepositoryCreationTemplate
  • UploadLayerPart
  • ValidatePullThroughCacheRule

Released under the Apache-2.0 License. This project is not affiliated with or endorsed by Amazon Web Services.