一个CodePipeline管道由CodeCommit中main分支的更改触发,使用CodeBuild进行构建/测试阶段,并使用CodeDeploy进行部署。在最近一次源更改后,CodeDeploy未能部署更新的应用程序。以下哪两种解释是可能的?(选择两项)
选择一个答案
点击一个选项来检查您的答案。
正确答案: 代码更改未提交到存储库的main分支。, 较早的管道阶段失败,管道在到达部署阶段之前停止。.
为什么这是答案
当CodePipeline由CodeCommit的main分支更改触发时,如果代码更改未提交到该分支,管道就不会启动,因此CodeDeploy也不会被调用。这是CodeDeploy未部署更新应用程序的一个直接原因。 另一个可能的原因是,CodePipeline是按顺序执行阶段的。如果构建/测试阶段(使用CodeBuild)失败,管道将停止执行,不会进入部署阶段。因此,CodeDeploy将不会被触发来部署应用程序。 公司CodePipeline集群中的Amazon EC2实例处于非活动状态与此场景无关,因为CodeDeploy是部署服务,而不是CodePipeline的集群。管道配置不正确,未调用CodeDeploy是一个潜在问题,但通常会在管道首次运行时发现,而不是在“最近一次源更改后”才出现。CodePipeline没有从CodeCommit存储库读取的权限会导致管道无法开始,但题目中提到管道是由更改触发的,这意味着它至少有读取权限。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡