Commit Graph

196 Commits

Author SHA1 Message Date
Ingo Oppermann
2df83c8032 Fix linter warnings 2023-02-17 10:37:22 +01:00
Ingo Oppermann
ad4f392bd0 user only for api: 2023-02-17 10:30:38 +01:00
Ingo Oppermann
1e74f11f5e WIP: policy update 2023-02-16 21:47:56 +01:00
Ingo Oppermann
ca2fc5fe26 WIP: identity management and testing 2023-02-16 21:10:35 +01:00
Ingo Oppermann
acc4d7ec5a WIP: verify policies for processes, rtmp, and srt. rewriter for local urls 2023-02-15 21:43:37 +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
a9459bda7c WIP enforcing policies on process level 2023-02-14 15:23:50 +01:00
Ingo Oppermann
a186307746 Add policy enforcer for SRT connections 2023-02-13 09:51:26 +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
11e55fc2c7 WIP: add casbin to access manager, allow to persist identities 2023-02-06 17:07:20 +01:00
Ingo Oppermann
8f1ff2d1a2 WIP: designing interfaces, detecting identity, enforcing policies 2023-02-03 17:43:06 +01:00
Ingo Oppermann
e9caa1b033 Merge branch 'dev' into casbin 2023-02-02 09:51:58 +01:00
Ingo Oppermann
1d30d9eecd Fix use of deprecated function 2023-02-01 16:24:57 +01:00
Ingo Oppermann
2a3288ffd0 Use abstract filesystem for stores 2023-02-01 16:09:20 +01:00
Ingo Oppermann
49b16f44a8 Add templates for s3 filesystems 2023-01-31 15:54:40 +01:00
Ingo Oppermann
e3d25b1bdd Add check for duplicate filesystem names 2023-01-31 15:53:48 +01:00
Ingo Oppermann
f519acfd71 Add S3 storage support 2023-01-31 14:45:58 +01:00
Ingo Oppermann
c05e16b6a0 Add tests 2023-01-24 21:04:24 +01:00
Ingo Oppermann
8c0f2ebabc Add tests 2023-01-24 16:45:28 +01:00
Ingo Oppermann
a8e86a7111 Add tests 2023-01-24 16:08:11 +01:00
Ingo Oppermann
ad3538d224 Add tests 2023-01-24 13:40:36 +01:00
Ingo Oppermann
59b7978470 Add tests 2023-01-24 11:22:31 +01:00
Ingo Oppermann
b2cd8f7133 Allow probe with individual timeout 2023-01-23 17:09:55 +01:00
Ingo Oppermann
505fbff03f Add tests 2023-01-23 11:42:17 +01:00
Ingo Oppermann
0147651de6 Extend placeholders
1. Allow variables in placeholders for parameter values, e.g.
   {rtmp,name=$processid}. The variable starts with a $ letter.
   The recognized variables are provided with the Replace func.

2. The template func recieves the process config and the name of
   the section where this placeholder is located, i.e. "global",
   "input", or "output".
2023-01-20 13:38:33 +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
5b01fb55ef Remove dependencies from core 2023-01-19 11:54:59 +01:00
Ingo Oppermann
311defb27c Fix /config/reload return type 2023-01-19 11:46:45 +01:00
Ingo Oppermann
f0ff3b89c1 Allow RTMP token as stream key in the path 2023-01-13 11:12:21 +01:00
Ingo Oppermann
05cc764ded Change names of struct fields in adaptor 2023-01-13 10:19:41 +01:00
Ingo Oppermann
c9c965b38e Merge branch 'dev' into casbin 2023-01-11 21:10:31 +01:00
Ingo Oppermann
ea79b87236 Add format annotation for integer types for swagger documentation 2023-01-11 21:05:40 +01:00
Ingo Oppermann
1ab66bf636 merge 2023-01-11 20:37:47 +01:00
Ingo Oppermann
6eaf7e8380 Merge branch 'dev' into casbin 2023-01-11 20:37:03 +01:00
Ingo Oppermann
96eae9a539 Add adapter 2023-01-11 20:36:12 +01:00
Ingo Oppermann
8014512a82 Add missing dependencies 2023-01-10 19:05:05 +01:00
Ingo Oppermann
481cd79e6d Update swagger API documentation 2023-01-10 19:03:26 +01:00
Ingo Oppermann
8d64ee5d54 Add casbin test binary 2023-01-10 18:59:53 +01:00
Ingo Oppermann
1bbb7a9c1f Use config locations for import and ffmigrage 2023-01-03 11:45:10 +01:00
Ingo Oppermann
17c9f6ef13 Test different standard location for config file
If no path is given in the environment variable CORE_CONFIGFILE, different
standard locations will be probed:
- os.UserConfigDir() + /datarhei-core/config.js
- os.UserHomeDir() + /.config/datarhei-core/config.js
- ./config/config.js
If the config.js doesn't exist in any of these locations, it will be
assumed at ./config/config.js
2023-01-03 07:55:55 +01:00
Ingo Oppermann
ff6b0d9584 Require go1.19 for tests 2023-01-03 07:05:00 +01:00
Ingo Oppermann
378a3cd9cf Allow to set a soft memory limit for the binary itself
The setting debug.memory_limit_mbytes should not be used in conjuction
with debug.force_gc because the memory limit influences the garbage
collector.
2023-01-02 11:58:54 +01:00
Ingo Oppermann
992b04d180 Allow alternative syntax for auth0 tenants as environment variable 2023-01-02 11:39:58 +01:00
Ingo Oppermann
391681447e Fix MustDir config type to create directory 2023-01-02 10:54:29 +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
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
65a617c2af Fix modifying DTS in RTMP packets (datarhei/restreamer#487, datarhei/restreamer#367) 2022-12-29 10:43:15 +01:00