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
b6f7dae2f5
Show order for processes in the cluster DB
2023-06-27 21:17:56 +02:00
Ingo Oppermann
57c1e50d60
Don't collect sessions coming from other nodes in the cluster
2023-06-27 21:11:29 +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
4560b1a6ca
Add referrer check with glob pattern and . (dot) as separator
2023-06-27 11:03:21 +02:00
Ingo Oppermann
20b3f2af5e
Add test for encodec username in basic auth
2023-06-27 11:02:14 +02:00
Ingo Oppermann
ad53f3ab68
Fix missing unescape of basic auth username
2023-06-27 10:15:49 +02:00
Ingo Oppermann
9202f93bc2
Fix IAM user update when changing username
2023-06-27 10:14:22 +02:00
Ingo Oppermann
abfe4918b4
Loosen restrictions for IAM user names
...
The only restriction for an IAM username is that it cannot start with
a '$'. An username that contains a ':' must escape it with another ':'
for use in a token for RTMP or SRT.
2023-06-26 13:49:53 +02:00
Ingo Oppermann
7bb4103c00
Fix double close file in GetFile handler
2023-06-23 21:49:02 +02:00
Ingo Oppermann
37cac48223
Adjust returned API errors
2023-06-23 21:42:01 +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
a9b92e7f9a
Fix re-emitting Content-Length header if file doesn't exceed the minimum length
2023-06-21 12:04:36 +02:00
Ingo Oppermann
435adfb6ea
Return error if iam wants to be modified in cluster mode via non-cluster API
2023-06-20 22:40:36 +02:00
Ingo Oppermann
8283815dec
List anonymous user in GET /v3/cluster/iam/user
2023-06-20 20:31:23 +02:00
Ingo Oppermann
7565427f9a
Add GET /v3/iam/user endpoint
2023-06-20 20:27:51 +02:00
Ingo Oppermann
0a5661f7ab
Update dependencies
2023-06-16 13:30:56 +02:00
Ingo Oppermann
9635d0eccc
Remove limit in process config limits
2023-06-15 14:20:31 +02:00
Ingo Oppermann
a728cc7839
Fix clusterNode/proxyNode
2023-06-14 22:05:59 +02:00
Ingo Oppermann
cfc5650e1a
Improve error messages
2023-06-14 13:57:13 +02:00
Ingo Oppermann
50e943a075
WIP: add session token, missing: writing sessions to log
2023-06-14 12:30:50 +02:00
Ingo Oppermann
82ba3a8f82
WIP: introducing cluster versioning, degraded mode
2023-06-09 21:42:26 +02:00
Ingo Oppermann
cefc03bcb2
If leave fails, shutdown cluster anyways
2023-06-06 11:25:02 +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
8829b8fff0
Respect domain in cluster DB, allow metadata in process config for cluster
2023-06-05 21:19:11 +02:00
Ingo Oppermann
1689f3f7db
Fix logging of api.Err
...
When a handler returns an api.Err the logging middleware logged a
200 OK, however the correct code and response has been sent to the
client.
2023-06-05 14:52:27 +02:00
Ingo Oppermann
e532531eeb
Allow to set process metadata in the cluster
2023-06-02 14:17:35 +02:00
Ingo Oppermann
f59a63320c
Allow to pass metadata with process config, non-cluster only
2023-06-01 21:24:33 +02:00
Ingo Oppermann
a79cfa0c77
Merge branch 'clusteriam' into vod
2023-06-01 15:16:54 +02:00
Ingo Oppermann
f21ca2055e
Use IAM for placeholders, simplify proxy nodes
2023-05-31 21:49:25 +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
5e164d8268
Merge branch 'dev' into vod
2023-05-26 21:25:06 +02:00
Ingo Oppermann
496722c88a
Fix 509 return code if non-existing stream is requested
2023-05-26 21:24:42 +02:00
Ingo Oppermann
1974442814
Allow to add and remove identites
2023-05-26 20:06:34 +02:00
Ingo Oppermann
56e03308c2
Add call chain to add a new user
2023-05-26 12:25:05 +02:00
Ingo Oppermann
e9034aa171
Create identity and access packages for IAM
2023-05-25 16:16:29 +02:00
Ingo Oppermann
710d5c595f
Merge branch 'iam' into clusteriam
2023-05-25 11:05:26 +02:00
Ingo Oppermann
930b84b557
Add Enforcer interface
2023-05-25 10:29:55 +02:00
Ingo Oppermann
10df8d51b1
Simplify IAM user config, only create users and policies if not previously run
2023-05-24 22:28:24 +02:00
Ingo Oppermann
3c89cbb831
Create identities for basic auth access to mount points
2023-05-24 14:29:14 +02:00
Ingo Oppermann
7a1eb1251b
Remove IAM group semantics
2023-05-23 16:05:04 +02:00