DOP-C02 - SDLC Automation (22% of the exam) - Section 1.1

Orchestrate multi-stage CI/CD pipelines with AWS CodePipeline, including source, build, test, manual approval and deploy stages and cross-account and cross-Region actions.

Design multi-stage AWS CodePipeline workflows that link source, build, test, manual approval, and deploy stages into a single automated delivery chain. Recognise when to use cross-account and cross-Region actions to deploy the same artefact into multiple environments.

AWS CodePipelinePipeline stagesCross-account actionsManual approval actions

Practice question for this objective

Free sampleSDLC Automationmedium

A company has one AWS CodePipeline that builds an application in eu-west-1 and must deploy the same artifact to AWS resources in both eu-west-1 and us-east-1 as separate deploy actions. The deploy action in us-east-1 fails because CodePipeline cannot find the build artifact in that Region. The team wants the pipeline to deploy reliably to both Regions while keeping a single pipeline definition. Which configuration is required for the cross-Region deploy action to work?

  • ASwitch the pipeline to polling-based source detection so the artifact is re-downloaded in each Region on every run, ensuring the us-east-1 deploy action can always locate a fresh copy of the build output.
  • BMove both deploy actions into a single stage with the same runOrder so they execute in parallel, which CodePipeline interprets as a signal to replicate the artifact into every Region automatically.
  • CDefine an artifact store in us-east-1 in addition to the home Region, so CodePipeline copies the build artifact into the us-east-1 bucket and the cross-Region deploy action can read it locally. Correct
  • DRecreate the build in us-east-1 as a second source-and-build pipeline, then chain it after the first, because a single CodePipeline cannot perform a deploy action in a Region other than its home Region.
Cross-Region CodePipeline actions require an artifact store defined in every Region the pipeline acts on so artifacts are replicated locally. When a CodePipeline has actions in more than one Region, an artifact store must be configured for each of those Regions; CodePipeline copies the input artifact into the bucket of the Region where the action runs, so a us-east-1 deploy action can read the replicated artifact rather than failing to find it.

Why A is wrong: Source detection mode governs how new commits trigger the pipeline, not where artifacts live per Region, so changing it does nothing to place the artifact in us-east-1 for the cross-Region deploy.

Why B is wrong: Parallel runOrder only controls execution sequence within a stage and never triggers cross-Region artifact replication, so the us-east-1 action would still fail to find the artifact.

Why C is correct: A cross-Region CodePipeline action requires an artifact store configured in each Region it acts on; CodePipeline then replicates the artifact into the us-east-1 bucket so the deploy action there can read it, fixing the missing-artifact failure within one pipeline.

Why D is wrong: CodePipeline does support cross-Region actions in one pipeline, so splitting into two pipelines is unnecessary duplication that contradicts the goal of a single pipeline definition.

See more DOP-C02 practice questions, answers explained.

Exam traps in SDLC Automation

Answers that look right on this material and are not. Each one is a distractor from a different question in the DOP-C02 bank for this domain.

  • Insert a Lambda invoke action that emails the release manager and then sleeps in a polling loop until a reply arrives, parsing the inbox to decide whether the pipeline should continue to production.

    Why it is wrong: An email-parsing Lambda is a fragile hand-rolled workflow that risks long-running invocations and weak audit trails, which is exactly the external tooling the team wants to avoid when a native approval action exists.

  • Insert an AWS Lambda invoke action that sends an email through Amazon SES and blocks the pipeline by sleeping until a reply arrives in a mailbox the function polls.

    Why it is wrong: This appears to pause and notify, but it is custom code that is fragile and does not capture an auditable approve or reject decision the way the native manual approval action does.

  • Place each deploy action in its own separate stage so the stages run concurrently, then add the integration-test action to the first deploy stage so it begins as soon as that stage starts.

    Why it is wrong: Stages in a CodePipeline run sequentially rather than concurrently, and placing the test in the first stage would start it before the other deploys finish, breaking the ordering requirement.

Examworthy is not affiliated with or endorsed by Amazon Web Services. Original, blueprint-aligned practice material only.