100 Commits

Author SHA1 Message Date
Rob Watson
18d5ef3db1 fix(container): do not error on pull image failure 2025-04-08 13:03:29 +02:00
Rob Watson
1e759b6f42 fix: print help on -h flag 2025-04-06 16:58:33 +02:00
Rob Watson
3523a1a34e feat(mediaserver): update MediaMTX image
Some checks failed
ci-build / lint (push) Has been cancelled
ci-build / build (push) Has been cancelled
ci-build / release (push) Has been cancelled
2025-04-06 09:25:50 +02:00
Rob Watson
5735b2d73a refactor: consistent naming 2025-04-06 06:43:25 +02:00
Rob Watson
0fbbe25e1b refactor: extract test helpers 2025-04-06 06:43:25 +02:00
Rob Watson
1c742426ed chore: fix typo 2025-04-05 21:42:36 +02:00
Rob Watson
e778c3c443 fix(ui): mediaserver error modal improvements 2025-04-05 21:42:36 +02:00
Rob Watson
e14cfdee85 refactor: startup check
Some checks failed
ci-build / lint (push) Has been cancelled
ci-build / build (push) Has been cancelled
ci-build / release (push) Has been cancelled
- separate mediaserver create and start
- avoid blocking main app loop during startup check
- remove ui.allowQuit
- add integration test
v0.0.4
2025-04-05 09:43:11 +02:00
Rob Watson
266a9307d2 fix(config): ensure log file path is set
Fix a bug introduced in 6952516 which led to the app being unable to
start if logging was enabled but no explicit path was set. In this case,
the expected behaviour is to fallback to a log file in the XDG file
hierarchy, but this was lost due to broken config file defaults
handling.

This commit separates the behaviour when setting defaults when reading
an existing configuration, from those set when creating a brand new
configuration.
2025-04-04 20:49:05 +02:00
Rob Watson
cd2c339c10 fix(ui): close UI from main goroutine
This seems to have been unnecessary and can actually cause the app to
hang on closing if ctrl-c is pressed when the "add destinations" page is
visible.
2025-04-04 15:59:34 +02:00
Rob Watson
54cfe3a55f feat(ui): add "no destinations" page 2025-04-04 15:59:34 +02:00
Rob Watson
87f6786387 chore: bump Go to 1.24.2 2025-04-03 20:10:48 +02:00
Rob Watson
2eeb809e6e chore(ui): update copy 2025-04-03 20:10:36 +02:00
Rob Watson
522be621ee refactor: replicator 2025-04-03 17:23:27 +02:00
Rob Watson
6952516204 chore: config fixes
- remove example config file
- don't set default values on read
- omit empty fields
- indent yaml 2 spaces
2025-04-01 21:06:31 +02:00
Rob Watson
ba356137c3 chore: enable Docker API version negotiation 2025-04-01 21:03:05 +02:00
Rob Watson
b05bc6f98b fix: avoid data race during app shutdown 2025-04-01 19:18:22 +02:00
Rob Watson
34f18b0fbd build: disable changelog sort 2025-04-01 19:12:42 +02:00
Rob Watson
5bf19f92b0 security(mediaserver): stop leaking credentials to Docker events log 2025-04-01 17:48:34 +02:00
Rob Watson
e4438baa65 feat: require ingress for egress
Some checks failed
ci-build / lint (push) Has been cancelled
ci-build / build (push) Has been cancelled
ci-build / release (push) Has been cancelled
v0.0.3
2025-04-01 16:39:51 +02:00
Rob Watson
036366a875 chore: improve CLI help message 2025-04-01 15:59:30 +02:00
Rob Watson
d3a6d6acdb feat: validate destinations 2025-04-01 11:49:46 +02:00
Rob Watson
cddcb0eb4d test(integration): extract test setup logic 2025-04-01 07:53:55 +02:00
Rob Watson
7edb975b8e feat(ui): add and remove destinations 2025-03-31 07:13:22 +02:00
Rob Watson
3f25458b03 chore: tidy 2025-03-28 05:50:51 +01:00
Rob Watson
be0408a296 refactor(mediaserver): TLS in healthcheck 2025-03-28 05:47:40 +01:00
Rob Watson
2cde04728a feat(mediaserver): use TLS for API endpoints 2025-03-27 08:18:25 +01:00
Rob Watson
bdb77cb6bb ci: configure goreleaser
Some checks failed
ci-build / lint (push) Has been cancelled
ci-build / build (push) Has been cancelled
ci-build / release (push) Has been cancelled
v0.0.2
2025-03-26 21:30:07 +01:00
Rob Watson
bcaf9f1cae feat(mediaserver): authenticate internal clients 2025-03-26 21:12:08 +01:00
Rob Watson
3866d9dd07 doc: fix typo 2025-03-26 17:41:04 +01:00
Rob Watson
3ec4f49b0f observe: allow DEBUG logs via env vars 2025-03-26 17:40:57 +01:00
Rob Watson
ffce32f4fe fix(container): handle race condition on ContainerWait
When a destination is removed, its container is stopped and removed.
This preempts the ContainerWait call in the destination loop, which then
tries to call ContainerInspect to infer if the container is restarting
or not.

It was already known that this call is prone to race conditions. This
commit handles an additional case where the container has already been
completely removed by the time the call is made; we can safely infer
that it is not restarting.
2025-03-26 13:42:25 +01:00
Rob Watson
b508632e70 feat(config): create example configuration file on first launch 2025-03-25 21:19:15 +01:00
Rob Watson
f6b893d89c feat: version
Some checks failed
ci-build / lint (push) Has been cancelled
ci-build / build (push) Has been cancelled
ci-build / release (push) Has been cancelled
v0.0.1
2025-03-25 06:32:49 +01:00
Rob Watson
fe600ddcb8 chore: remove mediamtx.yml 2025-03-25 04:32:07 +01:00
Rob Watson
117ed7562c feat: stream key 2025-03-24 21:59:45 +01:00
Rob Watson
2468111369 test(integration): use require.EventuallyWithT 2025-03-22 09:56:58 +01:00
Rob Watson
797ef57417 feat: pull progress 2025-03-19 20:54:19 +01:00
Rob Watson
b231e8736c feat: cleanup zombie networks 2025-03-16 15:05:43 +01:00
Rob Watson
7664d14207 fix(mediaserver): avoid spurious reset of LiveChangedAt 2025-03-16 13:27:25 +01:00
Rob Watson
85fd91d37c chore: add LICENSE 2025-03-16 12:52:24 +01:00
Rob Watson
9314506c75 test(integration): extend app test 2025-03-16 12:36:28 +01:00
Rob Watson
65db62166e build: update test runner config 2025-03-14 20:57:04 +01:00
Rob Watson
99766c8230 feat: error handling 2025-03-14 20:57:04 +01:00
Rob Watson
96117c0a15 feat(config): logging 2025-03-10 20:06:01 +01:00
Rob Watson
7dba1768a4 refactor: internal package 2025-03-09 19:58:25 +01:00
Rob Watson
223b7fcd83 feat: copy config file path 2025-03-09 18:34:01 +01:00
Rob Watson
a1c7eb640a fix: handle docker engine error before UI starts 2025-03-09 17:48:59 +01:00
Rob Watson
d6a028c37b feat(ui): improve modal handling 2025-03-09 13:23:14 +01:00
Rob Watson
ab6ed51b77 chore: bump dependencies 2025-03-09 11:37:58 +01:00