У меня есть угловой сайт, который я создаю с помощью 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 вместо ТОЛЬКО СОЗДАНИЕ ПОСЛЕДНИЙ КОММЕТАЦИИ :(