Courseiva
Development with AWS ServiceseasyMultiple ChoiceObjective-mapped

DVA-C02 Development with AWS Services Practice Question

A company is using AWS CodePipeline to automate its CI/CD pipeline. The pipeline has a source stage that uses Amazon S3. The developer updates a file in the S3 bucket, but the pipeline does not start automatically. What is the MOST likely cause?

⚠ Common exam trap

A common mix-up: candidates assume the IAM role permissions (Option A) are the root cause, but the actual requirement is S3 versioning, which is a bucket-level configuration that enables event-driven pipeline starts.

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 versioning is not enabled on the bucket.

CodePipeline requires S3 versioning to be enabled on the source bucket to automatically detect changes and start the pipeline. Without versioning, CodePipeline cannot uniquely identify new object versions, so it relies on manual or scheduled polling instead of event-based triggers. Enabling versioning ensures that each PUT operation generates a new version ID, which CodePipeline uses to invoke the pipeline automatically.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • The IAM role for CodePipeline does not have s3:GetObject permission.

    Why it's wrong here

    The s3:GetObject permission is crucial for the CodePipeline IAM role, but its absence would prevent the pipeline from successfully fetching artifacts from the S3 source bucket after it has been triggered. This permission is not directly involved in the triggering mechanism itself, which relies on S3 event notifications. Therefore, if the pipeline is failing to trigger at all, a missing s3:GetObject permission is not the root cause, although it would certainly cause subsequent execution failures.

  • The pipeline is configured to use polling instead of event-based triggers.

    Why it's wrong here

    While CodePipeline can be configured to use polling, this is not the default or recommended method for S3 source actions due to increased latency and potential cost. If polling were configured, the pipeline would still eventually trigger based on a periodic check for changes, rather than failing to trigger entirely. The problem statement implies a failure of the immediate, event-driven triggering mechanism, which polling bypasses but does not resolve if the underlying event system is broken.

  • Amazon S3 versioning is not enabled on the bucket.

    Why this is correct

    Amazon S3 versioning is a mandatory prerequisite for CodePipeline source actions that monitor an S3 bucket for changes. CodePipeline relies on S3 event notifications, specifically s3:ObjectCreated:* events, to detect new or updated artifacts. Without versioning enabled on the S3 bucket, these critical event notifications may not be reliably generated or processed by CodePipeline, preventing the pipeline from automatically triggering upon artifact uploads.

  • AWS CloudTrail is not enabled.

    Why it's wrong here

    AWS CloudTrail is a service that records API calls and related events made in your AWS account, primarily for auditing, security analysis, and compliance. While valuable for monitoring and troubleshooting, CloudTrail is not an active component in the operational mechanism for triggering CodePipeline. S3 event notifications, which directly integrate with CodePipeline, operate independently of CloudTrail's logging capabilities and do not require CloudTrail to be enabled for pipeline triggers to function.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

About these practice questions

Courseiva writes every DVA-C02 question from scratch — 724 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DVA-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 DVA-C02 exam.