mirror of
https://forge.liiib.re/indiehost/libre.sh/libre.sh.git
synced 2024-12-28 14:46:41 +00:00
Adds UC1 and UC2
This commit is contained in:
parent
c001299b6f
commit
3a1bec498e
2 changed files with 29 additions and 0 deletions
15
UC1-Applications Lifecycle.md
Normal file
15
UC1-Applications Lifecycle.md
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
As an Application Operator, I want to be able to manage applications so that I can be autonomous in this task, without interrupting the technical team.
|
||||||
|
|
||||||
|
Manage in this context means:
|
||||||
|
- create (Create an HedgeDoc instance at this URL for this organization)
|
||||||
|
- read/list (List all HedgeDoc instance, List all the different instances of this organization)
|
||||||
|
- update (Change some high level/Infrastructure configuration that is accessible to Application Operator)
|
||||||
|
- delete (An Organization doesn't need any more his instance, so we need to delete it)
|
||||||
|
|
||||||
|
Other Benefits:
|
||||||
|
If the operator manages the application with a standard system, it is less likely that there is a drift in the different applications instances deployed.
|
||||||
|
|
||||||
|
## Solution
|
||||||
|
|
||||||
|
Kubernetes API with the use of CRD and RBAC (authz) on these CRDs allows to expose a beautiful API to manage these applications.
|
||||||
|
If you couple Kubernetes authn with an OIDC, you have what we consider the best API to build this system.
|
14
UC2-Bucket Lifecycle.md
Normal file
14
UC2-Bucket Lifecycle.md
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
system: libre.sh runtime
|
||||||
|
|
||||||
|
As most of applications need an ObjectStore bucket, and to accomplish UC1, the libre.sh runtime needs to be able to manage the lifecycle of the applications bucket.
|
||||||
|
|
||||||
|
Requirements:
|
||||||
|
- be able to manage buckets on various cloud provider
|
||||||
|
- scaleway
|
||||||
|
- minio
|
||||||
|
- be able to manage bucket policies in high level fashion
|
||||||
|
- create an owner user for the application be able to interact with this bucket
|
||||||
|
|
||||||
|
## Solution
|
||||||
|
|
||||||
|
A CRD to describe the bucket object.
|
Loading…
Reference in a new issue