6a2ebe83b6
Wire option merging for scheduled test executions
...
Fetch user/domain/service-level plugin options via GetTestPluginOptions
and merge them with schedule-specific options (schedule opts take priority)
before running a test. Previously tests only used schedule.Options.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 18:28:49 +07:00
f72149b854
Add panic recovery in plugin execution goroutine
...
Wrap plugin.RunTest() call with defer/recover so a panicking plugin sends
an error to errorChan instead of silently killing the worker goroutine.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 18:28:49 +07:00
8d4dd2d913
Implement cleanup stubs for test result retention
...
- Add DeleteTestResultsBefore/DeleteCompletedExecutionsBefore to storage interface and KV implementation
- Implement CleanupOldResults() using configured ResultRetentionDays (default 90 days)
- Implement DeleteCompletedExecutions() removing records older than given duration
- Wire both into testScheduler.cleanup() so daily cleanup actually prunes data
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 18:28:49 +07:00
2d1a74c38c
Add admin API and frontend for scheduler management
2026-02-11 18:28:49 +07:00
c32e2febe6
Implement tests scheduler
2026-02-11 18:28:49 +07:00
d74c8ec4ba
Implement backend model for test results and schedule
2026-02-11 18:28:49 +07:00
5ec9884df0
Implement plugin options retrieval
2026-02-11 18:25:52 +07:00
15dfecf2b0
Add usescases to handle test plugins
2026-02-11 18:25:52 +07:00
960ab87612
plugins: Refactor with intermediate structs
2026-02-11 18:25:52 +07:00
6df6a4f219
Load tests plugins
2026-02-11 18:25:52 +07:00
0d4348fc3b
Create admin interface base
2026-01-26 12:34:55 +08:00
33e2743da4
Refactor provider usecase: simplification
2025-11-07 17:59:57 +07:00
28ce266659
Refactor authuser usecase: simplification
2025-11-07 17:59:57 +07:00
03558359da
Refactor domain usecase: simplification
2025-11-07 17:59:57 +07:00
5cc3275fa5
Refactor domain_log usecase: simplification
2025-11-07 17:59:57 +07:00
87f71c4e5a
Refactor session usecase: simplification
2025-11-07 17:59:57 +07:00
8fa8efcefc
insights: Send stats about users' settings
continuous-integration/drone/push Build is failing
2025-06-12 20:07:57 +02:00
c6c8c13ea0
insights: In case of error, retry during the next hour
2025-06-12 14:45:13 +02:00
ebb5d34be5
Use ListRecordsUC when generating zonefile
2025-06-10 09:53:44 +02:00
b2b6467575
Refactor domain/provider/zone usecase: split in multiple files
2025-05-28 23:02:22 +02:00
1408e04f45
Refactor domain's logs usecase: split in multiple files
2025-05-28 23:02:22 +02:00
ef10d16e09
Refactor user usecase: split in multiple files
2025-05-28 23:02:22 +02:00
0495ab4693
Refactor auth_user usecase: split in multiple files
2025-05-28 23:02:22 +02:00
cffbc104ae
Refactor session usecase: split in multiple files
2025-05-28 22:00:02 +02:00
356e733e76
Move config struct to model, avoid dependancy to storage
2025-05-28 22:00:02 +02:00
5ef9419072
refactor: restructure project architecture and folder hierarchy
...
- Moved usecases into internal/usecase
- Renamed internal/utils to internal/helpers for better naming semantics
- Clarified separation between domain model, usecases, adapters, and web/API
2025-05-28 22:00:02 +02:00
b77e2b8c3a
Refactor App to add clarity
2025-05-22 15:46:06 +02:00
fb971236f9
Rename Service to Usecase to be consistent
2025-05-22 15:46:06 +02:00
eb60145ca2
Rename DoMigration to improve self-readability
2025-05-22 15:46:05 +02:00
401ba892f7
Use iterators in return to ListAll database functions
2025-05-22 15:46:05 +02:00
72b9602f71
Update database calls terminology
2025-05-22 15:46:05 +02:00
f4daca892e
Simplify database calls and move the logic in usecases: providers
2025-05-22 15:46:05 +02:00
f36337e14c
Reports usage statistics to happydomain.org
2025-04-22 14:29:08 +02:00
0edc2e66e2
Clean architecture refactoring
2025-04-22 14:15:03 +02:00
f0c24ea80e
Implement OIDC authentication
...
Fixes: https://github.com/happyDomain/happydomain/issues/27
2024-05-23 17:29:34 +02:00
3d9aecf214
Refactor session to use gorilla like sessions
2024-05-23 17:29:34 +02:00
1035610be0
Relicense the project to AGPL-3.0
2023-12-24 11:42:00 +01:00
a72a889442
Fix potential Slowloris Attack because ReadHeaderTimeout was not configured (CWE-400)
2023-11-22 10:03:43 +01:00
56b22bade5
Fix project name to permit go get
continuous-integration/drone/push Build is running
2023-09-07 11:37:18 +02:00
79c60c1472
Add listening info log
2023-08-23 23:37:42 +02:00
c0a3ea2d4c
This is happyDomain now
continuous-integration/drone/push Build is passing
2022-01-18 10:16:32 +01:00
cf416224d1
Refactor to use gin-gonic
2021-06-09 22:51:13 +02:00