Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 43 lines (29 sloc) 0.945 kb
607ea95 @schacon added architecture notes
authored
1
2 Server
3 ================
4
5 == Workflow ==
6
7 * gets a request with a svn repo url
8 * contacts the repo and queries max revision number
9 * sees how many clients are live and federates the revisions
10 * sends each client it's job (url, start_rev, end_rev)
11 * polls clients occasionally
12 ** if one goes down, restarts it
13 * when client 1 is done (1-X revisions), clones the repo locally
14 * when clients 2-N are done, (in order), fetches the repo and rebases the commits
15 * updates project status table
16
17 == Methods ==
18
19 * ID = new_request(url, git_repo_name)
20 * status = request_status(ID)
21 * clear_request(ID)
22 * push_status(ID, status)
23
24
25 Client
26 ================
27
28 * connects to server, registers itself
29 * gets a url and revision range from server
30 * imports the svn to git
31 * returns clone url
32 * removes job from queue
33
34 == Methods ==
35
36 * ID = start_request(url, start_rev, end_rev)
37 * status = request_status(ID)
38 * url = get_clone_url(ID)
39 * load = client_status
40
41
42
Something went wrong with that request. Please try again.