mirror of
https://forge.liiib.re/indiehost/libre.sh/libre.sh.git
synced 2024-12-29 07:06:42 +00:00
81 lines
No EOL
1.7 KiB
Markdown
81 lines
No EOL
1.7 KiB
Markdown
# libre.sh
|
||
|
||
libre.sh is a platform to manage many instances of different applications at scale.
|
||
|
||
## Use Cases
|
||
|
||
The use cases directory lists things we try to achieve with libre.sh.
|
||
|
||
## Glossary
|
||
|
||
Application: an application is a web application that is usable by an end user (For instance: HedgeDoc, Discourse, …).
|
||
Object Store (S3 API “standard”): An http API to store and retrieve objects.
|
||
PITR: Point in Time Recovery
|
||
|
||
## Personas
|
||
|
||
### Cluster Operator
|
||
|
||
A Cluster Operator is a System Administrator, or Site Reliability Engineer that is transforming raw machines (physical, virtual) into a production Kubernetes cluster.
|
||
This person is typically root on servers and on Kubernetes API.
|
||
|
||
### Application Operator
|
||
|
||
An Application Operator is a person that is less technical than a Cluster Operator, and doesn’t necessarily understand the command line interface.
|
||
But this person, through a nice User interface, is able to manipulate high level objects that represent the application.
|
||
|
||
### End User
|
||
|
||
A user that will interact only with an application.
|
||
|
||
## Architecture decision records
|
||
|
||
## Systems
|
||
|
||
### libre.sh runtime
|
||
|
||
A collection of controllers and services that are required to deploy applications instances.
|
||
|
||
### libre.sh runtime manager
|
||
|
||
The controller in charge of installing/configuring/upgrading the runtime.
|
||
|
||
## Development
|
||
|
||
### Requirements
|
||
|
||
- nix-shell
|
||
|
||
### Enter the shell
|
||
|
||
```shell
|
||
nix-shell
|
||
```
|
||
|
||
### Creating the cluster
|
||
|
||
```shell
|
||
kind create cluster --config kind-config.yaml
|
||
```
|
||
|
||
### Running tilt
|
||
|
||
```shell
|
||
tilt up
|
||
```
|
||
|
||
With other operators:
|
||
```shell
|
||
tilt up -- import-operator
|
||
```
|
||
|
||
Changing args without restarting:
|
||
```shell
|
||
tilt args import-operator
|
||
```
|
||
|
||
### Deleting the cluster
|
||
|
||
```shell
|
||
kind delete cluster --name libresh-dev
|
||
``` |