У меня есть угловой сайт, который я строю с ng build
.Мой конвейер выглядит следующим образом: source code -> Build -> Staging -> Approval -> Prod
У меня есть проблема, при которой, если в репо выдвигаются 2 коммита, скажем, коммит 1 (c1) и коммит 2 (c2), шаг утверждения будет выглядеть следующим образом: Он утвердит c1, который перейдет на стадию Prod, где мы делаем другую сборку, подобную этой ng build --prod
(для минимизации js-файлов), а затем на этапе утверждения автоматически начнется вторая сборка для C2.
Expected behavior
: Я ожидал, что одобрение получит только последний коммит в этом случае, скажем, C2 был последним, и только сборка C2, так как C1 был заменен C2.
Вот как выглядит мой этап одобренияв шаблоне:
Stages:
- Name: Source
Actions:
- Name: Source
ActionTypeId:
Category: Source
Owner: AWS
Version: 1
Provider: CodeCommit
Configuration:
RepositoryName: !Ref ProjectName
BranchName: master
OutputArtifacts:
- Name: checkout
RunOrder: 1
RoleArn:someRole
- Name: Dev
Actions:
-
Name: staging
ActionTypeId:
Category: Build
Owner: AWS
Version: 1
Provider: CodeBuild
Configuration:
ProjectName: !Ref CodeBuildProject
RunOrder: 1
InputArtifacts:
- Name: checkout
OutputArtifacts:
- Name: buildOutput
- Name: Approval
Actions:
-
InputArtifacts: []
Name: pushToProd
ActionTypeId:
Category: Approval
Owner: AWS
Version: '1'
Provider: Manual
OutputArtifacts: []
Configuration:
NotificationArn: arn:aws:sns:us-east-1:########:myApprovalTopic
ExternalEntityLink: http://myWebsite.s3-website-us-east-1.amazonaws.com/index.html
CustomData: Approving changes to Prod
RunOrder: 1
- Name: Prod
Actions:
-
Name: Prod
ActionTypeId:
Category: Build
Owner: AWS
Version: 1
Provider: CodeBuild
Configuration:
ProjectName: !Ref CodeBuildProd
RunOrder: 1
InputArtifacts:
- Name: checkout
OutputArtifacts:
- Name: OutputArtifactsProd
У кого-нибудь есть идеи, почему мой этап одобрения НЕ заберет последний коммит и будет построен только для PROD ТОЛЬКО ОДИН РАЗ после нажатия этой кнопки одобрения / обзора?Вместо этого он ставит в очередь коммиты и после нажатия кнопки подтверждения строит все коммиты в очереди в этом случае C1 и C2, а не только создает последний коммит: (