Class Repository

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.Resource
software.amazon.awscdk.services.codecommit.Repository
All Implemented Interfaces:
IResource, IRepository, INotificationRuleSource, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.97.0 (build 729de35)", date="2024-04-18T17:54:14.135Z") @Stability(Stable) public class Repository extends Resource implements IRepository
Provides a CodeCommit Repository.

Example:

 PipelineProject project;
 Repository repository = Repository.Builder.create(this, "MyRepository")
         .repositoryName("MyRepository")
         .build();
 PipelineProject project = new PipelineProject(this, "MyProject");
 Artifact sourceOutput = new Artifact();
 CodeCommitSourceAction sourceAction = CodeCommitSourceAction.Builder.create()
         .actionName("CodeCommit")
         .repository(repository)
         .output(sourceOutput)
         .build();
 CodeBuildAction buildAction = CodeBuildAction.Builder.create()
         .actionName("CodeBuild")
         .project(project)
         .input(sourceOutput)
         .outputs(List.of(new Artifact())) // optional
         .executeBatchBuild(true) // optional, defaults to false
         .combineBatchBuildArtifacts(true)
         .build();
 Pipeline.Builder.create(this, "MyPipeline")
         .stages(List.of(StageProps.builder()
                 .stageName("Source")
                 .actions(List.of(sourceAction))
                 .build(), StageProps.builder()
                 .stageName("Build")
                 .actions(List.of(buildAction))
                 .build()))
         .build();
 
  • Constructor Details

    • Repository

      protected Repository(software.amazon.jsii.JsiiObjectRef objRef)
    • Repository

      protected Repository(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • Repository

      @Stability(Stable) public Repository(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull RepositoryProps props)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      props - This parameter is required.
  • Method Details

    • fromRepositoryArn

      @Stability(Stable) @NotNull public static IRepository fromRepositoryArn(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull String repositoryArn)
      Imports a codecommit repository.

      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      repositoryArn - (e.g. arn:aws:codecommit:us-east-1:123456789012:MyDemoRepo). This parameter is required.
    • fromRepositoryName

      @Stability(Stable) @NotNull public static IRepository fromRepositoryName(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull String repositoryName)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      repositoryName - This parameter is required.
    • bindAsNotificationRuleSource

      @Stability(Stable) @NotNull public NotificationRuleSourceConfig bindAsNotificationRuleSource(@NotNull software.constructs.Construct _scope)
      Returns a source configuration for notification rule.

      Specified by:
      bindAsNotificationRuleSource in interface INotificationRuleSource
      Parameters:
      _scope - This parameter is required.
    • grant

      @Stability(Stable) @NotNull public Grant grant(@NotNull IGrantable grantee, @NotNull @NotNull String... actions)
      Grant the given principal identity permissions to perform the actions on this repository.

      Specified by:
      grant in interface IRepository
      Parameters:
      grantee - This parameter is required.
      actions - This parameter is required.
    • grantPull

      @Stability(Stable) @NotNull public Grant grantPull(@NotNull IGrantable grantee)
      Grant the given identity permissions to pull this repository.

      Specified by:
      grantPull in interface IRepository
      Parameters:
      grantee - This parameter is required.
    • grantPullPush

      @Stability(Stable) @NotNull public Grant grantPullPush(@NotNull IGrantable grantee)
      Grant the given identity permissions to pull and push this repository.

      Specified by:
      grantPullPush in interface IRepository
      Parameters:
      grantee - This parameter is required.
    • grantRead

      @Stability(Stable) @NotNull public Grant grantRead(@NotNull IGrantable grantee)
      Grant the given identity permissions to read this repository.

      Specified by:
      grantRead in interface IRepository
      Parameters:
      grantee - This parameter is required.
    • notifiyOnPullRequestMerged

      @Stability(Stable) @NotNull public INotificationRule notifiyOnPullRequestMerged(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a pull request is merged.

      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifiyOnPullRequestMerged

      @Stability(Stable) @NotNull public INotificationRule notifiyOnPullRequestMerged(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a pull request is merged.

      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notify

      @Stability(Stable) @NotNull public Repository notify(@NotNull String arn, @Nullable RepositoryTriggerOptions options)
      Create a trigger to notify another service to run actions on repository events.

      Parameters:
      arn - Arn of the resource that repository events will notify. This parameter is required.
      options - Trigger options to run actions.
    • notify

      @Stability(Stable) @NotNull public Repository notify(@NotNull String arn)
      Create a trigger to notify another service to run actions on repository events.

      Parameters:
      arn - Arn of the resource that repository events will notify. This parameter is required.
    • notifyOn

      @Stability(Stable) @NotNull public INotificationRule notifyOn(@NotNull String id, @NotNull INotificationRuleTarget target, @NotNull RepositoryNotifyOnOptions options)
      Defines a CodeStar Notification rule triggered when the project events specified by you are emitted. Similar to onEvent API.

      You can also use the methods to define rules for the specific event emitted. eg: notifyOnPullRequstCreated.

      Specified by:
      notifyOn in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options - This parameter is required.
      Returns:
      CodeStar Notifications rule associated with this repository.
    • notifyOnApprovalRuleOverridden

      @Stability(Stable) @NotNull public INotificationRule notifyOnApprovalRuleOverridden(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when an approval rule is overridden.

      Specified by:
      notifyOnApprovalRuleOverridden in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnApprovalRuleOverridden

      @Stability(Stable) @NotNull public INotificationRule notifyOnApprovalRuleOverridden(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when an approval rule is overridden.

      Specified by:
      notifyOnApprovalRuleOverridden in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnApprovalStatusChanged

      @Stability(Stable) @NotNull public INotificationRule notifyOnApprovalStatusChanged(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when an approval status is changed.

      Specified by:
      notifyOnApprovalStatusChanged in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnApprovalStatusChanged

      @Stability(Stable) @NotNull public INotificationRule notifyOnApprovalStatusChanged(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when an approval status is changed.

      Specified by:
      notifyOnApprovalStatusChanged in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnBranchOrTagCreated

      @Stability(Stable) @NotNull public INotificationRule notifyOnBranchOrTagCreated(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a new branch or tag is created.

      Specified by:
      notifyOnBranchOrTagCreated in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnBranchOrTagCreated

      @Stability(Stable) @NotNull public INotificationRule notifyOnBranchOrTagCreated(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a new branch or tag is created.

      Specified by:
      notifyOnBranchOrTagCreated in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnBranchOrTagDeleted

      @Stability(Stable) @NotNull public INotificationRule notifyOnBranchOrTagDeleted(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a branch or tag is deleted.

      Specified by:
      notifyOnBranchOrTagDeleted in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnBranchOrTagDeleted

      @Stability(Stable) @NotNull public INotificationRule notifyOnBranchOrTagDeleted(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a branch or tag is deleted.

      Specified by:
      notifyOnBranchOrTagDeleted in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnPullRequestComment

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestComment(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a comment is made on a pull request.

      Specified by:
      notifyOnPullRequestComment in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnPullRequestComment

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestComment(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a comment is made on a pull request.

      Specified by:
      notifyOnPullRequestComment in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnPullRequestCreated

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestCreated(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a pull request is created.

      Specified by:
      notifyOnPullRequestCreated in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnPullRequestCreated

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestCreated(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a pull request is created.

      Specified by:
      notifyOnPullRequestCreated in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • notifyOnPullRequestMerged

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestMerged(@NotNull String id, @NotNull INotificationRuleTarget target, @Nullable NotificationRuleOptions options)
      Defines a CodeStar Notification rule which triggers when a pull request is merged.

      Specified by:
      notifyOnPullRequestMerged in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
      options -
    • notifyOnPullRequestMerged

      @Stability(Stable) @NotNull public INotificationRule notifyOnPullRequestMerged(@NotNull String id, @NotNull INotificationRuleTarget target)
      Defines a CodeStar Notification rule which triggers when a pull request is merged.

      Specified by:
      notifyOnPullRequestMerged in interface IRepository
      Parameters:
      id - This parameter is required.
      target - This parameter is required.
    • onCommentOnCommit

      @Stability(Stable) @NotNull public Rule onCommentOnCommit(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a comment is made on a commit.

      Specified by:
      onCommentOnCommit in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onCommentOnCommit

      @Stability(Stable) @NotNull public Rule onCommentOnCommit(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a comment is made on a commit.

      Specified by:
      onCommentOnCommit in interface IRepository
      Parameters:
      id - This parameter is required.
    • onCommentOnPullRequest

      @Stability(Stable) @NotNull public Rule onCommentOnPullRequest(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a comment is made on a pull request.

      Specified by:
      onCommentOnPullRequest in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onCommentOnPullRequest

      @Stability(Stable) @NotNull public Rule onCommentOnPullRequest(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a comment is made on a pull request.

      Specified by:
      onCommentOnPullRequest in interface IRepository
      Parameters:
      id - This parameter is required.
    • onCommit

      @Stability(Stable) @NotNull public Rule onCommit(@NotNull String id, @Nullable OnCommitOptions options)
      Defines a CloudWatch event rule which triggers when a commit is pushed to a branch.

      Specified by:
      onCommit in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onCommit

      @Stability(Stable) @NotNull public Rule onCommit(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a commit is pushed to a branch.

      Specified by:
      onCommit in interface IRepository
      Parameters:
      id - This parameter is required.
    • onEvent

      @Stability(Stable) @NotNull public Rule onEvent(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers for repository events.

      Use rule.addEventPattern(pattern) to specify a filter.

      Specified by:
      onEvent in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onEvent

      @Stability(Stable) @NotNull public Rule onEvent(@NotNull String id)
      Defines a CloudWatch event rule which triggers for repository events.

      Use rule.addEventPattern(pattern) to specify a filter.

      Specified by:
      onEvent in interface IRepository
      Parameters:
      id - This parameter is required.
    • onPullRequestStateChange

      @Stability(Stable) @NotNull public Rule onPullRequestStateChange(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a pull request state is changed.

      Specified by:
      onPullRequestStateChange in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onPullRequestStateChange

      @Stability(Stable) @NotNull public Rule onPullRequestStateChange(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a pull request state is changed.

      Specified by:
      onPullRequestStateChange in interface IRepository
      Parameters:
      id - This parameter is required.
    • onReferenceCreated

      @Stability(Stable) @NotNull public Rule onReferenceCreated(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a reference is created (i.e. a new branch/tag is created) to the repository.

      Specified by:
      onReferenceCreated in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onReferenceCreated

      @Stability(Stable) @NotNull public Rule onReferenceCreated(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a reference is created (i.e. a new branch/tag is created) to the repository.

      Specified by:
      onReferenceCreated in interface IRepository
      Parameters:
      id - This parameter is required.
    • onReferenceDeleted

      @Stability(Stable) @NotNull public Rule onReferenceDeleted(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a reference is delete (i.e. a branch/tag is deleted) from the repository.

      Specified by:
      onReferenceDeleted in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onReferenceDeleted

      @Stability(Stable) @NotNull public Rule onReferenceDeleted(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a reference is delete (i.e. a branch/tag is deleted) from the repository.

      Specified by:
      onReferenceDeleted in interface IRepository
      Parameters:
      id - This parameter is required.
    • onReferenceUpdated

      @Stability(Stable) @NotNull public Rule onReferenceUpdated(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a reference is updated (i.e. a commit is pushed to an existing or new branch) from the repository.

      Specified by:
      onReferenceUpdated in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onReferenceUpdated

      @Stability(Stable) @NotNull public Rule onReferenceUpdated(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a reference is updated (i.e. a commit is pushed to an existing or new branch) from the repository.

      Specified by:
      onReferenceUpdated in interface IRepository
      Parameters:
      id - This parameter is required.
    • onStateChange

      @Stability(Stable) @NotNull public Rule onStateChange(@NotNull String id, @Nullable OnEventOptions options)
      Defines a CloudWatch event rule which triggers when a "CodeCommit Repository State Change" event occurs.

      Specified by:
      onStateChange in interface IRepository
      Parameters:
      id - This parameter is required.
      options -
    • onStateChange

      @Stability(Stable) @NotNull public Rule onStateChange(@NotNull String id)
      Defines a CloudWatch event rule which triggers when a "CodeCommit Repository State Change" event occurs.

      Specified by:
      onStateChange in interface IRepository
      Parameters:
      id - This parameter is required.
    • getRepositoryArn

      @Stability(Stable) @NotNull public String getRepositoryArn()
      The ARN of this Repository.
      Specified by:
      getRepositoryArn in interface IRepository
    • getRepositoryCloneUrlGrc

      @Stability(Stable) @NotNull public String getRepositoryCloneUrlGrc()
      The HTTPS (GRC) clone URL.

      HTTPS (GRC) is the protocol to use with git-remote-codecommit (GRC).

      It is the recommended method for supporting connections made with federated access, identity providers, and temporary credentials.

      Specified by:
      getRepositoryCloneUrlGrc in interface IRepository
      See Also:
    • getRepositoryCloneUrlHttp

      @Stability(Stable) @NotNull public String getRepositoryCloneUrlHttp()
      The HTTP clone URL.
      Specified by:
      getRepositoryCloneUrlHttp in interface IRepository
    • getRepositoryCloneUrlSsh

      @Stability(Stable) @NotNull public String getRepositoryCloneUrlSsh()
      The SSH clone URL.
      Specified by:
      getRepositoryCloneUrlSsh in interface IRepository
    • getRepositoryName

      @Stability(Stable) @NotNull public String getRepositoryName()
      The human-visible name of this Repository.
      Specified by:
      getRepositoryName in interface IRepository