...
- Preconditions:
- Not logged in
- Primary flow
- Valid username and password: login succeeds (200)
- Alternate flows
- If already logged in, secondary login still succeeds (200)
- Invalid username/password: login fails (401)
- Admin login (200)
Logout
- Preconditions
- Logged in
- Primary flow:
- User is logged out
...
- Preconditions
- User it logged in
- Primary flow
- Details of the current service are returned
- Alternative flow:
- Not logged in (401)
- Service does not exist (404)
...
- )
Add/Update service:
- Preconditions:
- Admin user
- Primary flow
- Service definition is added (200)
- Alternative flow
- Not logged in (401)
- Logged in as non-admin user (401)
- Service name exists (409) for POST, 200 for PUT
Stacks
List stacks
- Preconditions:
- Logged in
- Stack has been added
- Primary flow
- List details of existing stacks (service, stack services, endpoints, status etc)
- Alternate flow:
- Not logged in (401)
- No stacks (empty list)
...
- Preconditions
- Logged in
- Service exists
- Primary flow
- Stack is added (200)
- Alternate flow
- Not logged in (401)
- Service doesn't exist (404)
- Duplicate stack name (409)
Delete stack
- Preconditions:
- Logged in
- Stack exists
- Stack not running
- Primary flow
- Stack is deleted (201)
- Alternate flow
- Not logged in (401)
- Stack doesn't exist (404)
- Stack is running (409)
- Attached volumes are orphaned
...
- Preconditions:
- Logged in
- Stack exists
- Primary flow
- Stack details are displayed (200)
- Alternate flow
- Not logged in (401)
- Stack doesn't exist (404)
Start/restart stack service
Add optional service (requires restart?)
- Preconditions:
- Logged in
- Service exists
- Optional service exists
- Stack is not started
- Primary flow
- Stack is added with optionals service enabled (200)
- Alternative flow:
- Not logged in (401)
- Service doesn't exist (404)
- Optional service doesn't exist (404)
- Existing stack started (409)
Delete optional services
- Preconditions:
- Logged in
- Service exists
- Optional service exists
- Stack is not started
- Primary flow
- Optional service is removed from stack (200)
- Alternative flow:
- Not logged in (401)
- Service doesn't exist (404)
- Optional service doesn't exist (404)
- Existing stack started (409)
Volumes
List volumes
- Preconditions
- Logged in
- Volumes exist
- Primary flow
- Volume details are displayed (200)
- Alterate flow
- Not logged in (401)
- No volumes exist (200)
...
- Preconditions
- Logged in
- Volume exists
- Stack not running
- Primary flow
- Volume is detached (200)
- Alternative flow
- Not logged in (401)
- Volume doesn't exist (404)
- Stack is running (409)
Orphaned volumesTBD
Config
List config
Set config
...