11package config
22
33import (
4+ "encoding/json"
45 "fmt"
56 "os"
67 "strconv"
@@ -22,8 +23,9 @@ type Config struct {
2223 KeycloakClientSecret string // Confidential client secret
2324 LeaseName string // Leader election lease name
2425 PodName string // This pod's name (from downward API)
25- AgentImagePullPolicy string // ImagePullPolicy for agent pods (default: IfNotPresent)
26- AgentImagePullSecrets []string // Pull secret names for agent pods (comma-separated via env)
26+ AgentImagePullPolicy string // ImagePullPolicy for agent pods (default: IfNotPresent)
27+ AgentImagePullSecrets []string // Pull secret names for agent pods (comma-separated via env)
28+ AgentPodAnnotations map [string ]string // Extra annotations stamped on every agent pod (e.g. admission webhook break-glass)
2729 AgentStorageClass string
2830 IdleTimeout time.Duration // Idle timeout before auto-hibernation (0 = disabled, default: 1h)
2931 TerminationGracePeriod int64 // Termination grace period in seconds for agent pods (default: 5)
@@ -79,10 +81,17 @@ func LoadFromEnv() (*Config, error) {
7981 }
8082 }
8183 }
84+ if v := os .Getenv ("AGENT_POD_ANNOTATIONS" ); v != "" {
85+ ann := map [string ]string {}
86+ if err := json .Unmarshal ([]byte (v ), & ann ); err != nil {
87+ return nil , fmt .Errorf ("AGENT_POD_ANNOTATIONS: invalid JSON: %w" , err )
88+ }
89+ cfg .AgentPodAnnotations = ann
90+ }
8291 cfg .AgentStorageClass = os .Getenv ("AGENT_STORAGE_CLASS" )
8392 cfg .IdleTimeout = envOrDefaultDuration ("HUMR_IDLE_TIMEOUT" , 1 * time .Hour )
8493 cfg .TerminationGracePeriod = int64 (envOrDefaultInt ("HUMR_TERMINATION_GRACE_PERIOD" , 5 ))
85- cfg .EnvoyImage = envOrDefault ("ENVOY_IMAGE" , "envoyproxy/envoy-distroless: v1.32.0 " )
94+ cfg .EnvoyImage = envOrDefault ("ENVOY_IMAGE" , "envoyproxy/envoy:distroless- v1.37.2 " )
8695 cfg .EnvoyPort = envOrDefaultInt ("ENVOY_PORT" , 10000 )
8796 cfg .EnvoyMitmCAIssuer = envOrDefault ("ENVOY_MITM_CA_ISSUER" , "humr-mitm-ca-issuer" )
8897 cfg .EnvoyMitmLeafDuration = envOrDefaultDuration ("ENVOY_MITM_LEAF_DURATION" , 0 )
0 commit comments