dwyl / github-backup

:octocat: :back: 🆙 Backup your GitHub Issues so you can still work when (they/you are) offline.
https://github-backup.herokuapp.com
GNU General Public License v2.0
32 stars 3 forks source link

Application Flow #11

Open SimonLab opened 6 years ago

SimonLab commented 6 years ago

Github App send events

The Github app will send the following events to the server:

Questions:

Server receive events

The server will receive a post request from the Github App for each Github app webhooks events (see above). The main role of the server is to determine the type of the events, this can be done based on the payload (and often the "action" value of the payload). Then the information of the payload is saved in database and files (see https://github.com/dwyl/github-backup/issues/3#issuecomment-365650695). Once the information is saved the server can add more information on the issue to let the Github users know how to access the backup data.

Questions:

Add "backup" link to issues

Once a backup of the issue has been created the server will update the issue/comment with a link to the "backup" app

Questions:

See backup

The users of a repository can access the backup of the issues/comments. The application needs to check the permission of the users and then display the information

Questions:

I try to describe the main steps of the flow, some parts need a lot of more details and we can create new issues for them. I am not sure especially on the last two section: how to add and represent the link to the "backup" app on Github issues and how the "backup" app display the information to the users. Let me konw which steps I have missed!

nelsonic commented 6 years ago

@SimonLab / @Cleop can you please check/confirm if you are able to edit this Drawing: https://drive.google.com/file/d/1EHjLPs6N2P_d49AVRfbYKDhWVXaiZtHg/view It should open in draw.io and requires that you are logged in with your @dwyl.com Google Account.

github-backup-flow

My Plan is to open an issue for each of these "boxes" and then add the Issue Number to the Diagram.

Cleop commented 6 years ago

@nelsonic - yes I can now I've authorised draw.io 👍

SimonLab commented 6 years ago

@nelsonic works for me too, thanks

Cleop commented 6 years ago

Nice diagram @nelsonic - What data is classified as meta and what is classified as rich text? Is rich text literally the comment and meta is all the data around when the comment was made, by whom etc?

nelsonic commented 6 years ago

@Cleop precisely. The Comments contain markdown and take up lots of space in the DB, so we want to store them in files (or some other "cheap" storage)