43 Commits

Author SHA1 Message Date
Ingo Oppermann
a728cc7839
Fix clusterNode/proxyNode 2023-06-14 22:05:59 +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
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
89cc42c4b9
Add cluster IAM, update dependencies 2023-05-30 21:24:12 +02:00
Ingo Oppermann
710d5c595f
Merge branch 'iam' into clusteriam 2023-05-25 11:05:26 +02:00
Ingo Oppermann
ead6e64442
Merge branch 'dev' into iam 2023-05-15 21:17:23 +02:00
Ingo Oppermann
958b1232db
Use official core API client 2023-05-12 17:56:49 +02:00
Ingo Oppermann
bd46d13bcf
Merge branch 'dev' into cluster 2023-05-05 10:25:09 +02:00
Ingo Oppermann
64f7068293
Merge branch 'dev' into vod 2023-05-05 10:22:54 +02:00
Ingo Oppermann
d41469cdbf
Upgrade rtmp library dependency
This fixes a bug in the rtmp library where an error has been left
unchecked caused by a malformed app or playPath. This led to a nil
value for the URL of the publish or play request. However, this
URL should never be nil and accessing this URL caused a panic and
finally shutting the core down, resulting in a DoS.

Thanks to Johannes Frank
2023-05-05 10:04:18 +02:00
Ingo Oppermann
e6b64dbe97
WIP: raft 2023-04-13 09:42:19 +02:00
Ingo Oppermann
8326160b28
Add option to set GOMAXPROCS automatically
Use the debug.auto_max_procs config value or the CORE_DEBUG_AUTO_MAX_PROCS
environment variable. Set it to "true" to enable this feature.
2023-04-11 17:12:01 +02:00
Ingo Oppermann
8c3fd4dc17
Merge branch 'dev' into vod 2023-04-11 16:39:30 +02:00
Ingo Oppermann
aef1b7c9a2
Fix #10 2023-04-11 15:04:31 +02:00
Ingo Oppermann
d2e5720fa2
Fix limiting part sizes for S3 upload 2023-04-06 12:06:50 +02:00
Ingo Oppermann
029bf208e7
Add bandwidth limit to filesystem operations, rename fields 2023-03-30 09:51:29 +02:00
Ingo Oppermann
b63b23527b
Add scheduler and timeout to processes
The scheduler allows to define when a process should run. It can be either
a timestamp in RFC3339 format or a crontab expression. If a scheduler is
given, reconnect and the reconnect delay will only apply to processes that
exited as failed.

The timeout allows to define when a process should be gracefully stopped.
It is measured from the actual start of that process including all reconnects
due to failures. If the process finished regularly, the timeout will be
reset.
2023-03-21 14:51:43 +01:00
Ingo Oppermann
be718eac0a
Add support for date placeholder in process config
Because it doesn't make sense to replace the date placeholder at
process creation, it has to be replaced at every start of the process.

On process creation only the static placeholders (such as process ID)
are replaced. Dynamic placeholders (so far only "date") are not
replaced. On process start, a callback has been introduced that gives
the chance to change the command line. This is the point where
the restreamer replaces the date placeholders.
2023-02-28 17:46:08 +01:00
Ingo Oppermann
f3de5a338b
Merge branch 'dev' into iam 2023-02-22 11:57:56 +01:00
Ingo Oppermann
5ad5edef73
Upgrade golang.org/x/net 2023-02-22 11:54:39 +01:00
Ingo Oppermann
e9caa1b033
Merge branch 'dev' into casbin 2023-02-02 09:51:58 +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
8014512a82
Add missing dependencies 2023-01-10 19:05:05 +01:00
Ingo Oppermann
0cd8be130c
Remove letsdebug module
This module has a dependency of a modules that requires cgo, that's a no-go.
2022-12-31 17:46:46 +01:00
Ingo Oppermann
1a9ef8b7c9
Add Let's Debug auto TLS error diagnostic 2022-12-27 10:26:49 +01:00
Ingo Oppermann
dfc81ac38f
Add ffmpeg migration tool, annotate process config with ffmpeg version constraint 2022-11-02 22:02:39 +01:00
Ingo Oppermann
4cc82dd333
Update dependencies 2022-10-28 17:24:57 +02:00
Ingo Oppermann
bc7faf9364
Replace x/crypto/acme/autocert with caddyserver/certmagic 2022-09-23 10:05:48 +02:00
Ingo Oppermann
1511b950ae
Update joy4 dependency for fixed increased RTMP client compatibility 2022-09-14 19:34:35 +02:00
Ingo Oppermann
2e560b635d
Update joy4 dependency for increase RTMP client compatibility 2022-09-14 14:52:41 +02:00
Ingo Oppermann
c522de043d
Upgrade dependencies 2022-09-08 15:39:56 +02:00
Ingo Oppermann
e4463953b6
Upgrade datarhei/gosrt 2022-08-17 11:07:31 +03:00
Ingo Oppermann
20a743c594
Upgrade datarhei/gosrt 2022-08-17 10:01:04 +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
Ingo Oppermann
542653d3e2
Update RTMP server (datarhei/restreamer#385) 2022-07-28 20:31:17 +02:00
Ingo Oppermann
5482dbca06
Require at least go 1.18 2022-07-21 20:42:18 +02:00
Ingo Oppermann
669effd680
Update srt dependency 2022-07-08 20:06:28 +02:00
Ingo Oppermann
9400460704
Update dependencies 2022-07-08 19:49:24 +02:00
Jan Stabenow
eb1cc37456
Add GoSRT & improvements (repo-merge)
Commits (Ingo Oppermann):
- Add experimental SRT connection stats and logs
- Hide /config/reload endpoint in reade-only mode
- Add SRT server
- Create v16 in go.mod
- Fix data races, tests, lint, and update dependencies
- Add trailing slash for routed directories (datarhei/restreamer#340)
- Allow relative URLs in content in static routes

Co-Authored-By: Ingo Oppermann <57445+ioppermann@users.noreply.github.com>
2022-06-23 22:13:58 +02:00
Jan Stabenow
9746248c10
Add v16.8.0 2022-06-03 17:21:52 +02:00
Jan Stabenow
9c0b535199
Add v16.7.2 2022-05-13 19:26:45 +02:00