123 Commits

Author SHA1 Message Date
Rob Watson
c999e418f5 fixup! refactor(container): restart handling 2025-04-13 09:49:16 +02:00
Rob Watson
3bcc682df5 fixup! refactor(container): restart handling 2025-04-13 06:02:55 +02:00
Rob Watson
10ca605db0 fixup! refactor(container): restart handling 2025-04-13 05:55:53 +02:00
Rob Watson
b1713b22b2 fixup! refactor(container): restart handling 2025-04-13 05:25:38 +02:00
Rob Watson
a74a2c7819 fixup! refactor(container): restart handling 2025-04-13 05:23:16 +02:00
Rob Watson
7242534a10 fixup! refactor(container): restart handling 2025-04-13 05:20:47 +02:00
Rob Watson
888aadbdc0 fixup! refactor(container): restart handling 2025-04-13 05:14:58 +02:00
Rob Watson
23b669cbff fixup! refactor(container): restart handling 2025-04-13 05:11:25 +02:00
Rob Watson
cffaee9557 fixup! refactor(container): restart handling 2025-04-12 20:42:41 +02:00
Rob Watson
aba53e7cd3 fixup! refactor(container): restart handling 2025-04-12 20:05:24 +02:00
Rob Watson
a0a2e55a67 fixup! refactor(container): restart handling 2025-04-12 19:41:31 +02:00
Rob Watson
7eff6c6065 refactor(container): restart handling 2025-04-12 19:08:17 +02:00
Rob Watson
f7f9843c4b test(integration): add coverage for custom stream key 2025-04-11 09:57:45 +02:00
Rob Watson
b69e1ecf86 ci: fix go test parallelism flag
Ref: https://medium.com/@emil.musician/the-ultimate-guide-to-parallel-testing-in-go-p-parallel-and-t-parallel-demystified-50bb6ca07046
2025-04-11 09:44:58 +02:00
Rob Watson
524dafd800 security(mediaserver): bind to 127.0.0.1 2025-04-11 09:28:30 +02:00
Rob Watson
b257f456ba feat(config): tighten RTMP URL validation
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-10 22:00:37 +02:00
Rob Watson
045498a2ce fix(ui): handle table wraparound on k binding
Some checks are pending
ci-build / lint (push) Waiting to run
ci-build / build (push) Blocked by required conditions
ci-build / release (push) Blocked by required conditions
2025-04-10 07:38:05 +02:00
Rob Watson
08a5690d30 test: add container debug logs 2025-04-10 07:38:05 +02:00
Rob Watson
d332a78af1 fix(ui): further key handling improvements
Avoids losing user destination selection when re-rendering the page,
especially after adding or removing a destination.
2025-04-10 07:37:24 +02:00
Rob Watson
f791125c02 feat(ui): update key bindings 2025-04-09 21:05:06 +02:00
Rob Watson
30da888184 feat(ui): improve error handling on startup 2025-04-09 06:50:35 +02:00
Rob Watson
2fbf2176cf feat(ui): improve key handling
- handle add-destination input in own handler func
- handle CTRL-C when modal is visible
- fix destination wraparound on key-up
2025-04-08 13:39:17 +02:00
Rob Watson
af4410c4cf feat(ui): prefer "source" to "ingress" 2025-04-08 13:06:43 +02:00
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