Courseiva
Question 666 of 247
Deployment, Provisioning, and AutomationmediumMultiple ChoiceObjective-mapped

SOA-C02 Deployment, Provisioning, and Automation Practice Question

A company is using AWS CodePipeline to automate their CI/CD pipeline. The pipeline includes a deployment stage that uses AWS CloudFormation to deploy infrastructure. The company wants to add a manual approval step before the CloudFormation deployment. How should this be configured?

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

Add a manual approval action in the pipeline before the CloudFormation deployment stage.

AWS CodePipeline has a built-in approval action that pauses the pipeline at a specified stage until a manual approval is granted. This allows a human to review and approve before the CloudFormation deployment proceeds. Option A is wrong because a CloudFormation change set action creates a change set for review but does not pause the pipeline; the pipeline continues unless manually stopped separately. Option B is wrong because Amazon SNS alone sends notifications but does not pause the pipeline; you would need an approval action to block execution. Option D is wrong because an AWS Lambda function cannot block the pipeline; it can notify but the pipeline will continue unless an approval action is used.

Answer analysis

Option-by-option breakdown

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

  • Add a CloudFormation change set action before the deployment.

    Why it's wrong here

    A CloudFormation change set action executes AWS CloudFormation's CreateChangeSet and optionally ExecuteChangeSet operations; it is meant to preview or apply stack changes, not to suspend the pipeline. While you can use a change set to review intended modifications in the console, the pipeline action itself completes and the execution proceeds to the next stage automatically. There is no built-in wait state or approval mechanism associated with the change set action unless you also insert a separate manual approval step before it, so this alone cannot require confirmation.

  • Configure an Amazon SNS topic to send a notification and require a confirmation.

    Why it's wrong here

    An SNS topic configured to send a notification and require a confirmation simply publishes a message to subscribers and tracks delivery status; it does not have any integration with CodePipeline's execution engine to pause or gate the run. Without an associated Approval action, the pipeline continues immediately after the notification action completes, never waiting for a human response. Even if subscribers confirm receipt, that confirmation is not routed back to CodePipeline as an approve/reject decision, so it cannot block the CloudFormation deployment.

  • Add a manual approval action in the pipeline before the CloudFormation deployment stage.

    Why this is correct

    In CodePipeline, a manual approval action is a stage action with category Approval that pauses the pipeline execution at that point. Once the action is reached, the pipeline enters a Wait state and notifies designated approvers via SNS; deployment to CloudFormation proceeds only after an authorized IAM user or role approves the change. This is the native mechanism designed to block progression until human sign-off, making it the correct way to require confirmation before deployment.

  • Use an AWS Lambda function to send an email and wait for a response.

    Why it's wrong here

    Incorrect. An AWS Lambda function can send notifications but cannot pause the pipeline. It would need to be used in conjunction with a custom workflow, and the pipeline would not wait for its response without an approval action.

Quick reference

Cloud Service Model Comparison

ModelYou ManageProvider ManagesExamples
IaaSOS, runtime, apps, dataHardware, hypervisor, networkingEC2, Azure VMs, GCP Compute Engine
PaaSApps and dataOS, runtime, middleware, hardwareElastic Beanstalk, Azure App Service
SaaSData and settings onlyEverything elseMicrosoft 365, Salesforce, Workday
FaaS / ServerlessFunction code onlyInfra, scaling, runtimeLambda, Azure Functions, Cloud Run
CaaSContainers and appsKubernetes, OS, hardwareEKS, AKS, GKE

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Last reviewed: Jun 20, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

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