Added dependency on hosttracker to affinitymanager
[affinity.git] / affinity / affinity-api.txt
1 Create an affinity group: 
2  /affinity/nb/v2/{container}/create/group/{name}
3
4 Fetch an affinity group given its name: 
5 /affinity/nb/v2/{container}/group/{name}
6
7 ======
8
9 Add affinity element to affinity group: 
10 /affinity/nb/v2/{container}/add/{groupname}/mac/{address}
11  /affinity/nb/v2/{container}/add/{groupname}/ip/{address}
12 /affinity/nb/v2/{container}/add/{groupname}/host/{address}
13
14 Delete element from an affinity group.
15 /affinity/nb/v2/{container}/delete/{groupname}/mac/{address}
16  /affinity/nb/v2/{container}/delete/{groupname}/ip/{address}
17 /affinity/nb/v2/{container}/delete/{groupname}/host/{address}
18
19 Add affinity link from one group to another: 
20 /affinity/nb/v2/{container}/create/link/{name}
21 /affinity/nb/v2/{container}/from/{linkname}/{affinitygroup}
22 /affinity/nb/v2/{container}/to/{linkname}/{affinitygroup}
23
24 Create an affinity element: 
25 # For now, these are simple unary objects. Future implementations to include multiple attributes. 
26 /affinity/nb/v2/{container}/create/identifier/{name}/mac/{address}
27 /affinity/nb/v2/{container}/create/identifier/{name}/ip/{address}
28 /affinity/nb/v2/{container}/create/identifier/{hostname}/host/{address} 
29
30 List all affinities: 
31 /affinity/nb/v2/{container}/affinities
32
33 List stats for affinities: 
34 ...
35 Test comment.