Ingo Oppermann
2b58c11bb1
Fix cluster process update on metadata change
2023-06-28 16:26:36 +02:00
Ingo Oppermann
fff7f986a0
Merge HTTP and HLS middleware into session middleware
2023-06-28 10:41:29 +02:00
Ingo Oppermann
6c6fa33903
Add experimental unified session middleware
2023-06-27 22:17:58 +02:00
Ingo Oppermann
89379b2acd
Add /v3/cluster/snapshot endpoint
2023-06-27 15:11:31 +02:00
Ingo Oppermann
dd128ac99b
Fix gathering of hostnames, add /v3/cluster/db/kv endpoint
2023-06-27 14:52:32 +02:00
Ingo Oppermann
944d487730
Allow to send command to process on the cluster
2023-06-22 21:43:51 +02:00
Ingo Oppermann
dc3e7afc52
Add locks on the cluster DB
2023-06-22 12:22:25 +02:00
Ingo Oppermann
b8a975b7c7
Add logging HTTP requests as single session
2023-06-21 16:46:35 +02:00
Ingo Oppermann
b35ac9ccc3
Allow proxied range requests, /cluster/process mimic /process
2023-06-21 13:14:27 +02:00
Ingo Oppermann
7565427f9a
Add GET /v3/iam/user endpoint
2023-06-20 20:27:51 +02:00
Ingo Oppermann
50e943a075
WIP: add session token, missing: writing sessions to log
2023-06-14 12:30:50 +02:00
Ingo Oppermann
1f6f7c9f59
Add API endpoint to leave cluster gracefully, hard leave on exit
2023-06-06 11:22:53 +02:00
Ingo Oppermann
e532531eeb
Allow to set process metadata in the cluster
2023-06-02 14:17:35 +02:00
Ingo Oppermann
a79cfa0c77
Merge branch 'clusteriam' into vod
2023-06-01 15:16:54 +02:00
Ingo Oppermann
401156e4d2
Enforce policies
2023-05-31 16:39:43 +02:00
Ingo Oppermann
3a6bb02bfd
Fix reloading policies, add API endpoints for observing internal cluster state
2023-05-31 11:23:54 +02:00
Ingo Oppermann
2364aa9d41
Fix deadlock in node, list processes per node
2023-05-31 09:36:53 +02:00
Ingo Oppermann
89cc42c4b9
Add cluster IAM, update dependencies
2023-05-30 21:24:12 +02:00
Ingo Oppermann
1974442814
Allow to add and remove identites
2023-05-26 20:06:34 +02:00
Ingo Oppermann
710d5c595f
Merge branch 'iam' into clusteriam
2023-05-25 11:05:26 +02:00
Ingo Oppermann
ccac2ffd5d
Various updates
...
- rebrand group to domain
- move IAM to the API (rest and graph) for enforcing "process:" rules
- add abstraction layer for restream store in order to decouple internal format from format on disk
- move playout handler into restreamHandler
- remove user from restream interface
- add TaskID type that includes the process id and its domain
2023-05-23 15:47:06 +02:00
Ingo Oppermann
6f831fd190
Reduce IAM API to only user and policies
2023-05-17 18:19:23 +02:00
Ingo Oppermann
6a4c715f75
Fix update process, list process in raft store
2023-05-13 21:21:47 +02:00
Ingo Oppermann
7d2b7b4836
WIP: allow update processes in cluster
2023-05-12 12:59:01 +02:00
Ingo Oppermann
b8b2990e61
Add process storage in raft
2023-05-05 17:31:57 +02:00
Ingo Oppermann
cd58cf3df7
Fix panics if cluster is not enabled
2023-05-05 11:56:39 +02:00
Ingo Oppermann
7f59c188cf
Remove node storage, use raft configuration instead; re-establish file and stream proxying
2023-05-04 19:49:53 +02:00
Ingo Oppermann
d201921a33
Allow to provide complete cluster configuration
...
Replace CORE_CLUSTER_JOIN_ADDRESS with CORE_CLUSTER_PEERS. This is
a comma separated list of cluster members with their IDs of the form
ID@host:port
On startup the node tries to connect to all the peers. In case of
sudden deaths of a node this will allow to find back into the
cluster. The list in CLUSTER_PEERS is a starting point of known
peers. Other node that are not in that list can still join the
cluster.
File and stream proxy has been moved to the Proxy type.
2023-05-03 16:13:05 +02:00
Ingo Oppermann
386bdc0b6e
WIP: add emergency leader, api circuit breaker
2023-04-21 17:19:21 +02:00
Ingo Oppermann
ffdf6d3323
Merge branch 'dev' into cluster
2023-04-12 15:27:38 +02:00
Ingo Oppermann
b84fdddd81
Add /api/v3/events endpoint
2023-03-23 11:11:47 +01:00
Ingo Oppermann
b21aba5f9d
Remove /process/:id/report/:at endpoint, extend /process/:id/report endpoint
2023-03-22 12:31:41 +01:00
Ingo Oppermann
a692f88b69
Add DELETE /api/v3/fs/:storage endpoint
...
Works similar to the GET endpoint. It has the same query parameter (without
"sort" and "order"). A glob pattern has to be provided. To select all
files, use the glob pattern "/**".
2023-03-17 17:05:56 +01:00
Ingo Oppermann
6e93c1d5a1
Get rid of $localhost pseudo user
2023-03-09 21:10:04 +01:00
Ingo Oppermann
a0ef3ab5ee
WIP: add /api/v3/iam/group/* endpoints
2023-03-09 19:03:58 +01:00
Ingo Oppermann
d101a76e9e
Change anon user to localhost user only if DisableLocalhost is set
2023-03-08 15:21:55 +01:00
Ingo Oppermann
8755117e92
Add /api/v3/iam/user endpoints
2023-03-07 16:31:58 +01:00
Ingo Oppermann
a3ff16ef30
Add PUT /api/v3/fs endpoint for file operations
2023-03-03 14:26:17 +01:00
Ingo Oppermann
0dedcddece
Add process report API
2023-03-02 11:15:57 +01:00
Ingo Oppermann
857f5b8182
Allow to select a specific log history entry by its create date
2023-03-01 16:48:48 +01:00
Ingo Oppermann
8215c20ae6
Fix basic auth, disable localhost, replace template func
2023-02-17 17:27:39 +01:00
Ingo Oppermann
74d0a96e1c
Merge branch 'dev' into iam
2023-02-14 19:08:37 +01:00
Ingo Oppermann
05a176370a
Fix missing filesystem metadata and middlewares
2023-02-14 16:16:35 +01:00
Ingo Oppermann
eac49ad11a
Define default policies to mimic current behaviour
2023-02-10 15:14:30 +01:00
Ingo Oppermann
312f65d110
WIP: add verfiers, fix bugs, implement middleware, support rtmp
2023-02-09 21:33:45 +01:00
Ingo Oppermann
8f1ff2d1a2
WIP: designing interfaces, detecting identity, enforcing policies
2023-02-03 17:43:06 +01:00
Ingo Oppermann
2a3288ffd0
Use abstract filesystem for stores
2023-02-01 16:09:20 +01:00
Ingo Oppermann
f519acfd71
Add S3 storage support
2023-01-31 14:45:58 +01:00
Ingo Oppermann
4d4e70571e
Fix proper version handling for uploading a new config
2022-10-10 16:19:45 +02:00
Ingo Oppermann
963353e6a2
Merge branch 'dev' into cluster
2022-09-29 14:40:00 +02:00