-
2c991eabd2
feat(ansible): scope picker in run form + create_run() DB inventory generation
bvandeusen
2026-06-05 18:49:02 -04:00
-
d906232eb2
feat(ansible): GIT_ASKPASS per-source HTTP token auth + settings UI
bvandeusen
2026-06-05 18:48:00 -04:00
-
ea47169049
feat(ansible): generate_inventory() + fetch_scope_targets() + unit tests
bvandeusen
2026-06-05 18:46:22 -04:00
-
10df05c13e
feat(ansible): add inventory_scope to AnsibleRun — 0017_ansible_run_scope migration
bvandeusen
2026-06-05 18:45:38 -04:00
-
fa32488fdf
feat(ansible): AnsibleGroup + join table — 0016_ansible_inventory_groups migration
bvandeusen
2026-06-05 18:45:16 -04:00
-
c11b3f01ed
feat(ansible): AnsibleTarget model + 0015_ansible_inventory_targets migration
bvandeusen
2026-06-05 18:45:00 -04:00
-
eb319d715e
docs: Ansible inventory infrastructure implementation plan
bvandeusen
2026-06-05 18:19:17 -04:00
-
06dc5073ca
fix(deploy): explicit backend network for steward↔db traffic
bvandeusen
2026-06-05 11:37:10 -04:00
-
98edb12abb
fix(deploy): let app own secret key — remove STEWARD_SECRET_KEY from deploy compose
bvandeusen
2026-06-05 11:28:53 -04:00
-
ef6c90c022
Revert "fix(deploy): move POSTGRES_PASSWORD default into .env.example"
bvandeusen
2026-06-05 11:25:31 -04:00
-
42d9a7ba07
fix(deploy): move POSTGRES_PASSWORD default into .env.example
bvandeusen
2026-06-05 11:24:29 -04:00
-
fe57dde57b
feat(ci): publish steward image to the registry + remote-deploy compose
bvandeusen
2026-06-05 11:08:43 -04:00
-
38f61b71c1
feat(ansible): run a playbook against a single Steward host (task 547)
bvandeusen
2026-06-02 19:26:58 -04:00
-
0bf007173b
feat(ansible): credentials — SSH key, become, vault, host-key checking (task 548)
bvandeusen
2026-06-02 18:41:58 -04:00
-
0a36a57901
chore(dev): mount ./ansible-dev as a local Ansible source at /srv/ansible
bvandeusen
2026-06-02 17:58:18 -04:00
-
534ed030b8
test(alerts): commit the test user before the rule's created_by FK
bvandeusen
2026-06-02 14:31:25 -04:00
-
43a5325e69
fix(alerts): persist AlertOperator by value to match the DB enum
bvandeusen
2026-06-02 14:27:25 -04:00
-
4771d17f6d
feat(alerts): run an Ansible playbook on alert firing (task 250)
bvandeusen
2026-06-02 14:22:29 -04:00
-
8b62eb2ca3
feat(ansible): parameterized runs — extra-vars, limit, tags, dry-run (task 546)
bvandeusen
2026-06-02 13:31:16 -04:00
-
5af7312a72
fix(ansible): shorten migration 0012 revision id to fit alembic_version(32)
bvandeusen
2026-06-02 11:35:55 -04:00
-
fb579bcf97
feat(ansible): ship ansible in image + allow system-triggered runs (task 545)
bvandeusen
2026-06-02 11:31:43 -04:00
-
ccc7601182
fix(docker): stop ignoring plugins/ in image build; dev-friendly compose
bvandeusen
2026-06-02 10:35:58 -04:00
-
712aec60c1
test(host_agent): assert parsed agent version matches AGENT_VERSION constant
bvandeusen
2026-06-01 12:14:53 -04:00
-
3b2146bc7a
feat(host_agent): agent reports its primary IP; mirror into Host.address (task 274)
bvandeusen
2026-06-01 12:11:41 -04:00
-
af60ca446d
fix(plugins): complete steward rename across bundled plugins; clear lint debt
bvandeusen
2026-06-01 11:22:20 -04:00
-
d925709c77
ci: add Forgejo CI (lint + unit + Postgres integration) + ci-requirements.md
bvandeusen
2026-06-01 08:37:32 -04:00
-
a7a281cb11
feat(plugins): fold first-party plugins in-tree; bundled + external roots
bvandeusen
2026-06-01 08:37:24 -04:00
-
-
88ab5b917e
chore: rename project Roundtable → Steward
bvandeusen
2026-04-25 16:20:14 -04:00
-
e118543b2e
feat(dashboard): use public_base_url helper for share link generation
bvandeusen
2026-04-16 00:18:45 -04:00
-
b7293588be
feat(settings): public_base_url field in general settings UI
bvandeusen
2026-04-15 20:30:12 -04:00
-
5bc8ef2566
feat(settings): add public_base_url helper with request.host_url fallback
bvandeusen
2026-04-15 20:29:49 -04:00
-
3a3d094a2a
test(settings): failing tests for public_base_url helper
bvandeusen
2026-04-15 20:29:28 -04:00
-
2c68ba5094
feat(settings): cache PUBLIC_BASE_URL into app.config on reload
bvandeusen
2026-04-15 20:29:13 -04:00
-
fdbcc58385
feat(settings): add general.public_base_url default
bvandeusen
2026-04-15 20:29:02 -04:00
-
dbe50794d3
Merge pull request 'feat: host_agent plugin — push-model host resource monitoring' (#1) from feat/host-agent into main
bvandeusen
2026-04-15 13:43:57 +00:00
-
-
44cc2f2fce
docs(plugins): catalog entry for host_agent
feat/host-agent
bvandeusen
2026-04-15 00:31:27 -04:00
-
3382bd956b
test(host_agent): stale-agent filter (pure function)
bvandeusen
2026-04-15 00:30:42 -04:00
-
f7e21c0a21
feat(host_agent): register widgets and alert metric catalog entry
bvandeusen
2026-04-14 22:31:31 -04:00
-
ded768c089
test(host_agent): install.sh template render + agent.py source parse
bvandeusen
2026-04-14 22:29:15 -04:00
-
5e0bfcc2b0
test(host_agent): pure-function tests for metric expansion
bvandeusen
2026-04-14 22:27:08 -04:00
-
673ba72510
test(host_agent): agent POST, backoff, and main loop
bvandeusen
2026-04-14 22:22:45 -04:00
-
8bed58073b
test(host_agent): ring buffer and payload builder unit tests
bvandeusen
2026-04-14 22:09:12 -04:00
-
b6b1c8adca
test(host_agent): agent resource collectors unit tests
bvandeusen
2026-04-14 22:07:39 -04:00
-
6056bad01e
test(host_agent): agent config parser unit tests
bvandeusen
2026-04-14 21:44:46 -04:00
-
b1cfc377da
docs(plugins): host_agent plan — path 1 note (no DB tests)
bvandeusen
2026-04-14 18:13:41 -04:00
-
98003f3458
docs(plugins): host_agent implementation plan
bvandeusen
2026-04-13 23:46:37 -04:00
-
e243e0e0e1
docs(plugins): host-agent plugin design spec
bvandeusen
2026-04-13 23:35:12 -04:00
-
d6e094bbb5
refactor: remove broken NUT/UPS plugin and managed-NUT startup
bvandeusen
2026-04-13 22:41:08 -04:00
-
0596f1d9c1
docs: roundtable rename sweep
bvandeusen
2026-04-13 20:16:25 -04:00
-
55a4fac3e9
copy: flip visible wordmark → Roundtable
bvandeusen
2026-04-13 18:40:30 -04:00
-
62d28b1032
build: docker-compose service → roundtable
bvandeusen
2026-04-13 18:40:26 -04:00
-
ee0b22bafd
chore(compose): mount docker socket and traefik log path
bvandeusen
2026-04-13 18:06:05 -04:00
-
a64f2195de
feat: ROUNDTABLE_* env vars with FABLEDSCRYER_* fallback
bvandeusen
2026-04-13 17:40:16 -04:00
-
fcd26346a2
build: container paths point at roundtable package
bvandeusen
2026-04-13 17:27:00 -04:00
-
fad1c12eac
feat: fabledscryer→roundtable import alias shim
bvandeusen
2026-04-13 17:26:30 -04:00
-
1ecc831673
build: point alembic at roundtable/migrations
bvandeusen
2026-04-13 17:14:14 -04:00
-
2df0d421c2
build: rename package to roundtable in pyproject
bvandeusen
2026-04-13 17:14:07 -04:00
-
94a35da86e
refactor: update imports fabledscryer → roundtable
bvandeusen
2026-04-13 17:13:55 -04:00
-
8aad2ab43d
refactor: rename package directory fabledscryer → roundtable
bvandeusen
2026-04-13 17:10:31 -04:00
-
fd9c6d941d
style(login): placeholder labels instead of field headers
bvandeusen
2026-04-13 16:39:06 -04:00
-
ce43a3900b
style(login): larger wordmark + tagline, drop Sign In heading
bvandeusen
2026-04-13 16:37:35 -04:00
-
c6401d8416
feat(login): Roundtable wordmark above tagline
bvandeusen
2026-04-13 16:13:36 -04:00
-
6c883e4121
copy: relocate "Under Watch, Under Care" to login tagline
bvandeusen
2026-04-13 15:45:05 -04:00
-
4d154653ba
copy: dashboard hero "Under Watch, Under Care"
bvandeusen
2026-04-13 14:58:38 -04:00
-
b0d9e9b6ad
feat: themed 404 and 500 pages
bvandeusen
2026-04-13 14:57:45 -04:00
-
b6954bd9d2
copy: broader themed empty states + restore DNS CTA
bvandeusen
2026-04-13 14:56:41 -04:00
-
5a701e0558
copy: themed empty states + login tagline
bvandeusen
2026-04-13 14:55:10 -04:00
-
ba2c698801
style: candlelit glow background replaces star field
bvandeusen
2026-04-13 14:52:27 -04:00
-
e83c69c6c2
feat: heraldic seal logo (crown & ellipse table)
bvandeusen
2026-04-13 14:51:47 -04:00
-
33df0c2f9a
style: swap Libertinus Serif → EB Garamond
bvandeusen
2026-04-13 14:51:19 -04:00
-
e8691bc7e4
style: pewter & gold palette tokens
bvandeusen
2026-04-13 14:51:12 -04:00
-
1f6404f0fd
docs: rebrand implementation plan
bvandeusen
2026-04-13 14:40:26 -04:00
-
39074252d1
docs: rebrand design spec (FabledScryer → Roundtable)
bvandeusen
2026-04-13 14:30:40 -04:00
-
00dc4cdc9c
feat: per-plugin settings pages and multi-repo plugin catalog
bvandeusen
2026-03-23 18:41:31 -04:00
-
8558d15eeb
feat: plugin fault isolation notices + NUT managed mode fixes
bvandeusen
2026-03-23 18:04:53 -04:00
-
56283df5a1
feat: Ansible source manager UI — replace raw JSON textarea
bvandeusen
2026-03-23 17:24:35 -04:00
-
edc9b752d2
feat: drag-and-drop dashboard editing, alert dynamic fields
bvandeusen
2026-03-23 08:16:04 -04:00
-
93d5ed8fb0
feat: managed NUT setup, plugin config improvements, migration fix
bvandeusen
2026-03-23 08:15:48 -04:00
-
ced1eebe1d
feat: maintenance windows, reports, uptime widget, alert improvements
bvandeusen
2026-03-23 08:15:30 -04:00
-
3c70ac56b3
feat: OIDC/LDAP auth, audit log, maintenance windows, migrations
bvandeusen
2026-03-23 08:15:15 -04:00
-
484da1f263
feat: show update available when catalog version differs from installed
bvandeusen
2026-03-22 18:42:50 -04:00
-
-
3f437141fb
chore: update plugin catalog URL to git.fabledsword.com
bvandeusen
2026-03-22 18:36:09 -04:00
-
fa318073f1
chore: move plugins/ to separate repo, gitignore the directory
bvandeusen
2026-03-22 18:33:22 -04:00
-
230b542015
feat: rename to FabledScryer, multi-dashboard system, plugin management, branding
bvandeusen
2026-03-22 18:27:56 -04:00
-
165a202ba4
feat: UI redesign (CSS system, DNS widget, Traefik dashboard widget)
bvandeusen
2026-03-18 23:37:46 -04:00
-
d29c5b3eab
fix: suppress debconf frontend warnings during apt-get install
bvandeusen
2026-03-18 23:25:44 -04:00
-
a3a05070e7
fix: upgrade pip, run as non-root user, remove stale FABLEDNETMON_CONFIG env
bvandeusen
2026-03-18 23:23:52 -04:00
-
7a7ed2185a
feat: live ping pill widget (dashboard + /ping/ page with threshold settings)
bvandeusen
2026-03-18 23:18:26 -04:00
-
791af2d58f
feat: ping/DNS status and latency in hosts list and dashboard summary
bvandeusen
2026-03-18 23:09:49 -04:00
-
c26552b670
fix: install iputils-ping in Docker image for ICMP ping support
bvandeusen
2026-03-18 23:03:58 -04:00
-
d8eacffd48
fix: env.py reads FABLEDNETMON_DATABASE_URL and honors URL set by migration_runner
bvandeusen
2026-03-18 22:40:05 -04:00
-
f9ea87187b
test: update test_config.py for load_bootstrap API
bvandeusen
2026-03-18 22:31:17 -04:00
-
242398dc52
chore: remove config.yaml mount from docker-compose; update config example
bvandeusen
2026-03-18 20:36:26 -04:00
-
dfb433e779
feat: settings UI (admin-only, live-updates app.config)
bvandeusen
2026-03-18 20:35:39 -04:00
-
c5dff7ec8c
feat: two-phase migrations, DB settings loading in create_app
bvandeusen
2026-03-18 20:33:36 -04:00
-
03bbd8d0fa
feat: strip config.py to bootstrap only (db_url + auto-gen secret_key)
bvandeusen
2026-03-18 20:32:02 -04:00
-
80ce703a15
feat: settings service (get/set/load helpers, load_settings_sync)
bvandeusen
2026-03-18 20:29:52 -04:00
-
e6fa8baed1
feat: AppSetting model and migration 0004
bvandeusen
2026-03-18 20:22:23 -04:00
-
38416b412a
fix: dockerfile install order; add .dockerignore; update .gitignore
bvandeusen
2026-03-18 19:57:05 -04:00
-
4cc83c8a19
fix: use relative imports in traefik plugin to prevent double-registration; resolve PLUGIN_DIR path
bvandeusen
2026-03-18 18:46:02 -04:00