Skip to content

Commit 9d18fc7

Browse files
author
Matthew Fisher
committed
Merge pull request #2328 from bacongobbler/1490-api-v1
docs(reference): add controller API documentation; remove server autodocs
2 parents af5cd1e + 320d92c commit 9d18fc7

8 files changed

Lines changed: 945 additions & 220 deletions

File tree

controller/api/urls.py

Lines changed: 0 additions & 201 deletions
Original file line numberDiff line numberDiff line change
@@ -1,204 +1,3 @@
1-
"""
2-
RESTful URL patterns and routing for the Deis API app.
3-
4-
5-
Applications
6-
============
7-
8-
.. http:get:: /v1/apps/(string:id)/
9-
10-
Retrieve a :class:`~api.models.App` by its `id`.
11-
12-
.. http:delete:: /v1/apps/(string:id)/
13-
14-
Destroy a :class:`~api.models.App` by its `id`.
15-
16-
.. http:get:: /v1/apps/
17-
18-
List all :class:`~api.models.App`\s.
19-
20-
.. http:post:: /v1/apps/
21-
22-
Create a new :class:`~api.models.App`.
23-
24-
25-
Application Release Components
26-
------------------------------
27-
28-
.. http:get:: /v1/apps/(string:id)/config/
29-
30-
List all :class:`~api.models.Config`\s.
31-
32-
.. http:post:: /v1/apps/(string:id)/config/
33-
34-
Create a new :class:`~api.models.Config`.
35-
36-
.. http:get:: /v1/apps/(string:id)/builds/(string:uuid)/
37-
38-
Retrieve a :class:`~api.models.Build` by its `uuid`.
39-
40-
.. http:get:: /v1/apps/(string:id)/builds/
41-
42-
List all :class:`~api.models.Build`\s.
43-
44-
.. http:post:: /v1/apps/(string:id)/builds/
45-
46-
Create a new :class:`~api.models.Build`.
47-
48-
.. http:get:: /v1/apps/(string:id)/releases/(int:version)/
49-
50-
Retrieve a :class:`~api.models.Release` by its `version`.
51-
52-
.. http:get:: /v1/apps/(string:id)/releases/
53-
54-
List all :class:`~api.models.Release`\s.
55-
56-
.. http:post:: /v1/apps/(string:id)/releases/rollback/
57-
58-
Rollback to a previous :class:`~api.models.Release`.
59-
60-
61-
Application Infrastructure
62-
--------------------------
63-
64-
.. http:get:: /v1/apps/(string:id)/containers/(string:type)/(int:num)/
65-
66-
List all :class:`~api.models.Container`\s.
67-
68-
.. http:get:: /v1/apps/(string:id)/containers/(string:type)/
69-
70-
List all :class:`~api.models.Container`\s.
71-
72-
.. http:get:: /v1/apps/(string:id)/containers/
73-
74-
List all :class:`~api.models.Container`\s.
75-
76-
77-
Application Domains
78-
-------------------
79-
80-
81-
.. http:delete:: /v1/apps/(string:id)/domains/(string:hostname)
82-
83-
Destroy a :class:`~api.models.Domain` by its `hostname`
84-
85-
.. http:get:: /v1/apps/(string:id)/domains/
86-
87-
List all :class:`~api.models.Domain`\s.
88-
89-
.. http:post:: /v1/apps/(string:id)/domains/
90-
91-
Create a new :class:`~api.models.Domain`\s.
92-
93-
94-
Application Actions
95-
-------------------
96-
97-
.. http:post:: /v1/apps/(string:id)/scale/
98-
99-
See also
100-
:meth:`AppViewSet.scale() <api.views.AppViewSet.scale>`
101-
102-
.. http:get:: /v1/apps/(string:id)/logs/
103-
104-
See also
105-
:meth:`AppViewSet.logs() <api.views.AppViewSet.logs>`
106-
107-
.. http:post:: /v1/apps/(string:id)/run/
108-
109-
See also
110-
:meth:`AppViewSet.run() <api.views.AppViewSet.run>`
111-
112-
113-
Application Sharing
114-
===================
115-
116-
.. http:delete:: /v1/apps/(string:id)/perms/(string:username)/
117-
118-
Destroy an app permission by its `username`.
119-
120-
.. http:get:: /v1/apps/(string:id)/perms/
121-
122-
List all permissions granted to this app.
123-
124-
.. http:post:: /v1/apps/(string:id)/perms/
125-
126-
Create a new app permission.
127-
128-
129-
Keys
130-
====
131-
132-
.. http:get:: /v1/keys/(string:id)/
133-
134-
Retrieve a :class:`~api.models.Key` by its `id`.
135-
136-
.. http:delete:: /v1/keys/(string:id)/
137-
138-
Destroy a :class:`~api.models.Key` by its `id`.
139-
140-
.. http:get:: /v1/keys/
141-
142-
List all :class:`~api.models.Key`\s.
143-
144-
.. http:post:: /v1/keys/
145-
146-
Create a new :class:`~api.models.Key`.
147-
148-
149-
API Hooks
150-
=========
151-
152-
.. http:post:: /v1/hooks/push/
153-
154-
Create a new :class:`~api.models.Push`.
155-
156-
.. http:post:: /v1/hooks/build/
157-
158-
Create a new :class:`~api.models.Build`.
159-
160-
.. http:post:: /v1/hooks/config/
161-
162-
Retrieve latest application :class:`~api.models.Config`.
163-
164-
165-
Auth
166-
====
167-
168-
.. http:post:: /v1/auth/register/
169-
170-
Create a new User.
171-
172-
.. http:delete:: /v1/auth/cancel/
173-
174-
Destroy the logged-in User.
175-
176-
.. http:post:: /v1/auth/passwd/
177-
178-
Update the password of the logged-in User.
179-
180-
.. http:get:: /v1/auth/login/
181-
182-
Generate an API key.
183-
184-
185-
Admin Sharing
186-
=============
187-
188-
.. http:delete:: /v1/admin/perms/(string:username)/
189-
190-
Destroy an admin permission by its `username`.
191-
192-
.. http:get:: /v1/admin/perms/
193-
194-
List all admin permissions granted.
195-
196-
.. http:post:: /v1/admin/perms/
197-
198-
Create a new admin permission.
199-
200-
"""
201-
2021
from __future__ import unicode_literals
2032

2043
from django.conf import settings

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
# Add any Sphinx extension module names here, as strings. They can be extensions
4141
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
4242
extensions = ['sphinx.ext.autodoc', 'sphinx.ext.autosummary',
43-
'sphinx.ext.viewcode', 'sphinxcontrib.httpdomain']
43+
'sphinx.ext.viewcode']
4444

4545
# default flags for auto-generated python code documetation
4646
autodoc_default_flags = ['members', 'undoc-members']

docs/docs_requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,3 @@ termcolor==1.1.0
3030
# Deis documentation requirements
3131
Sphinx>=1.2.3
3232
smartypants>=1.8.6
33-
sphinxcontrib-httpdomain>=1.3.0

0 commit comments

Comments
 (0)