Як я можу змусити анонімного користувача надсилати помилки на приватний проект GitHub?


10

Наша компанія має приватне сховище GitHub для проекту, над яким я працюю. Після повного літа роботи, схоже, ми розпочнемо цей тиждень (уай!). Однак я хочу включити в програму посилання "подати помилку", яке веде до форми десь, де користувач може заповнити форму, яка стає проблемою для нас на GitHub. Гугл навколо не знайшов рішення (або хтось із такою ж проблемою).

Чи це можливо (через якийсь API, можливо?) Чи мені доведеться вручну вводити помилки, про які повідомляють мої користувачі?


Не відповідь, оскільки це лише посилання, але Github API - це те, що ви шукаєте. Конкретно створення питань . Якщо ви це зробите, було б добре, якби ви повернулися і додали приклад з кодом про те, як ним користуватися.
Якоб Шоен

2
Також не відповідь. Розгляньте простішу форму (нижній бар'єр для користувача), яка просто надсилає вам електронний лист. Поки ви лише запускаєте, будь-який користувач, який потребує часу, щоб подати звіт про помилку - це, мабуть, хтось, з ким ви хочете особисто зв’язатися. Звалити їх на Github - це фактично марна можливість.
grossvogel

Я думаю, що насправді слід написати це як відповідь @JacobSchoe, оскільки це приблизно хороший підхід, і в даний час прийнята відповідь тут неправильно говорить людям, що API github "не допоможе".
Гаррі Вуд

Відповіді:


10

Я не думаю, що API допоможе вам у цьому випадку. Оскільки проект приватний, ніхто, хто не ввійшов у систему І не має доступу до проекту, не зможе зробити нічого з проектом, включаючи створення квитків.

Якщо ви використовуєте API Github, вам потрібно буде включити ім’я користувача та пароль до облікового запису, який є співробітником проекту. Напевно, не чудова ідея.

Наступним вашим варіантом буде створення публічного проекту з подібною назвою, але без коду. Тоді ви можете використовувати цей проект для відстеження помилок зовнішніх клієнтів.


3
Досить часто для серверного скрипту існує автентифікація з іншою системою, використовуючи приватні облікові дані. Поки файл налаштувань із паролем десь зберігається в безпеці, а сам ваш сервер захищений ... це стандартні речі. Чому "напевно, не гарна ідея" ?
Гаррі Вуд

7

Хтось із reddit створив проект з відкритим кодом під назвою Gitreports, де ви можете зареєструватися, і він дасть вам унікальну URL-адресу, яку ви можете надати своїм клієнтам, і вони можуть надсилати помилки навіть на приватні репозитори, не бачачи коду.

Якщо це здається вам тінистим, ви можете влаштувати його самостійно


2

Можливо, це може допомогти. У мене була така необхідність, щоб дозволити користувачам, які не користуються GitHub, відкривати нові випуски, тому я створив спеціальний сценарій Google Apps, пов’язаний із Google Forms, щоб відкрити проблеми у сховищі проекту.

Користувач без облікового запису GitHub заповнює форму, тоді сценарій додатків буде висувати заголовок та повідомлення у проблемах із сховищем. Сценарій програм використовує OAuth2 для підключення до мого облікового запису GitHub для публікації проблем.

Погана сторона цього рішення в тому, що я є власником питань, створених за допомогою анонімної форми. Це було прийнятним для мене, я вважаю за краще випуск, а не журнал проблем в іншій системі.

Якщо ви зацікавлені, можете переглянути цю статтю: http://ez34.net/2016/12/publish-anonymous-isissue-on-github.html

Я знайшов і це рішення https://gitreports.com/, але не перевіряйте його.

Стефан


0

Прилад Linux Linux під ключ «під ключ» доступний безкоштовно для вашого власного хостингу або через хмару Amazon (просто оплатіть і ввімкніть його). Redmine дозволяє надсилати квитки електронною поштою , тож ви зможете користувачам надсилати квитки таким чином. Redmine також дозволяє анонімним користувачам додавати квитки, якщо ви налаштували дозволи таким чином.

Оскільки прилад - це повне вікно Linux, ви можете мати роботу з cron або надіслати повідомлення, яке запускає сценарій та додає новий квиток до приватного github repo. API github також дозволяє отримувати проблеми , тому у вас може бути сценарій, щоб оновити поле Redmine також оновлено.

Особисто я просто використовував прилад Redmine самостійно і мав його контролювати віддалений рето-github .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.