Runtime Provisioner 0.8.0 Changelog


0.8.0 - 2026-09-29

  • AXPD-11927 - Breaking: ksml-provisioner is renamed to runtime-provisioner, along with its chart, its Kubernetes resources, its image and its Go module. Read the “How to Upgrade the KSML Provisioner to Runtime Provisioner 0.8.0” guide in the Axual documentation first. Endpoint paths and values keys are unchanged

  • AXPD-11927 - Breaking for monitoring: the alert name, the service, job, container and app.kubernetes.io/name labels and the OpenTelemetry service.name and scope all follow the rename, so dashboards, alert routes and silences stop matching

  • AXPD-11927 - Fix the OpenShift Route, which carried no traffic: it asked for a targetPort the Service does not have, and route.path defaulted to /api, which reaches no handler. route.path and the Ingress path now default to /

  • AXPD-11927 - A working Route or Ingress publishes an unauthenticated service, so set BASIC_AUTH_ENABLED=true with a username and password before you enable either

  • AXPD-11927 - Docker mode containers are labelled axual.io/managed-by=runtime-provisioner, and the bulk /status matches that label on its key, so containers left by 0.7.x stay listed and none has to be recreated

  • AXPD-12019 - Add GET /kafkaconnect/logs/download, which streams every worker’s current log file as one plain-text attachment in labelled sections, capped by CONNECT_DOWNLOAD_CAP_BYTES, 64 MiB by default

  • AXPD-12019 - Breaking for trace queries: the log download reports its spans under the shared scope axual.io/otel/runtime-provisioner instead of kafkaconnect-download, matching every other handler. The span name is unchanged

  • AXPD-12019 - The connector filter matches a log entry on its connector.context field instead of searching the line text, ending false positives such as a filter for sink matching orders-sink

  • AXPD-12019 - GET /kafkaconnect/logs accepts minLevel, keeping only lines at that severity or above in both modes, with stack trace lines kept alongside the line they belong to

  • AXPD-12019 - The connector filter no longer matches a connector whose name is a hyphen-separated suffix of another, so sink stops matching connector-producer-orders-sink-0

  • AXPD-12019 - A log stream reports when its history reached the start of what the workers still hold, so a short window is told apart from a log that has ended

  • AXPD-11974 - A Kafka Connect log stream sends the history a batch request answers with and then follows the log, from one read per worker, so tailLines means the same in both modes

  • AXPD-11974 - Breaking for API clients: GET /kafkaconnect/logs answers with entries, one time-ordered list carrying origin and timestamp per line, plus linesRead, linesReturned and degraded. The per-worker logs field is gone

  • AXPD-11974 - A filtered request reads a wider raw window, so tailLines bounds the answer and not the read. Adds CONNECT_FILTER_WINDOW_PERCENT (default 2000) and CONNECT_FILTER_WINDOW_MAX_LINES (default 50000), and the matching chart values

  • AXPD-11974 - Breaking for dashboards: the metric kafkaconnect.log.stream.errors is renamed to kafkaconnect.log.read.errors and gains a mode attribute of batch or stream

  • AXPD-11974 - Log streaming sends Waiting for output from the application…​ after 2 seconds of silence, and KSML reports a not-started container as starting instead of failing with a 500

  • AXPD-11856 - Add GET /kafkaconnect/logs, merging one Kafka Connect cluster’s worker pod logs into a single JSON or NDJSON answer, with the CONNECT_NAMESPACES, CONNECT_CONTAINER_NAME and MAX_CONCURRENT_LOG_STREAMS settings

  • AXPD-11856 - Add /healthz and /readyz, serve the KSML endpoints under /ksml/ beside the flat paths, and add KSML_ENABLED to switch KSML support off

  • AXPD-11856 - Breaking for the chart: liveness and readiness now use /healthz and /readyz instead of a port check, so do not pin image.tag below this chart version or the container restarts in a loop

  • AXPD-11856 - KSML log streaming can answer 503 when MAX_CONCURRENT_LOG_STREAMS is reached, because the cap is shared with Kafka Connect log streaming

  • AXPD-11873 - Add DOCKER_KSML_RUNNER_DEFAULTS_FILE to Docker mode, a ksml-runner.yaml-shaped defaults file deep-merged under every generated runner config, giving Docker Compose what CUSTOM_VALUES_FILE gives Kubernetes mode

  • Update dependencies (Helm 3.22.0, golang.org/x/crypto 0.57.0 with a security fix, OpenTelemetry OTLP gRPC exporter 1.46.0, and related modules)

  • Update default KSML CHART_VERSION to 1.3.2

0.7.0 - 2026-06-24

  • Add Docker runtime mode (DEPLOYMENT_TARGET=docker) to deploy KSML applications as Docker containers on the local Docker daemon, intended for local development and testing via Docker Compose

  • Introduce RuntimeService interface abstraction so all REST handlers are runtime-agnostic; Kubernetes and Docker runtimes are both implementations of this interface

  • Migrate Docker SDK from github.com/docker/docker v27 to moby/moby v29 split modules, resolving known CVEs in the previous dependency

  • Fix schemaRegistries JSON tag casing so deployments sending the conventional lowercase key are accepted correctly

  • Fix inverted error-type check in /metrics that could misclassify a missing Metrics Server as a missing deployment

  • AXPD-11468 - Add restart information for pods on /status endpoint

  • Update dependencies to latest patch versions (Helm 3.21.2, Kubernetes 0.36.2, golang.org/x/*, oras-go 2.6.1, and related transitive modules)

  • Update default KSML CHART_VERSION to 1.3.0

0.6.1 - 2026-04-08

  • AXPD-11353 - Fix DNS-1035 compliance for hashed KSML names by using {tenant}-{instance}-{hash16}-ksml format instead of a plain hash, ensuring the name always starts with an alphabetic character

  • Update default KSML CHART_VERSION to 1.2.0

0.6.0 - 2026-03-24

  • AXPD-11200 - Add streaming logs support for deployments

  • AXPD-9774 - Generated KSML Name can exceed k8s max length

0.5.1 - 2026-02-04

  • AXPD-11025 - PVC resize bugfix

0.5.0 - 2025-12-22

  • AXPD-10246 - Add /metrics endpoint to retrieve CPU and memory usage for KSML deployments. New permissions/roles needed for metrics collection

  • AXPD-10689 - Add optional cleanup parameter in /undeploy to delete PVCs

  • AXPD-10244 - Add stateStoresPersistence configuration support in /deploy

  • Update default KSML CHART_VERSION to 1.1.1

0.4.0 - 2025-09-22

  • Add configurable schemaRegistries in /deploy

  • Update default KSML CHART_VERSION to 1.1.0

  • Removed .Capabilities.APIVersions checks from PrometheusRule and ServiceMonitor templates; resources are now created whenever their enabled values are set

0.3.0 - 2025-03-25

  • AXPD-10248 - Add Axual labels to customer’s pods

  • AXPD-10249 - Update roles to manage networking.k8s.io/NetworkPolicy resources

  • AXPD-10203 - Add deploymentMode to KSML’s pods

  • AXPD-10315 - Configurable cpu and memory in /deploy

  • Update default KSML CHART_VERSION to 1.0.8

0.2.1 - 2025-03-25

  • Update dependencies

0.2.0 - 2025-03-04

  • AXPD-9948 - Add Basic Authentication support

  • Add TLS support

  • Dependency Updates

0.1.1 - 2024-12-20

  • AXPD-9528 - Normalize case for tenant, instance, environment, application

0.1.0 - 2024-10-02

  • Initial version