Add logviewer: web UI for the ClickHouse log store #1

Merged
benvin merged 3 commits from benvin/initial into main 2026-08-23 17:20:33 +10:00

3 Commits

Author SHA1 Message Date
unkin-agent b07872accd Narrow pre-commit exclude to vendored minified assets only
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-23 16:52:13 +10:00
unkin-agent 09f8fcd83d Split CI into pre-commit/test/build workflows for branch protection
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
Branch protection on this repo will require the contexts
ci/woodpecker/pr/pre-commit, ci/woodpecker/pr/test and
ci/woodpecker/pr/build, mirroring the node-lookup workflow layout.

- Adds .woodpecker/pre-commit.yaml running pre-commit via uvx
- Adds .pre-commit-config.yaml mirroring node-lookup (vendored
  web/static assets excluded)
- Adds .woodpecker/test.yaml with vet + gofmt check + race tests
- Reworks build.yaml to compile via make build plus the existing
  buildx dry-run image check, PR events only
- Renames docker.yaml to release.yaml per node-lookup convention
  (tag-driven docker release unchanged)
2026-08-23 16:44:19 +10:00
unkin-agent abc81e60c8 Add logviewer: web UI for the ClickHouse log store
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
Single Go binary with embedded Bootstrap 3 + jQuery UI, querying logs.raw
over the ClickHouse HTTP interface as the readonly logreader user. Runs
behind oauth2-proxy; the app does no auth itself. Server-side enforced
time bounds (15m default, 72h max), parameterized queries, raw-SQL WHERE
fragment wrapped with enforced bounds and LIMIT, tail polling with a
clamped cursor, facets, healthz. Woodpecker build/test plus tag-driven
image push to artifactapi docker-internal.
2026-08-23 16:39:22 +10:00