Skip to content

Extract seed alerts into shared function and add SQLite seeding#92

Merged
sarroutbi merged 1 commit into
keylime-webtool:mainfrom
sarroutbi:extract-seed-alerts-for-sqlite
May 13, 2026
Merged

Extract seed alerts into shared function and add SQLite seeding#92
sarroutbi merged 1 commit into
keylime-webtool:mainfrom
sarroutbi:extract-seed-alerts-for-sqlite

Conversation

@sarroutbi
Copy link
Copy Markdown
Contributor

Move hardcoded alert seed data from InMemoryAlertRepository into a reusable seed_alerts() function in models::alert, enabling both in-memory and SQLite repositories to share the same mock data. Add seed_mock_data config option to PersistedSettings so SQLite databases can be seeded on startup when the table is empty.

Move hardcoded alert seed data from InMemoryAlertRepository into a
reusable seed_alerts() function in models::alert, enabling both
in-memory and SQLite repositories to share the same mock data.

Add seed_mock_data to the Settings API so the frontend can toggle
mock data seeding via PUT /api/settings/keylime. When enabled,
alerts are seeded immediately without requiring a backend restart.
The flag is persisted to settings.toml automatically.

Introduce seed_if_empty() on the AlertRepository trait with a
default no-op; the SQLite implementation checks the table count
and inserts seed data when empty. AppState uses AtomicBool for
thread-safe mutation of the seed_mock_data flag.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Sergio Arroutbi <sarroutb@redhat.com>
@sarroutbi sarroutbi force-pushed the extract-seed-alerts-for-sqlite branch from dd88ecd to 0f300a0 Compare May 13, 2026 11:08
@sarroutbi sarroutbi merged commit e84a073 into keylime-webtool:main May 13, 2026
12 checks passed
@sarroutbi sarroutbi deleted the extract-seed-alerts-for-sqlite branch May 13, 2026 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant