See: Description
| Interface | Description |
|---|---|
| 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`.
|
| CodeConfig |
(experimental) Represents the structure to pass into the underlying CfnRepository class.
|
| IRepository | |
| IRepository.Jsii$Default |
Internal default implementation for
IRepository. |
| OnCommitOptions |
(experimental) Options for the onCommit() method.
|
| RepositoryNotifyOnOptions |
(experimental) Additional options to pass to the notification rule.
|
| RepositoryProps |
Example:
|
| RepositoryTriggerOptions |
(experimental) Creates for a repository trigger to an SNS topic or Lambda function.
|
| Enum | Description |
|---|---|
| RepositoryEventTrigger |
(experimental) Repository events that will cause the trigger to run actions in another service.
|
| RepositoryNotificationEvents |
(experimental) List of event types for AWS CodeCommit.
|
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:
import software.amazon.awscdk.core.*;
Repository repo = Repository.Builder.create(this, "Repository")
.repositoryName("MyRepositoryName")
.description("Some description.")
.build();
Use the repositoryCloneUrlHttp, repositoryCloneUrlSsh or repositoryCloneUrlGrc
property to clone your repository.
To add an Amazon SNS trigger to your repository:
// Example automatically generated from non-compiling source. May contain errors.
// trigger is established for all repository actions on all branches by default.
repo.notify("arn:aws:sns:*:123456789012:my_topic");
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:
import software.amazon.awscdk.core.*;
import path.*;
Repository repo = Repository.Builder.create(this, "Repository")
.repositoryName("MyRepositoryName")
.code(Code.fromDirectory(join(__dirname, "directory/"), "develop"))
.build();
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:
// Example automatically generated from non-compiling source. May contain errors.
// starts a CodeBuild project when a commit is pushed to the "master" branch of the repo
repo.onCommit("CommitToMaster", Map.of(
"target", new CodeBuildProject(project),
"branches", List.of("master")));
// publishes a message to an Amazon SNS topic when a comment is made on a pull request
Object rule = repo.onCommentOnPullRequest("CommentOnPullRequest", Map.of(
"target", new SnsTopic(myTopic)));
To define CodeStar Notification rules for Repositories, use one of the notifyOnXxx() methods.
They are very similar to onXxx() methods for CloudWatch events:
// Example automatically generated from non-compiling source. May contain errors.
Object target = SlackChannelConfiguration.Builder.create(stack, "MySlackChannel")
.slackChannelConfigurationName("YOUR_CHANNEL_NAME")
.slackWorkspaceId("YOUR_SLACK_WORKSPACE_ID")
.slackChannelId("YOUR_SLACK_CHANNEL_ID")
.build();
Object rule = repository.notifyOnPullRequestCreated("NotifyOnPullRequestCreated", target);
Copyright © 2022. All rights reserved.