Ingo Oppermann
9462ccfd48
Move IAM dependency to rewriter module
2023-07-10 13:20:24 +02:00
Ingo Oppermann
34404a76d2
Update dependencies
2023-07-10 11:11:47 +02:00
Ingo Oppermann
71b613371a
Add debug flag to cluster to disable FFmpeg check
2023-07-10 11:07:24 +02:00
Ingo Oppermann
ba9227dc96
Cleanup of cluster proxy and proxy node
2023-07-07 22:51:53 +02:00
Ingo Oppermann
4aec1d9817
Upgrade dependencies
2023-07-07 16:50:15 +02:00
Ingo Oppermann
97121f3ca5
Use clone of http.Transport defaults
2023-07-07 11:23:41 +02:00
Ingo Oppermann
ccecbe3c8e
Improve FFmpeg skills testing
2023-07-06 21:41:10 +02:00
Ingo Oppermann
9905ac70f0
Check for equal FFmpeg skills, remove /v1/version
2023-07-06 16:12:06 +02:00
Ingo Oppermann
6c2e8b0ec3
Make ffmpeg skills compareable
2023-07-06 10:27:56 +02:00
Ingo Oppermann
604893f8bb
Make process probe endpoint not available in read-only mode
2023-07-05 11:14:30 +02:00
Ingo Oppermann
71dbfe329e
Add /api/v3/cluster/process/:id/probe endpoint
2023-07-05 11:03:45 +02:00
Ingo Oppermann
e49de44eb7
Deploy processes with order stop to nodes
2023-07-05 09:55:11 +02:00
Ingo Oppermann
2d7affdec8
Bump version provisorially to 16.14.0
2023-07-04 14:51:58 +02:00
Ingo Oppermann
a8965cdec7
Change core shutdown sequence
...
Now the cluster, restreamer (processes), and the servers (HTTP, HTTP, RTMP, SRT)
are shutdown first, then any other services. Before, e.g. the session collector
was closed very early before the servers. This would have lead to loss of a few
sessions.
2023-07-04 12:35:08 +02:00
Ingo Oppermann
3e1c934f2c
Use cleanup function
2023-07-04 12:31:17 +02:00
Ingo Oppermann
352289f759
Fix register session after close
2023-07-04 12:30:43 +02:00
Ingo Oppermann
3ff5251eba
Fix test
2023-07-04 12:29:45 +02:00
Ingo Oppermann
e71a352521
Update dependencies
2023-07-03 21:31:46 +02:00
Ingo Oppermann
c5d52dbeb3
Add gops agent
...
The gops agent can be enabled by providing an address to
CORE_DEBUG_AGENT_ADDRESS where it will listen to requests
from the gops utility.
2023-07-03 21:27:44 +02:00
Ingo Oppermann
9c88e88619
Rearrange code
2023-07-03 20:39:47 +02:00
Ingo Oppermann
adcbd98467
Add CORE_TLS_SECRET configuration
...
This secret will be used to encrypt automatically obtained secrets at
rest, i.e. in a storage. They will be decrypted on demand. If the
secret is wrong, stored certificates can't be decrypted. For changing
the secret, the stored certificated must be deleted first in order
to obtain new ones that will be encrypted with the new secret.
2023-07-03 16:02:39 +02:00
Ingo Oppermann
c4d9d8afcb
Make emergency leadership only available in a cluster with two nodes
2023-06-30 16:59:11 +02:00
Ingo Oppermann
c3b604cda2
Fix nil pointer dereference
2023-06-30 11:41:47 +02:00
Ingo Oppermann
d6a88cb0c5
Add /v3/cluster/healthy endpoint
2023-06-29 22:08:47 +02:00
Ingo Oppermann
d66bd61746
Fix tests and lint errors
2023-06-29 21:58:30 +02:00
Ingo Oppermann
6e156d0f3a
Allow to acquire certificates in multi-node cluster
2023-06-29 21:15:04 +02:00
Ingo Oppermann
2b58c11bb1
Fix cluster process update on metadata change
2023-06-28 16:26:36 +02:00
Ingo Oppermann
a6d454b03f
Add CORE_TLS_STAGING
...
Set this value to true in order to use the Let's Encrypt staging CA,
otherwise the production CA will be used, which is the default.
2023-06-28 11:55:56 +02:00
Ingo Oppermann
72a0566bc6
Add CORE_CLUSTER_STARTUP_TIMEOUT_SEC configuration value
2023-06-28 11:41:24 +02:00
Ingo Oppermann
64112ca2b0
Print log message if cluster is degraded
2023-06-28 11:32:13 +02:00
Ingo Oppermann
a86dc5c920
Fix make autocert manager available to followers
2023-06-28 10:47:07 +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
b78a2368b3
Add experimental challenge forwarder
2023-06-26 22:16:32 +02:00
Ingo Oppermann
7fc58454e4
Allow to cancel core startup
2023-06-26 21:02:31 +02:00
Ingo Oppermann
a4b0c4fc36
Add experimental LE certificate retrieval for cluster
2023-06-26 20:38:16 +02:00
Ingo Oppermann
ddb18a8c3c
Return error on reload on encountering an invalid identity
2023-06-26 14:05: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
6f47f96f6e
Get peer config via cluster API
2023-06-26 10:35:00 +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
f37896a1e3
Implement certmagic.Storage on cluster
2023-06-23 21:00:45 +02:00