snowplow

command module
v1.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 3, 2026 License: Apache-2.0 Imports: 41 Imported by: 0

README

snowplow

Snowplow is a web service that plays a key role within the suite of components that make up Krateo PlatformOps.

It serves multiple purposes, primarily acting as a bridge between Krateo's custom resources and the UI. By enabling a dynamic and declarative approach to defining UI components and layouts, Snowplow ensures that the interface is interpreted and rendered seamlessly by Krateo Frontend.

It handles on-demand resolution of the RESTAction custom resource and all Krateo Frontend Widgets custom resources.

Learn More

Developer Guide
User Guide
Examples

Documentation

Overview

Command snowplow is the snowplow server: it resolves Krateo RESTAction and frontend Widget custom resources into the JSON the Krateo frontend renders, served over /call. It wires the HTTP mux (/call, /health, /readyz, /debug/vars, pprof and swagger), the per-GVR dispatchers, the informer/L1 caches and prewarm engine, RBAC, and the in-cluster Kubernetes clients, then runs the server until signalled to shut down.

Directories

Path Synopsis
Package apis aggregates snowplow's Kubernetes API type registrations.
Package apis aggregates snowplow's Kubernetes API type registrations.
Package docs Code generated by swaggo/swag.
Package docs Code generated by swaggo/swag.
e2e
bench/cfg1_probe command
cfg1_probe — minimal standalone binary used by the HG-321 falsifier (e2e/bench/cfg1_falsifier.sh) to verify CFG-1 cache-off compliance.
cfg1_probe — minimal standalone binary used by the HG-321 falsifier (e2e/bench/cfg1_falsifier.sh) to verify CFG-1 cache-off compliance.
internal
authn
Package authn is a small client for the Kubernetes intra-service auth login strategy: snowplow presents its own projected (audience-bound) ServiceAccount token to authn's /serviceaccount/login endpoint and receives an authn-issued JWT (signed by the Krateo authn issuer's jwt-sign-key).
Package authn is a small client for the Kubernetes intra-service auth login strategy: snowplow presents its own projected (audience-bound) ServiceAccount token to authn's /serviceaccount/login endpoint and receives an authn-issued JWT (signed by the Krateo authn issuer's jwt-sign-key).
cache
admission_ceiling.go — the SHARED, zero-knob adaptive-headroom calc used by BOTH memory-admission gates: the (c) nested-resolve aggregate bound (internal/resolvers/restactions/api/nested_resolve_bound.go) and the seed-unit bound (internal/handlers/dispatchers/seed_bound.go).
admission_ceiling.go — the SHARED, zero-knob adaptive-headroom calc used by BOTH memory-admission gates: the (c) nested-resolve aggregate bound (internal/resolvers/restactions/api/nested_resolve_bound.go) and the seed-unit bound (internal/handlers/dispatchers/seed_bound.go).
dynamic
Package dynamic is snowplow's thin client over the Kubernetes dynamic and discovery clients for working with unstructured objects.
Package dynamic is snowplow's thin client over the Kubernetes dynamic and discovery clients for working with unstructured objects.
handlers
Package handlers holds snowplow's top-level HTTP handlers.
Package handlers holds snowplow's top-level HTTP handlers.
handlers/dispatchers
Package dispatchers maps each handled GVR (restactions and widgets) to its HTTP handler and drives the resolve-and-serve path behind /call, including the L1 resolved-output cache lookup, refresh registration, and in-process nested-call seam.
Package dispatchers maps each handled GVR (restactions and widgets) to its HTTP handler and drives the resolve-and-serve path behind /call, including the L1 resolved-output cache lookup, refresh registration, and in-process nested-call seam.
handlers/middleware
compression.go — Track 2 (transport gzip, docs/seed-tail-restactions-budget-and-16mb-serve-trace-2026-07-04.md).
compression.go — Track 2 (transport gzip, docs/seed-tail-restactions-budget-and-16mb-serve-trace-2026-07-04.md).
handlers/util
Package util holds small, dependency-free helpers for parsing the /call HTTP request: the optional extras JSON context, the target GVR and namespaced name, call-path pagination, and an ETA formatter.
Package util holds small, dependency-free helpers for parsing the /call HTTP request: the optional extras JSON context, the target GVR and namespaced name, call-path pagination, and an ETA formatter.
logging
Package logging wires snowplow's OpenTelemetry Logs pipeline — the sink for the canonical, trace-correlated AuditEvent (D19a).
Package logging wires snowplow's OpenTelemetry Logs pipeline — the sink for the canonical, trace-correlated AuditEvent (D19a).
metrics
Package metrics mirrors snowplow's existing expvar counters/gauges onto an OpenTelemetry OTLP/HTTP MeterProvider so they can be scraped by the OTel collector alongside traces.
Package metrics mirrors snowplow's existing expvar counters/gauges onto an OpenTelemetry OTLP/HTTP MeterProvider so they can be scraped by the OTel collector alongside traces.
objects
Package objects is the leaf entry point for fetching a single Kubernetes object referenced by a resolver.
Package objects is the leaf entry point for fetching a single Kubernetes object referenced by a resolver.
rbac
Package rbac — EvaluateRBAC: in-process Role-Based Access Control evaluator (Tag 0.30.4, Revision 1 binding).
Package rbac — EvaluateRBAC: in-process Role-Based Access Control evaluator (Tag 0.30.4, Revision 1 binding).
resolvers/crds/schema
Package schema validates a custom resource's status against its CRD's OpenAPI schema.
Package schema validates a custom resource's status against its CRD's OpenAPI schema.
resolvers/restactions
Package restactions is the top-level RESTAction resolver.
Package restactions is the top-level RESTAction resolver.
resolvers/restactions/api
admission_parity_shim.go — TEST-ONLY exported shims for the cross-package ceiling drift-guard parity test (#64 parallel-copy backstop, fold 2026-07-03).
admission_parity_shim.go — TEST-ONLY exported shims for the cross-package ceiling drift-guard parity test (#64 parallel-copy backstop, fold 2026-07-03).
resolvers/widgets
Package widgets is the top-level frontend Widget resolver.
Package widgets is the top-level frontend Widget resolver.
resolvers/widgets/apiref
Package apiref resolves a widget's apiRef: it fetches the referenced RESTAction object and resolves it (through the restactions resolver), returning the resulting data dictionary for the widget to consume.
Package apiref resolves a widget's apiRef: it fetches the referenced RESTAction object and resolves it (through the restactions resolver), returning the resulting data dictionary for the widget to consume.
resolvers/widgets/resourcesrefs
Package resourcesrefs resolves a widget's static resourcesRefs.
Package resourcesrefs resolves a widget's static resourcesRefs.
resolvers/widgets/resourcesrefstemplate
Package resourcesrefstemplate expands a widget's resourcesRefsTemplate into concrete resource references.
Package resourcesrefstemplate expands a widget's resourcesRefsTemplate into concrete resource references.
resolvers/widgets/widgetdatatemplate
Package widgetdatatemplate evaluates a widget's widgetDataTemplate entries.
Package widgetdatatemplate evaluates a widget's widgetDataTemplate entries.
support/audit
Package audit emits the canonical Krateo AuditEvent as an OTLP LogRecord on the shared OTel Collector -> ClickHouse otel_logs plane (D19a).
Package audit emits the canonical Krateo AuditEvent as an OTLP LogRecord on the shared OTel Collector -> ClickHouse otel_logs plane (D19a).
support/jq
Package jq provides the shared gojq module loader used across snowplow's resolvers.
Package jq provides the shared gojq module loader used across snowplow's resolvers.
tracing
Package tracing wires snowplow's OpenTelemetry trace pipeline.
Package tracing wires snowplow's OpenTelemetry trace pipeline.
scripts
checkresolvedentrysites command
Command checkresolvedentrysites is the L-SCOPE-COMPLETENESS CI guard (docs/test-blindspot-analysis-2026-07-24.md, class 3 — enumeration incompleteness).
Command checkresolvedentrysites is the L-SCOPE-COMPLETENESS CI guard (docs/test-blindspot-analysis-2026-07-24.md, class 3 — enumeration incompleteness).
checkresolveopts command
Command checkresolveopts is the CI guard for the 0.30.230-class nil-rc defect: a ResolveOptions struct literal that omits its rest.Config field leaves it zero (nil), which threads 8 calls deep and breaks every Kind=* widget /call at cache.GVRFor -> discoverPluralInfo ("plurals discovery: nil *rest.Config").
Command checkresolveopts is the CI guard for the 0.30.230-class nil-rc defect: a ResolveOptions struct literal that omits its rest.Config field leaves it zero (nil), which threads 8 calls deep and breaks every Kind=* widget /call at cache.GVRFor -> discoverPluralInfo ("plurals discovery: nil *rest.Config").

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL