Como posso obter um usuário anônimo para enviar bugs em um projeto privado do GitHub?

10

Nossa empresa possui um repositório GitHub particular para o projeto em que estou trabalhando. Depois de um verão inteiro de trabalho, parece que estaremos lançando esta semana (wheee!). No entanto, quero incluir um link "enviar um bug" no programa que leve a um formulário em algum lugar onde o usuário possa preencher um formulário que se torna um problema para nós no GitHub. O Google não encontrou nenhuma solução (ou alguém que tenha o mesmo problema).

Isso é possível (por meio de alguma API, talvez?) Ou terei que inserir manualmente os erros relatados por meus usuários?

SomeKittens
fonte
Não é uma resposta, pois são apenas links, mas a API do Github é o que você está procurando. Criando problemas especificamente . Se você fizer isso, seria bom se você voltasse e adicionasse um exemplo com código sobre como usá-lo.
Jacob Schoen
2
Também não é uma resposta: considere um formulário mais simples (barreira mais baixa para o usuário) que apenas envia um e-mail. Quando você está iniciando, qualquer usuário que dedique algum tempo para registrar um relatório de bug provavelmente será alguém com quem você deseja se envolver pessoalmente. Despejá-los no Github é realmente um desperdício de uma oportunidade.
grossvogel
Acho que, na verdade, você deve escrever isso como uma resposta @JacobSchoe, já que é uma boa abordagem, e atualmente a resposta aceita aqui diz incorretamente às pessoas que a API do github "não vai ajudar".
Harry Wood

Respostas:

10

Não acho que a API o ajude nesse caso. Como o projeto é privado, ninguém que não esteja logado E tenha acesso ao projeto poderá fazer qualquer coisa com o projeto, incluindo a criação de tickets.

Se você usar a API do Github, precisará incluir o nome de usuário e a senha em uma conta que seja colaboradora do projeto. Provavelmente não é uma ótima idéia.

Sua próxima opção seria criar um projeto público com um nome semelhante, mas sem o código. Em seguida, você pode usar esse projeto para rastrear os erros externos do cliente.

Andrew T Finnell
fonte
3
É bastante comum um script do lado do servidor se autenticar com outro sistema usando credenciais privadas. Contanto que o arquivo de configurações com a senha seja mantido seguro em algum lugar, e seu próprio servidor esteja seguro ... isso é padrão. Por que "provavelmente não é uma boa idéia" ?
Harry Wood
7

Alguém no reddit criou um projeto de código aberto chamado Gitreports, onde você pode se inscrever e ele fornecerá uma URL única que você poderá fornecer aos seus clientes, e eles poderão enviar bugs até para repo privados, sem nunca ver o código.

Se isso lhe parecer obscuro, você pode hospedá-lo

cristão
fonte
2

Pode ser que possa ajudar. Eu tinha essa necessidade de permitir que usuários não-GitHub abrissem novos problemas, então criei um script personalizado do Google Apps vinculado a um Formulários do Google para abrir problemas no repositório do projeto.

Usuário sem conta do GitHub preenche o formulário e, em seguida, o script de aplicativos envia o título e a mensagem nos problemas do repositório. O script de aplicativos usa o OAuth2 para conectar-se à minha conta do GitHub para postar os problemas.

O lado ruim dessa solução é que sou o proprietário dos problemas criados com o formulário anônimo. Isso foi aceitável para mim, eu prefiro ter o problema em vez de registrá-lo em outro sistema.

Se você estiver interessado, pode consultar este artigo: http://ez34.net/2016/12/publish-anonymous-issues-on-github.html

Encontrei também esta solução https://gitreports.com/, mas não a teste.

Stéphane

St3ph
fonte
0

O dispositivo Linux chave na mão Redmine está disponível gratuitamente para sua própria hospedagem ou através da nuvem da Amazon (basta pagar e ativá-lo). O Redmine permite o envio de tickets por e - mail , para que você possa fazer com que os usuários enviem os tickets dessa maneira. O Redmine também permite que usuários anônimos adicionem tickets, se você configurar as permissões dessa maneira.

Como o dispositivo é uma caixa Linux completa, você pode ter uma tarefa cron ou uma notificação por push que executa um script e adiciona o novo ticket ao repositório particular do github. A API do github também permite obter problemas , para que você também possa manter o script atualizado também.

Pessoalmente, eu usaria o dispositivo Redmine sozinho e o monitoraria o repositório remoto do github .

Spencer Rathbun
fonte