73 Commits

Author SHA1 Message Date
Ingo Oppermann
ab86b8fd5d
Allow to add self to nodes 2023-05-08 11:39:43 +02:00
Ingo Oppermann
b8b2990e61
Add process storage in raft 2023-05-05 17:31:57 +02:00
Ingo Oppermann
f4015f5cbd
Merge branch 'dev' into cluster 2023-05-05 15:56:26 +02:00
Ingo Oppermann
ca261a56ee
Add looping_runtime to avstream status 2023-05-05 12:03:48 +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
c0a5325f05
Merge branch 'dev' into cluster 2023-05-03 11:17:54 +02:00
Ingo Oppermann
74110dae54
Fix possible infinite loop with HLS session rewriter 2023-04-28 17:38:36 +02:00
Ingo Oppermann
317d6eb4d9
Add updated_at field in process infos 2023-04-24 12:05:01 +02:00
Ingo Oppermann
386bdc0b6e
WIP: add emergency leader, api circuit breaker 2023-04-21 17:19:21 +02:00
Ingo Oppermann
b6a9fa7965
Merge branch 'dev' into cluster 2023-04-13 16:25:53 +02:00
Ingo Oppermann
d807becc8a
Add support for input framerate data from jsonstats patch 2023-04-13 15:22:33 +02:00
Ingo Oppermann
ffdf6d3323
Merge branch 'dev' into cluster 2023-04-12 15:27:38 +02:00
Ingo Oppermann
7e9e6fce8d
Add number of keyframes and extradata size to process progress data 2023-04-04 20:44:57 +02:00
Ingo Oppermann
6eefa5ca2b
Fix purging default file from HTTP cache 2023-04-03 10:27:04 +02:00
Ingo Oppermann
48678fb4c6
Fix purging default file from HTTP cache 2023-03-23 11:17:13 +01:00
Ingo Oppermann
562b7aed92
Use better naming for storage endpoint documentation 2023-03-17 13:55:19 +01:00
Ingo Oppermann
1c04961fc1
Fix tests 2023-02-21 12:57:33 +01:00
Ingo Oppermann
05a176370a
Fix missing filesystem metadata and middlewares 2023-02-14 16:16:35 +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
e374f83377
Fix config timestamps
created_at represents the time when the configuration has been persisted to disk.
loaded_at represents the time when the configuration has actually been used.

If created_at is larger than loaded_at, then the Core needs a reload in order
to apply the latest configuration.

if created_at is lower than laoded_at, then the Core applied the latest
configuration.

The value of updated_at is irrelevant and shouldn't be used.
2023-01-19 16:13:53 +01:00
Ingo Oppermann
311defb27c
Fix /config/reload return type 2023-01-19 11:46:45 +01:00
Ingo Oppermann
ea79b87236
Add format annotation for integer types for swagger documentation 2023-01-11 21:05:40 +01:00
Ingo Oppermann
59aa6af767
Allow partial process config updates 2023-01-02 07:20:39 +01:00
Ingo Oppermann
c44fb30a84
Fix check for at least one process input and output 2023-01-02 06:57:02 +01:00
Ingo Oppermann
4cc82dd333
Update dependencies 2022-10-28 17:24:57 +02:00
Ingo Oppermann
4334105f95
Fix wrong status code (#6) 2022-10-28 11:10:16 +02:00
Ingo Oppermann
07e2898857
Expose more SRT connection statistics 2022-10-24 15:25:14 +02:00
Ingo Oppermann
f746e581ae
Add version annotation to API methods 2022-10-13 20:54:52 +02:00
Ingo Oppermann
6ef334331b
Fix accumulating total sessions 2022-10-10 18:40:45 +02:00
Ingo Oppermann
8314f71402
Fix widget session data 2022-10-10 16:55:43 +02: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
Ingo Oppermann
9ef4ae9b5e
Fix cluster api responses 2022-09-28 21:49:25 +02:00
Ingo Oppermann
6288b620df
Use pool for buffer 2022-09-28 14:53:58 +02:00
Ingo Oppermann
1ebf1f7f29
Write header only if a valid return code is available 2022-09-15 13:43:48 +02:00
Ingo Oppermann
3b0a19e18a
Allow to only compress responses that have a minimum length 2022-09-08 19:16:44 +02:00
Ingo Oppermann
f1d71c202b
Fix HLS streaming and cleanup on diskfs 2022-09-08 15:00:09 +02:00
Ingo Oppermann
285ef79716
Add /v3/metrics (get) endpoint to list all known metrics 2022-09-08 13:50:53 +02:00
Ingo Oppermann
2d754b4212
Log HTTP request and response body sizes 2022-09-07 13:53:26 +02:00
Ingo Oppermann
6ee565b3c9
Fix correct output of purge_on_delete value 2022-08-26 07:56:29 +03:00
Ingo Oppermann
5cdef36750
Merge branch 'dev' into cluster 2022-08-19 11:54:12 +03:00
Ingo Oppermann
f60d09963c
Add RegistryReader interface for read-only registry 2022-08-19 11:46:30 +03:00
Ingo Oppermann
43d9a0dfc3
Merge branch 'dev' into cluster 2022-08-18 10:27:59 +03:00
Ingo Oppermann
6802830c62
Don't use deprecated functions from io/ioutil 2022-08-18 10:27:33 +03:00
Ingo Oppermann
5bd04817cc
Fix wrong path for swagger definition 2022-08-18 10:13:00 +03:00
Ingo Oppermann
0788a76b13
Merge branch 'dev' into cluster 2022-08-17 07:57:17 +03:00
Ingo Oppermann
3e7b1751d5
Add process id and reference glob pattern matching
For the API endpoint /v3/process two new query parameter are introduced
in order to list only processes that match a pattern for the id and the
reference: idpattern and refpattern. The pattern is a glob pattern. If
patterns for both are given, the results will be intersected. If you use
other query parameters such as id or reference, they will be applied
after the result of the pattern matching.
2022-08-17 07:55:44 +03:00