Я следовал этому руководству https://ruddra.com/aws-codebuild-use-git-tags/, чтобы моя сборка кода в aws срабатывала только тогда, когда тег помещается в мой проект bitbucket, и это работает, если я ТОЛЬКО использую теги.
Здесь работает:
# make some code changes
git add .
git commit -m "changes"
git push origin HEAD # OK: codebuild not trigered as expected
git tag v1
git push origin HEAD --tags # SUCCESS: codebuild is triggered
но если я отмечу фиксацию:
# make some code changes
git add .
git commit -m "changes"
git tag v1
git push origin HEAD --tags # UNSUCCESS: codebuild is NOT triggered
это связано с выражением: ^refs/tags/.*
?
Полезная нагрузка Bitbucket
Я пытался выяснить это, проверив полезную нагрузку битбакета, кажется, когда хэш тега не соответствует текущему $CODEBUILD_SOURCE_VERSION
, он не будет проверять тег (пока что я думаю)
Рабочая полезная нагрузка (пуш-тег)
push.changes[0].type: "tag"
push.changes[0].target.hash: "6f08xxx", <== $CODEBUILD_SOURCE_VERSION
Нерабочая полезная нагрузка (push commit + tag)
push.changes[0].type: "branch"
push.changes[0].target.hash: "25b7xxx", <== $CODEBUILD_SOURCE_VERSION
push.changes[0].type: "tag"
push.changes[0].target.hash: "6f08xxx",
вы могли заметить, что 6f08xxx
повторяется, это потому, что во время моего тестирования я сначала попробовал нерабочие шаги, а затем я просто помечаю и нажимаю, поэтому я предполагаю, что хэш связан с проверкой тегов при сборке кода
Любая помощь в решении или отладке будет приветствоваться.
Спасибо за ваше время заранее