Show / Hide Table of Contents

Namespace Amazon.CDK.AWS.CodeCommit

AWS CodeCommit Construct Library

--- cfn-resources: Stable cdk-constructs: Stable

AWS CodeCommit is a version control service that enables you to privately store and manage Git repositories in the AWS cloud.

For further information on CodeCommit, see the AWS CodeCommit documentation.

To add a CodeCommit Repository to your stack:

Repository repo = new Repository(this, "Repository", new RepositoryProps {
    RepositoryName = "MyRepositoryName",
    Description = "Some description."
});

Use the repositoryCloneUrlHttp, repositoryCloneUrlSsh or repositoryCloneUrlGrc property to clone your repository.

To add an Amazon SNS trigger to your repository:

Repository repo;


// trigger is established for all repository actions on all branches by default.
repo.Notify("arn:aws:sns:*:123456789012:my_topic");

Add initial commit

It is possible to initialize the Repository via the Code class. It provides methods for loading code from a directory, .zip file and from a pre-created CDK Asset.

Example:

Repository repo = new Repository(this, "Repository", new RepositoryProps {
    RepositoryName = "MyRepositoryName",
    Code = Code.FromDirectory(Join(__dirname, "directory/"), "develop")
});

Events

CodeCommit repositories emit Amazon CloudWatch events for certain activities. Use the repo.onXxx methods to define rules that trigger on these events and invoke targets as a result:

using Amazon.CDK.AWS.SNS;
using Amazon.CDK.AWS.Events.Targets;

Repository repo;
PipelineProject project;
Topic myTopic;


// starts a CodeBuild project when a commit is pushed to the "master" branch of the repo
repo.OnCommit("CommitToMaster", new OnCommitOptions {
    Target = new CodeBuildProject(project),
    Branches = new [] { "master" }
});

// publishes a message to an Amazon SNS topic when a comment is made on a pull request
Rule rule = repo.OnCommentOnPullRequest("CommentOnPullRequest", new OnEventOptions {
    Target = new SnsTopic(myTopic)
});

CodeStar Notifications

To define CodeStar Notification rules for Repositories, use one of the notifyOnXxx() methods. They are very similar to onXxx() methods for CloudWatch events:

using Amazon.CDK.AWS.Chatbot;

Repository repository;

SlackChannelConfiguration target = new SlackChannelConfiguration(this, "MySlackChannel", new SlackChannelConfigurationProps {
    SlackChannelConfigurationName = "YOUR_CHANNEL_NAME",
    SlackWorkspaceId = "YOUR_SLACK_WORKSPACE_ID",
    SlackChannelId = "YOUR_SLACK_CHANNEL_ID"
});
INotificationRule rule = repository.NotifyOnPullRequestCreated("NotifyOnPullRequestCreated", target);

Classes

CfnRepository

A CloudFormation AWS::CodeCommit::Repository.

CfnRepository.CodeProperty

Information about code to be committed.

CfnRepository.RepositoryTriggerProperty

Information about a trigger for a repository.

CfnRepository.S3Property

Information about the Amazon S3 bucket that contains the code that will be committed to the new repository.

CfnRepositoryProps

Properties for defining a CfnRepository.

Code

Represents the contents to initialize the repository with.

CodeConfig

Represents the structure to pass into the underlying CfnRepository class.

OnCommitOptions

Options for the onCommit() method.

ReferenceEvent

Fields of CloudWatch Events that change references.

Repository

Provides a CodeCommit Repository.

RepositoryEventTrigger

Repository events that will cause the trigger to run actions in another service.

RepositoryNotificationEvents

List of event types for AWS CodeCommit.

RepositoryNotifyOnOptions

Additional options to pass to the notification rule.

RepositoryProps
RepositoryTriggerOptions

Creates for a repository trigger to an SNS topic or Lambda function.

Interfaces

CfnRepository.ICodeProperty

Information about code to be committed.

CfnRepository.IRepositoryTriggerProperty

Information about a trigger for a repository.

CfnRepository.IS3Property

Information about the Amazon S3 bucket that contains the code that will be committed to the new repository.

ICfnRepositoryProps

Properties for defining a CfnRepository.

ICodeConfig

Represents the structure to pass into the underlying CfnRepository class.

IOnCommitOptions

Options for the onCommit() method.

IRepository
IRepositoryNotifyOnOptions

Additional options to pass to the notification rule.

IRepositoryProps
IRepositoryTriggerOptions

Creates for a repository trigger to an SNS topic or Lambda function.

Back to top Generated by DocFX