Compilações duplicadas acionadas no pipeline de várias filiais da Jenkins

Estamos vendo builds duplicados acionados em projetos de pipeline multibranch Jenkins. As compilações são normalmente acionadas usando notificações push do Bitbucket usando este plugin:https://marketplace.atlassian.com/plugins/com.nerdwin15.stash-stash-webhook-jenkins/server/overview

No entanto, agora estamos vendo compilações 'duplas' por algum motivo. Se você observar as duas compilações acionadas, uma é acionada por uma 'notificação de confirmação' e a outra é acionada por 'Indexação de ramificação'.

O que está causando a indexação de ramificação e por que está acionando uma compilação? Não estamos adicionando ou excluindo ramificações, é apenas um commit / push normal.

Para torná-lo mais complicado, isso não acontece o tempo todo. A certa altura, pensei que isso só acontecesse após a fusão, mas esse não é o caso. Além disso, uma maneira de impedir isso é excluir o histórico de compilação de um trabalho (o que obviamente não é o ideal).

Estamos definindo propriedades no trabalho a partir do script de pipeline, mas apenas para descartar construções antigas:

properties([buildDiscarder(logRotator(artifactDaysToKeepStr: '', artifactNumToKeepStr: '', daysToKeepStr: '', numToKeepStr: '20'))])

Outra fonte de confusão parece ser se alguém deve ter a pesquisa ativada (sem intervalo) para que as notificações por push funcionem no plug-in Git. A documentação do plug-in Git indica que isso é necessário e, de fato, parece ser para compilações de pipeline 'normais', mas não parece ser necessário para compilações de pipeline de várias filiais.Isso está correto? No wiki do Jenkins Git Plugin:

Isso verificará todos os trabalhos que:

Ative os gatilhos de compilação> Poll SCM. Nenhuma programação de votação é necessária. Estão configurados para criar o repositório na URL especificada Estão configurados para criar as ramificações especificadas opcionalmente ou confirmar o ID. Para trabalhos que atendem a essas condições, a pesquisa será acionada imediatamente. Se a pesquisa encontrar uma alteração digna de uma compilação, uma compilação será acionada.

Estamos usando o Bitbucket 4.8.4 e o Jenkins 2.30 (e todos os plugins de pipeline mais recentes).

questionAnswers(5)

yourAnswerToTheQuestion