README.md 1.82 KB
Newer Older
ubedv's avatar
ubedv committed
1
FEUDAL Client
ubedv's avatar
ubedv committed
2 3
====

lukas.burgey's avatar
lukas.burgey committed
4 5
Feudal clients execute the deployment and removal of feudal users to and from custom services.
Multiple feudal clients connect to one feudal backend. The clients are meant to be run in proximity of the service, e.g. on the same VM / cluster.
ubedv's avatar
ubedv committed
6 7 8 9


Building
----
lukas.burgey's avatar
lukas.burgey committed
10 11 12
- Have a go version newer than 1.12 installed: ```go version```
- Clone the repository somewhere: ```git clone https://git.scc.kit.edu/feudal/feudalClient.git```
- Switch to the cloned directory and run ```make build``` (or ```make build-static``` for a statically linked build)
ubedv's avatar
ubedv committed
13

lukas.burgey's avatar
lukas.burgey committed
14
Setup
ubedv's avatar
ubedv committed
15
----
lukas.burgey's avatar
lukas.burgey committed
16 17
- Inspect the client:```feudalClient --version``` and ```feudalClient --help```
- Create a configuration file using yaml (preferred) or json format, see [examples](./example-config).
lukas.burgey's avatar
lukas.burgey committed
18 19 20
  - The client needs to be registerred using username and password at a [feudalBackend](https://git.scc.kit.edu/feudal/feudalBackend).
  - Put the configuration into ```/etc/feudal``` or ```$HOME/.config/feudal```.
- Run the client: ```feudalClient```
lukas.burgey's avatar
lukas.burgey committed
21
  - To use a specific config use: ```feudalClient --config <config>```
lukas.burgey's avatar
lukas.burgey committed
22 23 24 25 26


Provide a service
-----

lukas.burgey's avatar
lukas.burgey committed
27 28
The feudalClient executes custom scripts to deploy / remove users from your service.
You'll probably need to write your own script. See [feudalScripts](https://git.scc.kit.edu/feudal/feudalScripts) for instructions and examples how to do that.
lukas.burgey's avatar
lukas.burgey committed
29 30 31 32 33 34 35 36 37
After writing your script, hook it up into your client configuration and restart your client. This will automatically register your service(s) at the feudal backend.


Stop providing a service
-----

In case you want to stop providing a service follow these steps:
- Make sure that no user is still deployed and _no_ feudal user data remains at your service
- Execute the client once using: ```feudalClient deregister```
lukas.burgey's avatar
lukas.burgey committed
38
  - This will remove all your services from the backend, so they won't be shown to users anymore