No momento, estou enfrentando um problema com a integração do Jenkins <> Github devido às alterações de autenticação do Github de hoje, depreciando a autenticação de usuário/passagem e o plug-in de origem da ramificação do Github atual.
Informações de descontinuação: https://developer.github.com/changes/2020-02-14-deprecating-password-auth/#removal
Plugin: https://github.com/jenkinsci/github-branch-source-plugin
- Jenkins: 2.249.3
- Plugin de origem da ramificação do Github 2.9.1 (mais recente)
- Esta instalação do jenkins é apenas privada (não voltada para o público)
- O repositório que está sendo acessado é privado (não voltado para o público)
- O token do Github tem acesso total ao repositório
Questão:
O plugin força a autenticação de usuário/passagem que o Github não aceita mais. As instruções indicam para colocar o TOKEN no campo de senha, mas ainda reclama depois que eu fiz isso:
A API não pode ser acessada usando autenticação de nome de usuário/senha
https://developer.github.com/changes/2020-02-14-deprecating-password-auth/#removal
As instruções indicam: "Somente credenciais de nome de usuário/senha são suportadas" e instruem a adicionar o Token no campo de senha (a captura de tela mostra isso)
A captura de tela em anexo mostra o desastre claramente:
Perguntas para ServerFault:
- Estou inserindo o token errado para as credenciais? Eu tentei:
- um usuário nulo, com o token como a senha
- O token como usuário e passe
- A descrição do token como o usuário, com o token como a senha
- Normalmente, eu enviaria um problema do Github a um desenvolvedor sobre um problema de aplicativo. No entanto, como não há um componente "Problemas" para enviar problemas ao desenvolvedor do plug-in, queria fazer minha pergunta aqui, caso outros tenham atingido isso.
Exatamente a mesma história aqui. Seu post me inspirou a cavar mais fundo e encontrei uma solução.
Vá para a "Configuração do sistema" (desculpe, meu navegador está configurado para alemão e não sei o texto exato) e crie novas credenciais para o servidor GitHub no formato "Texto secreto". Use o Token de Acesso Pessoal como segredo e descreva-o.
Verifique com o botão "Testar conexão". Deve imprimir o seguinte:
Credentials verified for user your-cool-username, rate limit: 4876
Configurações do servidor da API do GitHub
Agora, no projeto, ele ainda me força a usar credenciais de nome de usuário/senha, mas de alguma forma parece funcionar com as configurações globais da API do GitHub que alteramos.
Minhas configurações de credencial de nome de usuário/senha
Existem referências no código dos plugins sobre checkout via SSH (veja aqui no repo ), mas não consegui encontrar uma maneira de usar a autenticação de chave. Intriga-me um pouco que minha solução funcione, eu não esperava isso.
Edit: Na verdade, encontrei um checkout via opção de checkout SSH , não tenho certeza/espero fazer melhor.
Nenhum deles funcionou para mim, no entanto
fez.
Mesma questão aqui. Criar um novo token com o link nos documentos do plug-in de origem do Github Branch e adicionar uma nova credencial com nome de usuário e token resolveu o problema para nós.
Acho que a solução de @andreas-bretschneider não usa esse plugin, apenas trabalhos individuais e integração global do github (que não resolveu o problema para nós).