DVA-C02 · Question #257
A company is using AWS CodePipeline to deliver one of its applications. The delivery pipeline is triggered by changes to the main branch of an AWS CodeCommit repository and uses AWS CodeBuild to…
The correct answer is A. The change was not made in the main branch of the AWS CodeCommit repository. B. One of the earlier stages in the pipeline failed and the pipeline has terminated. CodeDeploy did not deploy updated code because either the change was made to a non-monitored branch or an upstream pipeline stage failed before CodeDeploy was invoked.
Question
A company is using AWS CodePipeline to deliver one of its applications. The delivery pipeline is triggered by changes to the main branch of an AWS CodeCommit repository and uses AWS CodeBuild to implement the test and build stages of the process and AWS CodeDeploy to deploy the application. The pipeline has been operating successfully for several months and there have been no modifications. Following a recent change to the application's source code, AWS CodeDeploy has not deployed the updated application as expected. What are the possible causes? (Choose two.)
Options
- AThe change was not made in the main branch of the AWS CodeCommit repository.
- BOne of the earlier stages in the pipeline failed and the pipeline has terminated.
- COne of the Amazon EC2 instances in the company's AWS CodePipeline cluster is inactive.
- DThe AWS CodePipeline is incorrectly configured and is not invoking AWS CodeDeploy.
- EAWS CodePipeline does not have permissions to access AWS CodeCommit.
How the community answered
(41 responses)- A59% (24)
- C27% (11)
- D10% (4)
- E5% (2)
Why each option
CodeDeploy did not deploy updated code because either the change was made to a non-monitored branch or an upstream pipeline stage failed before CodeDeploy was invoked.
CodePipeline is configured to trigger only on changes to the main branch. If a developer committed to a different branch, the pipeline would not be triggered and CodeDeploy would never receive the updated artifact.
CodePipeline executes stages sequentially. If the build or test stage in CodeBuild returns a failure, the pipeline terminates at that point and CodeDeploy is never invoked, leaving the old version deployed.
CodePipeline itself does not run on EC2 instances; it is a fully managed service. There is no concept of a 'CodePipeline cluster' on EC2.
The pipeline has been operating successfully for months without modification, making a misconfiguration of CodeDeploy invocation highly unlikely and not a root cause of a new failure.
If CodePipeline lacked permissions to access CodeCommit, the pipeline would not have been operating successfully for months. Permissions did not change, so this is not a plausible cause.
Concept tested: AWS CodePipeline stage failure and branch trigger behavior
Source: https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html
Community Discussion
No community discussion yet for this question.