Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Git Interface #48

Open
philipsahli opened this issue Apr 8, 2018 · 0 comments
Open

Add Git Interface #48

philipsahli opened this issue Apr 8, 2018 · 0 comments

Comments

@philipsahli
Copy link
Contributor

philipsahli commented Apr 8, 2018

Until now code is read and synced to Dropbox App Directories.

Advantage:

  • Dev can write code on almost any device
  • the code can be synced back to Dropbox, when changed on UI

Disadvantage:

  • slow sync mechanism
  • current implementation does not scale
  • no habital versioning mechanism for Dev

The idea is now, that a Dev can push the code to Tumbo by a simple

git add remote ...
git push

or by specifing a URL pointing to a Git Repo.

To reduce the complexity on the backend implementation, we deactivate in this scenario edit mode on the web UI. Later on it might be added (changes can be put to a new branch).

Requirements

  • Implementation must support private Repo.

Implementation options

Provide Git Server

http://stewartjpark.com/2015/01/02/implementing-a-git-http-server-in-python.html

Add git to the flask

Read from Remote Git Server

  • Receive Webhook Call (https://developer.github.com/webhooks/)
  • Put message to RabbitMq Queue
  • Background task grabs the message
  • Git clone
  • Check diff between last known Commit and HEAD
  • Update files in Database
  • Done

Now a Base needs to be able

  • to configure as "Git Base" and to provide the Git Remote URL
  • display the current state (up to date, updating, done)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant