

# Source actions and change detection methods
<a name="change-detection-methods"></a>

When you add a source action to your pipeline, the actions work with additional resources described in the table.

**Note**  
The CodeCommit and S3 source actions require either a configured change detection resource (an EventBridge rule) or use the option to poll the repository for source changes. For pipelines with a Bitbucket, GitHub, or GitHub Enterprise Server source action, you do not have to set up a webhook or default to polling. The connections action manages change detection for you. 


****  

| Source | Uses additional resources? | Steps | 
| --- | --- | --- | 
| Amazon S3 with CloudTrail resources | This source action uses an event rule and additional CloudTrail resources. When you use the CLI or CloudFormation to create this action, you also create and manage these resources. | See [Create a pipeline, stages, and actions](pipelines-create.md) and [Connecting to Amazon S3 source actions that use EventBridge and AWS CloudTrail](create-cloudtrail-S3-source.md)  | 
| Amazon S3 without CloudTrail resources | This source action uses a bucket enabled for events with an event rule without the need for additional CloudTrail resources. When you use the CLI or CloudFormation to create this action, you also create and manage these resources. | See [Create a pipeline, stages, and actions](pipelines-create.md) and [Connecting to Amazon S3 source actions with a source enabled for events](create-S3-source-events.md)  | 
| Bitbucket Cloud | This source action uses a connection resource. | See [Bitbucket Cloud connections](connections-bitbucket.md) | 
| AWS CodeCommit | Amazon EventBridge (recommended). This is the default for pipelines with an CodeCommit source created or edited in the console. | See [Create a pipeline, stages, and actions](pipelines-create.md) and [CodeCommit source actions and EventBridge](triggering.md) | 
| Amazon ECR | Amazon EventBridge. This is created by the wizard for pipelines with an Amazon ECR source created or edited in the console. | See [Create a pipeline, stages, and actions](pipelines-create.md) and [Amazon ECR source actions and EventBridge resources](create-cwe-ecr-source.md). | 
| GitHub or GitHub Enterprise Cloud | This source action uses a connection resource. | See [GitHub connections](connections-github.md) | 
| GitHub Enterprise Server | This source action uses a connection resource and a host resource. | See [GitHub Enterprise Server connections](connections-ghes.md) | 
| GitLab.com | This source action uses a connection resource. | See [GitLab.com connections](connections-gitlab.md) | 
| GitLab self-managed | This source action uses a connection resource and a host resource. | See [Connections for GitLab self-managed](connections-gitlab-managed.md) | 

If you have a pipeline that uses polling, you can update it to use the recommended detection method. For more information, see [Update polling pipelines to the recommended change detection method](trigger-S3-migration-cwe.md).

If you want to turn off change detection for a source action that uses connections, see [CodeStarSourceConnection for Bitbucket Cloud, GitHub, GitHub Enterprise Server, GitLab.com, and GitLab self-managed actions](action-reference-CodestarConnectionSource.md).

**Topics**