From a7ac6a494d1820947e8c007586553afbf0e2b566 Mon Sep 17 00:00:00 2001 From: Shubham Hibare <20609766+hibare@users.noreply.github.com> Date: Sat, 31 Jan 2026 03:09:47 +0530 Subject: [PATCH] feat(spire-server): add logFormat configuration option (#735) * Add logFormat support to spire-server chart Adds the ability to configure SPIRE server log format (text or json) via the logFormat helm value. When set, it renders as log_format in the server configuration. Signed-off-by: Shubham Hibare * add default value Signed-off-by: Shubham Hibare * fix Signed-off-by: Shubham Hibare * fix Signed-off-by: Shubham Hibare --------- Signed-off-by: Shubham Hibare --- charts/spire/charts/spire-server/README.md | 1 + charts/spire/charts/spire-server/templates/configmap.yaml | 3 +++ charts/spire/charts/spire-server/values.yaml | 2 ++ 3 files changed, 6 insertions(+) diff --git a/charts/spire/charts/spire-server/README.md b/charts/spire/charts/spire-server/README.md index 118b549..3688ce4 100644 --- a/charts/spire/charts/spire-server/README.md +++ b/charts/spire/charts/spire-server/README.md @@ -157,6 +157,7 @@ In order to run Tornjak with simple HTTP Connection only, make sure you don't cr | `adminIDs` | SPIFFE IDs that, when present in a caller’s X509-SVID, grant that caller admin privileges. | `[]` | | `auditLogEnabled` | If true, enables audit logging | `false` | | `logLevel` | The log level, valid values are "debug", "info", "warn", and "error" | `info` | +| `logFormat` | The log format, valid values are "text" and "json" | `text` | | `jwtIssuer` | The JWT issuer domain. Defaults to oidc-discovery.$trustDomain if unset | `""` | | `clusterName` | Set the name of the Kubernetes cluster. (`kubeadm init --service-dns-domain`) | `example-cluster` | | `trustDomain` | Set the trust domain to be used for the SPIFFE identifiers | `example.org` | diff --git a/charts/spire/charts/spire-server/templates/configmap.yaml b/charts/spire/charts/spire-server/templates/configmap.yaml index 573069b..4e22858 100644 --- a/charts/spire/charts/spire-server/templates/configmap.yaml +++ b/charts/spire/charts/spire-server/templates/configmap.yaml @@ -52,6 +52,9 @@ server: trust_domain: {{ include "spire-lib.trust-domain" . | quote }} data_dir: "/run/spire/data" log_level: {{ .Values.logLevel | quote }} + {{- if .Values.logFormat }} + log_format: {{ .Values.logFormat | quote }} + {{- end }} jwt_issuer: {{ include "spire-lib.jwt-issuer" . | quote }} audit_log_enabled: {{ .Values.auditLogEnabled }} diff --git a/charts/spire/charts/spire-server/values.yaml b/charts/spire/charts/spire-server/values.yaml index 2ed50f8..9db8d29 100644 --- a/charts/spire/charts/spire-server/values.yaml +++ b/charts/spire/charts/spire-server/values.yaml @@ -230,6 +230,8 @@ adminIDs: [] auditLogEnabled: false ## @param logLevel The log level, valid values are "debug", "info", "warn", and "error" logLevel: info +## @param logFormat The log format, valid values are "text" and "json" +logFormat: "text" ## @param jwtIssuer The JWT issuer domain. Defaults to oidc-discovery.$trustDomain if unset jwtIssuer: ""