208 Commits

Author SHA1 Message Date
Ingo Oppermann
2e8f8fb1a7
Fix swagger tags 2023-03-17 13:58:40 +01:00
Ingo Oppermann
ffaa3d9324
Merge branch 'dev' into vod 2023-03-17 13:56:07 +01:00
Ingo Oppermann
562b7aed92
Use better naming for storage endpoint documentation 2023-03-17 13:55:19 +01:00
Ingo Oppermann
4ce8a0eaa3
Add config value for how many minimal process report should be kept in the history
A minimal history is a history entry without log and prelude.

The corresponding config entry is ffmpeg.log.max_minimal_history. This value is
added on top of the ffmpeg.log.max_history value. I.e. the latest max_history
entries contain the log and prelude, and the remaining entries don't have the
log and prelude. In total there are max_minimal_history+max_history history
entries.

If you want no history, set both values to 0.
If you want only full history, set max_minimal_history to 0.
If you want only minimal history, set max_history to 0.
2023-03-16 12:25:06 +01:00
Ingo Oppermann
5b2b2243bb
Fix report history tests 2023-03-14 15:24:05 +01:00
Ingo Oppermann
206c81d7e8
Emit stale progress only if all outputs of a process are stale 2023-03-14 15:13:57 +01:00
Ingo Oppermann
1d298038dd
Add date of when a process exited in report history 2023-03-14 15:10:06 +01:00
Ingo Oppermann
b76e6a9b2c
Add Range support for HTTP GET requests on a mounted filesystem 2023-03-08 11:50:59 +01:00
Ingo Oppermann
8e29cbdd12
Update changelog 2023-03-06 10:24:19 +01:00
Ingo Oppermann
e434716fb2
Fix tests 2023-03-03 18:53:09 +01:00
Ingo Oppermann
81473e6adb
Fix placeholder parameter parsing 2023-03-03 17:26:59 +01:00
Ingo Oppermann
175cfc2324
Fix using prefix syntax for filesystem operations 2023-03-03 16:18:46 +01:00
Ingo Oppermann
a3ff16ef30
Add PUT /api/v3/fs endpoint for file operations 2023-03-03 14:26:17 +01:00
Ingo Oppermann
eb3f396793
Remove debug printf, add tests 2023-03-02 21:04:37 +01:00
Ingo Oppermann
1b14ca4d89
Add tests 2023-03-02 15:34:00 +01:00
Ingo Oppermann
97869759a1
Add tests 2023-03-02 14:49:41 +01:00
Ingo Oppermann
0dedcddece
Add process report API 2023-03-02 11:15:57 +01:00
Ingo Oppermann
cceb39192a
Fix receiving proper current command args, simplifying retrieval of last log line 2023-03-01 20:13:49 +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
3151670829
Add descriptions to functions 2023-03-01 15:48:52 +01:00
Ingo Oppermann
86b3c053f1
Add exit state and last progress data to process report history 2023-03-01 15:28:28 +01:00
Ingo Oppermann
3cad139952
Create directories for output files to be written on disk 2023-03-01 11:08:20 +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
f345707c63
Update README 2023-02-23 10:23:32 +01:00
Ingo Oppermann
cbf15c7f2f
Merge branch 'main' into dev 2023-02-23 10:18:58 +01:00
Jan Stabenow
31dce12b8e
Mod updates build-files 2023-02-23 10:17:39 +01:00
Ingo Oppermann
5ad5edef73
Upgrade golang.org/x/net 2023-02-22 11:54:39 +01:00
Ingo Oppermann
1c04961fc1
Fix tests 2023-02-21 12:57:33 +01:00
Ingo Oppermann
d77e4d7160
Bump version to 16.12.0 2023-02-20 17:31:29 +01:00
Ingo Oppermann
05a176370a
Fix missing filesystem metadata and middlewares 2023-02-14 16:16:35 +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
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
ea79b87236
Add format annotation for integer types for swagger documentation 2023-01-11 21:05:40 +01:00
Ingo Oppermann
481cd79e6d
Update swagger API documentation 2023-01-10 19:03:26 +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