DOP-C02 SDLC Automation Practice Question
Which THREE AWS services can be used as a source action in AWS CodePipeline? (Choose three.)
⚠ Common exam trap
Many candidates confuse services that can be used as source actions (where code/artifacts originate) with services that can be used as deploy or test actions, leading them to incorrectly select CloudFormation (a deploy action) or DynamoDB (a database service) as source options.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Amazon S3
Amazon S3 is a supported source action in AWS CodePipeline because you can configure a pipeline to use an S3 bucket as a source location for your application code or artifacts. When you upload a new version of a file to the specified S3 bucket, CodePipeline can automatically detect the change (via Amazon CloudWatch Events or S3 event notifications) and start the pipeline execution. This is commonly used for deploying static websites or integrating with third-party CI/CD tools that output artifacts to S3.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Amazon S3
Why this is correct
Amazon S3 is a fully supported source action in AWS CodePipeline. You can store a single zip file or a set of files in an S3 bucket, and CodePipeline detects changes when the object version changes or via Amazon CloudWatch Events. The bucket must have versioning enabled so that each upload creates a new source artifact, which is then downloaded and extracted in the Source stage for subsequent build and deploy actions.
- ✗
Amazon DynamoDB
Why it's wrong here
Amazon DynamoDB is a NoSQL key-value and document database that stores application data, not application source code or build artifacts. CodePipeline source actions only support version-controlled, file-based repositories (like S3, CodeCommit, ECR, GitHub) that can produce immutable source artifacts. DynamoDB has no file versioning or artifact extraction mechanism, so it cannot be selected as a source action in a pipeline.
- ✓
AWS CodeCommit
Why this is correct
AWS CodeCommit is an AWS-native Git repository service that integrates natively as a CodePipeline source. You specify the repository name and branch, and CodePipeline uses a CloudWatch Events rule to trigger the pipeline on every push, or you can configure periodic polling. Since it is fully managed by AWS, no external credentials are required—the pipeline uses the CodeCommit ARN and IAM permissions to fetch the latest commit ID and clone the source.
- ✗
AWS CloudFormation
Why it's wrong here
AWS CloudFormation is an Infrastructure as Code service for provisioning resources via templates, not a source code repository or artifact store. In CodePipeline, CloudFormation is used as a deployment provider through actions like CreateUpdateStack or DeleteStack, which consume the template from a source artifact. It cannot serve as a source action because it does not store or version application code in a way that CodePipeline can poll or receive events from.
- ✓
GitHub (via webhook)
Why this is correct
GitHub is supported as a CodePipeline source action through either a webhook or a configured connection (via the GitHub App). The pipeline triggers on push events when you connect your GitHub repository, and CodePipeline fetches the commit SHA and clones the code into an artifact. This requires creating a connection (or OAuth app) in the pipeline's region and providing IAM permissions for the GitHub App, but it enables integration for repositories hosted externally.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
This DOP-C02 question is part of Courseiva's 1,298-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way this is tested on DOP-C02
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. Which TWO AWS services can be used as source actions in AWS CodePipeline to automatically trigger a pipeline when changes are made? (Choose two.)
easy- A.Amazon CloudWatch
- ✓ B.Amazon S3
- C.Amazon EC2
- D.AWS CloudFormation
- ✓ E.AWS CodeCommit
Why B: Amazon S3 is a valid source action in AWS CodePipeline because you can configure a pipeline to start when a new object is created or an existing object is updated in an S3 bucket. This is achieved by enabling Amazon S3 event notifications (via Amazon S3 Event Notifications) that send events to Amazon CloudWatch Events or directly to AWS CodePipeline using a CloudWatch Events rule, which then triggers the pipeline execution. This allows automatic pipeline runs on code or artifact changes stored in S3.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DOP-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DOP-C02 exam.