Auto: Falha do Git ao liberar (mas não tenho certeza do que falhou)

Criado em 21 out. 2019  ·  12Comentários  ·  Fonte: intuit/auto

Descreva o bug

Depois de vários inícios falsos, finalmente consegui lançar o relay-compiler-language-typescript novamente. Empurrar de travis foi um desafio de descobrir.

Aqui está a compilação bem-sucedida: https://travis-ci.org/relay-tools/relay-compiler-language-typescript/builds/600830491

Meu colega de trabalho fundiu um PR depois disso e resultou em uma nova falha

ℹ  info      Getting commits from v9.0.0 to HEAD

fatal: ambiguous argument 'v9.0.0..HEAD': unknown revision or path not in the working tree.

Use '--' to separate paths from revisions, like this:

'git <command> [<revision>...] -- [<file>...]'

Olhando através dos resultados da construção, não fica imediatamente claro _o que_ falhou.

A única coisa que ele não fez foi console.log a versão no final (porque falhou) ... mas os logs me levam a acreditar que deveria ter falhado antes de fazer todas as outras coisas.

Estou meio perplexo, ha. Alguma ideia?

documentation question

Todos 12 comentários

Acabei de passar por isso hoje. ambiguous argument 'v9.0.0..HEAD' deve ser corrigido por git fetch --tags para que env tenha todas as tags de que precisa para encontrar diffs

Obrigado pelo aviso @strass. Sinto que temos uma oportunidade aqui de verificar as coisas que esperamos e tentar agarrá-las, caso não existam.

mas os logs me levam a acreditar que deveria ter falhado muito antes de fazer todas as outras coisas.

Não tenho certeza se estamos vendo os logs corretos. Eles acabam muito antes que algo aconteça

Eu descobri o que aconteceu:

  1. https://github.com/relay-tools/relay-compiler-language-typescript/pull/147 mesclado 9:32 (Versão 1)
  2. https://github.com/relay-tools/relay-compiler-language-typescript/pull/139 mesclado 9:33 (Versão 2)
  3. Build 1 executa git checkout master && git pull origin && git branch --set-upstream-to origin/master master que inclui commit no Build 2
  4. O Build 1 é um lançamento importante para as alterações do build 2, embora o Build 1 tenha sido um "lançamento de salto"
  5. O Build 2 tenta liberar suas alterações, mas o Build 1 já o fez. Então, o CI falha

Parece que o problema é que travis não está no master ao executar a compilação para o commit de mesclagem, então você tem que fazer algum git fu. Aqui está como eu lido com isso para ações (observe a falta de git checkout master && git pull origin )

https://github.com/hipstersmoothie/create-check/blob/master/.github/workflows/push.yml#L41

@zephraph Você poderia adicionar uma página aos documentos explicando uma boa configuração de travis?

Acabei de passar por isso hoje. ambiguous argument 'v9.0.0..HEAD' deve ser corrigido por git fetch --tags para que env tenha todas as tags de que precisa para encontrar diffs

Abordei isso em https://github.com/intuit/auto/pull/626. Sinta-se à vontade para revisar e melhorar a mensagem @strass

@hipstersmoothie Eu também me pergunto o quanto deste auto deveria tentar fazer pelo usuário? Como, nesse caso, apenas tentar buscar as tags automaticamente.

Enviado com GitHawk

Eu abro para fazer auto para fazer um pouco mais desse trabalho, só não sei como seria na prática. Como você, seu caso, adicionar esse recurso criaria uma versão "vazia", ​​pois tudo já foi lançado. Em minha opinião, a melhor experiência é errar (talvez com uma mensagem melhor) quando o código foi liberado de outro branch.

Eu também não sei como tudo se comportaria se você estivesse executando shipit em um branch que está por trás da última tag

Vou fechar agora que o # 626 foi enviado.

Irá adicionar alguns documentos na configuração do travis.

Esta página foi útil?
0 / 5 - 0 avaliações