Jenkins notificação-poll-build falha com “Não git consumidores para URI ssh: // path”

7

Sempre que meu Jenkins é notificado sobre um novo git se compromete com meu repositório foo , obtenho a seguinte resposta de log / erro no cliente acionador:

Scheduled polling of foo
No git consumers for URI ssh://git@localhost:9777/path/to/foo.git

Esta notificação falha não inicia o edifício. Usando o manual "Construir Agora" começa a construir com sucesso.

Configuração

  • Eu tenho a instância do Jenkins ouvindo localhost:8666 .
  • Eu tenho o daemon SSH ouvindo localhost:9777 .
  • No Jenkins, tenho um projeto Maven baseado em git:
    • "Nome do projeto Maven" é foo .
    • "URL do repositório do Git" é ssh://git@localhost:9777/path/to/foo.git .
  • Nesse repositório nu , eu tenho um arquivo de gancho hooks/post-receive com conteúdo:

.

# this is file post-receive
curl http://localhost:8666/git/notifyCommit?url=ssh://git@localhost:9777/path/to/foo.git

Esta construção-em-confirmação-notificação costumava funcionar bem. Tenho a sensação de que parou de funcionar bem quando mudei da porta SSH padrão para 9777.

O que preciso fazer para que uma notificação de confirmação resulte em um acionador de criação bem-sucedido?

Arquivos de código-fonte possivelmente relevantes:

por Abdull 23.01.2014 / 02:45

3 respostas

5

Coisas para lembrar ao conectar um gancho a Jenkins:

  1. Espessura da opção Poll SCM nos Acionadores de Criação, deixando a área de texto "schedule" vazia

  2. o parâmetro url=xxx deve corresponder ao "URL do repositório" especificado na configuração do trabalho. Se é prefixado por ssh: // você deve mantê-lo na chamada de notificação

  3. Não se esqueça de push a change to the repo que você configurou! Para verificar se você tem alterações: http://jenkins-url:jenkins-port/job/JOB-NAME/scmPollLog/ deve conter "Alterações encontradas" na última linha.

Fonte: Docs do plugin Git

    
por 17.06.2014 / 07:58
0

Eu estava preso com a mesma coisa.

O problema é que não há mudança no seu git desde a última compilação. Basta fazer algumas alterações e, em seguida, usar o URL de notificação do Jenkins, ele funcionará.

Eu usei:

http://<jenkins-server_link>/git/notifyCommiturl=http://<gitrepo>.git
    
por 17.06.2014 / 00:25
-1

Você não precisa da parte ssh: //.

tente com:

curl http://localhost:8666/git/notifyCommit?url=git@localhost:9777/path/to/foo.git

    
por 20.03.2014 / 17:53

Tags