Our company has a private GitHub repository for the project I’m working on. After a full summer of work, it looks like we’ll be launching this week (wheee!). However, I want to include a “submit a bug” link in the program that leads to a form somewhere where the user can fill out a form that becomes an issue for us on GitHub. Googling around hasn’t found any solution (or someone who has the same problem).
Is this possible (through some API, perhaps?) or will I have to manually enter the bugs my users report?
3
I don’t think the API is going to help you in this case. Because the project is private no one that is not logged in AND has access to the project will be able to do anything with the project, including creating tickets.
If you use the Github API you’ll have to include the username and password to an account that is a collaborator on the project. Probably not a great idea.
Your next option would be to create a public project with a similar name, but without the code. Then you can use that project to track the external customer bugs.
1
Someone on reddit created an open source Project called Gitreports where you can sign up and it will give you a unique URL you can give to your clients and they can submit bugs even to private repos without ever seeing code.
If this seems shady to you, you can host it yourself
May be it can help. I had this need to allow non GitHub users to open new issues so I made a custom Google Apps Script linked to a Google Forms to open issues on the repository of the project.
User without GitHub account fill the form, then the apps script will push title and message in the repository issues. The apps script use OAuth2 to connect to my GitHub account to post the issues.
Bad side of this solution is, I’m the owner of issues created with the anonymous form. This was acceptable for me, I prefer to have the issue instead of log the issues in another system.
If you are interested you can check out my article : http://ez34.net/2016/12/publish-anonymous-issues-on-github.html
Stéphane
1
The Redmine turnkey linux appliance is available free for your own hosting or through the Amazon cloud (just pay and turn it on). Redmine allows for ticket submission through email, so you’re users could have your users send in the tickets that way. Redmine also allows for anonymous users to add tickets, if you set up the permissions that way.
Since the appliance is a complete linux box, you can have a cron job or push notification that runs a script and adds the new ticket to the private github repo. The github API also allows for getting issues, so you could have the script keep the redmine box up to date too.
Personally, I’d just use the Redmine appliance by itself and have it monitoring the remote github repo.