No description
Find a file
2024-02-22 08:52:49 +01:00
.tilt dev: add cluster issuer 2024-02-17 11:07:09 +01:00
api fix: various 2024-02-22 08:52:49 +01:00
cluster fix: use default for velero 2024-02-20 23:59:42 +00:00
cmd feat: add infra & tenant migration 2024-02-20 22:53:34 +01:00
config feat(migration): add dry-run 2024-02-20 23:47:34 +01:00
docs feat: add docs 2023-05-09 15:45:56 +02:00
flux/kustomizations feat: add flux ks for zalando, libresh pg & keydb 2023-12-15 17:43:18 +01:00
gen/proto/portability/v1alpha1 feat: add infra & tenant migration 2024-02-20 22:53:34 +01:00
hack misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
internal fix: various 2024-02-22 08:52:49 +01:00
pkg fix: various 2024-02-22 08:52:49 +01:00
proto/portability/v1alpha1 feat: add infra & tenant migration 2024-02-20 22:53:34 +01:00
renovate ci: try to simplify renovate 2023-10-02 16:17:53 +02:00
scripts build: add build script 2023-11-15 11:29:28 +01:00
testing fix: cleanup 2023-04-14 15:58:52 +02:00
tools/lsh-gen chore: move conditions accessors to lsh-gen 2024-02-12 16:20:11 +01:00
.dockerignore misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
.gitignore misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
.golangci.yml misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
buf.gen.yaml chore: cleanup proto 2024-02-20 19:15:23 +01:00
Dockerfile feat: update alpine docker tag to v3.19 2024-02-20 22:54:30 +00:00
Dockerfile.tilt misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
go.mod fix: various 2024-02-22 08:52:49 +01:00
go.sum fix: various 2024-02-22 08:52:49 +01:00
kind-config.yaml misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
LICENSE feat: add cli 2023-04-14 15:53:41 +02:00
Makefile misc: fusion lsh projects 2024-01-11 15:40:45 +01:00
PROJECT feat: add infra & tenant migration 2024-02-20 22:53:34 +01:00
README.md dev: simplify setup 2023-08-17 17:13:05 +02:00
renovate.json5 misc(renovate): use develop as base branch 2024-01-11 15:30:55 +01:00
shell.nix dev: simplify setup 2023-08-17 17:13:05 +02:00
Tiltfile misc: fusion lsh projects 2024-01-11 15:40:45 +01:00

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 doesnt 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

nix-shell

Creating the cluster

kind create cluster --config kind-config.yaml

Running tilt

tilt up

With other operators:

tilt up -- import-operator

Changing args without restarting:

tilt args import-operator

Deleting the cluster

kind delete cluster --name libresh-dev