-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSpacefile.yaml
34 lines (31 loc) · 1.75 KB
/
Spacefile.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@clone: string:1.4.0 file:1.6.0
_info:
run:
_info:
title: Run the Simplenetes Daemon to manage pods for all users
desc: |
This target is meant to be run from the init system (systemd or other) to manage the pod life cycles of all users pods.
The user should be root.
For each user having a cluster the daemon will spawn a specific process managing the pods for that user and project.
It's responsibilities are:
1) Check each Pod's state file to see what state it should have and invoke the pod script to make sure it has that state.
The daemon will also create any ramdisks for the pod (if the daemon is run as root).
2) Detect changes in pods config directories and invoke the pod script to signal the containers mounting those configs.
3) Generate proxy configurations:
i) Probe each Pod which has the state "running" for any clusterPorts.
ii) For each running Pod with clusterPorts run the Readiness probe.
iii) For each ready Pod generate the config.
iiii) If aggregated config was changed, SIGHUP the hostproxy.
4) Run the Liveness probe on each pod which has the state "running".
Note:
There is a way of running this Daemon as a foreground process for a single user by adding a directory of the hosthome as argument to the daemon.
This is a special behaviour and is only meant to be used in dev mode.
_env:
- hosthome:
title: Path to the cluster dir
- RUN: DAEMON_MAIN -- "${hosthome}"
_cmdline:
_info:
title: Use simplenetesd as a standalone cmd line tool
_env:
- RUN: SNTD_CMDLINE -- "\$@"