Skip to content

winterbaume-codecommit

CodeCommit service implementation for winterbaume.

Coverage

MetricValue
ServiceCodeCommit
AWS modelcodecommit
ProtocolawsJson1.1
winterbaume coverage25/79 operations (31.6%)
stubs (routed, returns empty/default)0/79 operations (0.0%)
moto coverage3/79 operations (3.8%)
floci coverage0/79 operations (0.0%)
kumo coverage0/79 operations (0.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 codecommit list-repositories

Example

rust
use aws_sdk_codecommit::config::BehaviorVersion;
use winterbaume_codecommit::CodeCommitService;
use winterbaume_core::MockAws;

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

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

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

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

Implemented APIs (25)

  • CreateBranch
  • CreateCommit
  • CreatePullRequest
  • CreateRepository
  • DeleteBranch
  • DeleteFile
  • DeleteRepository
  • GetBranch
  • GetCommit
  • GetDifferences
  • GetFile
  • GetFolder
  • GetPullRequest
  • GetRepository
  • ListBranches
  • ListPullRequests
  • ListRepositories
  • ListTagsForResource
  • PutFile
  • TagResource
  • UntagResource
  • UpdateDefaultBranch
  • UpdatePullRequestStatus
  • UpdateRepositoryDescription
  • UpdateRepositoryName
Not yet implemented APIs (54)
  • AssociateApprovalRuleTemplateWithRepository
  • BatchAssociateApprovalRuleTemplateWithRepositories
  • BatchDescribeMergeConflicts
  • BatchDisassociateApprovalRuleTemplateFromRepositories
  • BatchGetCommits
  • BatchGetRepositories
  • CreateApprovalRuleTemplate
  • CreatePullRequestApprovalRule
  • CreateUnreferencedMergeCommit
  • DeleteApprovalRuleTemplate
  • DeleteCommentContent
  • DeletePullRequestApprovalRule
  • DescribeMergeConflicts
  • DescribePullRequestEvents
  • DisassociateApprovalRuleTemplateFromRepository
  • EvaluatePullRequestApprovalRules
  • GetApprovalRuleTemplate
  • GetBlob
  • GetComment
  • GetCommentReactions
  • GetCommentsForComparedCommit
  • GetCommentsForPullRequest
  • GetMergeCommit
  • GetMergeConflicts
  • GetMergeOptions
  • GetPullRequestApprovalStates
  • GetPullRequestOverrideState
  • GetRepositoryTriggers
  • ListApprovalRuleTemplates
  • ListAssociatedApprovalRuleTemplatesForRepository
  • ListFileCommitHistory
  • ListRepositoriesForApprovalRuleTemplate
  • MergeBranchesByFastForward
  • MergeBranchesBySquash
  • MergeBranchesByThreeWay
  • MergePullRequestByFastForward
  • MergePullRequestBySquash
  • MergePullRequestByThreeWay
  • OverridePullRequestApprovalRules
  • PostCommentForComparedCommit
  • PostCommentForPullRequest
  • PostCommentReply
  • PutCommentReaction
  • PutRepositoryTriggers
  • TestRepositoryTriggers
  • UpdateApprovalRuleTemplateContent
  • UpdateApprovalRuleTemplateDescription
  • UpdateApprovalRuleTemplateName
  • UpdateComment
  • UpdatePullRequestApprovalRuleContent
  • UpdatePullRequestApprovalState
  • UpdatePullRequestDescription
  • UpdatePullRequestTitle
  • UpdateRepositoryEncryptionKey

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