Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions kubernetes/helm/gateway-helm-chart/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: gateway
kubeVersion: ">=1.24.0-0"
description: Helm chart for deploying the Gateway Operator components
version: 1.1.4
appVersion: "1.2.0-beta-SNAPSHOT"
version: 1.2.0-alpha
appVersion: "1.2.0-alpha2"
type: application
home: https://github.com/wso2/api-platform
sources:
Expand Down
1 change: 1 addition & 0 deletions kubernetes/helm/gateway-helm-chart/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,7 @@ All configurable values are documented in `values.yaml`. Component blocks are fu
- `gateway.controller.tls.*` – TLS certificate configuration for HTTPS listener using cert-manager or existing secrets.
- `gateway.controller.upstreamCerts.*` – Custom CA certificates for upstream backend TLS verification.
- `gateway.config.policy_engine.*` – policy engine configuration including xDS client settings and admin API.
- `gateway.config.api_key` / `gateway.config.subscriptions` – API-key policy tuning (length/algorithm/issuer) and opt-in application-subscription validation.

Refer to the inline comments inside `values.yaml` for a complete matrix of options and the expected data types for each block.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,16 @@ data:
shutdown_timeout = {{ $gc.server.shutdown_timeout | quote }}
gateway_id = {{ $gc.server.gateway_id | quote }}

[controller.admin_server]
enabled = {{ $gc.admin_server.enabled }}
port = {{ $gc.admin_server.port }}
allowed_ips = [{{- range $i, $ip := $gc.admin_server.allowed_ips }}{{- if gt $i 0 }}, {{ end }}{{ $ip | quote }}{{- end }}]

[controller.admin_server.pprof]
enabled = {{ $gc.admin_server.pprof.enabled }}
block_profile_rate = {{ $gc.admin_server.pprof.block_profile_rate }}
mutex_profile_fraction = {{ $gc.admin_server.pprof.mutex_profile_fraction }}

[controller.policy_server]
port = {{ $gc.policy_server.port }}

Expand Down Expand Up @@ -81,6 +91,16 @@ data:

[controller.policies]
definitions_path = {{ $gc.policies.definitions_path | quote }}
{{- if $gc.policies.build_manifest_path }}
build_manifest_path = {{ $gc.policies.build_manifest_path | quote }}
{{- end }}

{{- if $gc.llm }}
[controller.llm]
{{- if $gc.llm.template_definitions_path }}
template_definitions_path = {{ $gc.llm.template_definitions_path | quote }}
{{- end }}
{{- end }}

[controller.controlplane]
insecure_skip_verify = {{ $gc.controlplane.insecure_skip_verify }}
Expand All @@ -95,6 +115,19 @@ data:
apim_oauth2_username = {{ $gc.controlplane.apim_oauth2_username | quote }}
apim_oauth2_password = {{ $gc.controlplane.apim_oauth2_password | quote }}

{{- if $gc.event_hub }}
[controller.event_hub]
poll_interval = {{ $gc.event_hub.poll_interval | quote }}
cleanup_interval = {{ $gc.event_hub.cleanup_interval | quote }}
retention_period = {{ $gc.event_hub.retention_period | quote }}

[controller.event_hub.database]
max_open_conns = {{ $gc.event_hub.database.max_open_conns }}
max_idle_conns = {{ $gc.event_hub.database.max_idle_conns }}
conn_max_lifetime = {{ $gc.event_hub.database.conn_max_lifetime | quote }}
conn_max_idle_time = {{ $gc.event_hub.database.conn_max_idle_time | quote }}
{{- end }}

{{- range $gc.encryption.providers }}
[[controller.encryption.providers]]
type = {{ .type | quote }}
Expand All @@ -112,6 +145,18 @@ data:
https_port = {{ $router.https_port }}
tracing_service_name = {{ $router.tracing_service_name | default "" | quote }}

[router.vhosts.main]
{{- if $router.vhosts.main.domains }}
domains = [{{- range $i, $d := $router.vhosts.main.domains }}{{- if gt $i 0 }}, {{ end }}{{ $d | quote }}{{- end }}]
{{- end }}
default = {{ $router.vhosts.main.default | quote }}

[router.vhosts.sandbox]
{{- if $router.vhosts.sandbox.domains }}
domains = [{{- range $i, $d := $router.vhosts.sandbox.domains }}{{- if gt $i 0 }}, {{ end }}{{ $d | quote }}{{- end }}]
{{- end }}
default = {{ $router.vhosts.sandbox.default | quote }}

[router.access_logs]
enabled = {{ $router.access_logs.enabled }}
format = {{ $router.access_logs.format | quote }}
Expand Down Expand Up @@ -143,6 +188,13 @@ data:
route_idle_timeout_ms = {{ $router.upstream.timeouts.route_idle_timeout_ms }}
connect_timeout_ms = {{ $router.upstream.timeouts.connect_timeout_ms }}

{{- if $router.lua }}
[router.lua.request_transformation]
{{- if $router.lua.request_transformation.script_path }}
script_path = {{ $router.lua.request_transformation.script_path | quote }}
{{- end }}
{{- end }}

[router.http_listener]
server_header_transformation = {{ $router.http_listener.server_header_transformation | quote }}
server_header_value = {{ $router.http_listener.server_header_value | quote }}
Expand Down Expand Up @@ -210,6 +262,10 @@ data:
level = {{ $gc.logging.level | quote }}
format = {{ $gc.logging.format | quote }}

[controller.metrics]
enabled = {{ .Values.gateway.controller.metrics.enabled }}
port = {{ .Values.gateway.controller.metrics.port }}

[policy_engine.server]
extproc_port = {{ $pe.server.extproc_port }}

Expand All @@ -218,6 +274,11 @@ data:
port = {{ $pe.admin.port }}
allowed_ips = [{{- range $i, $ip := $pe.admin.allowed_ips }}{{- if gt $i 0 }}, {{ end }}{{ $ip | quote }}{{- end }}]

[policy_engine.admin.pprof]
enabled = {{ $pe.admin.pprof.enabled }}
block_profile_rate = {{ $pe.admin.pprof.block_profile_rate }}
mutex_profile_fraction = {{ $pe.admin.pprof.mutex_profile_fraction }}

[policy_engine.config_mode]
mode = {{ $pe.config_mode.mode | quote }}

Expand All @@ -238,6 +299,18 @@ data:
level = {{ $pe.logging.level | quote }}
format = {{ $pe.logging.format | quote }}

[policy_engine.metrics]
enabled = {{ $pe.metrics.enabled }}
port = {{ $pe.metrics.port }}

[policy_engine.python_executor]
timeout = {{ $pe.python_executor.timeout | quote }}

[policy_engine.python_executor.server]
mode = {{ $pe.python_executor.server.mode | quote }}
port = {{ $pe.python_executor.server.port }}
host = {{ $pe.python_executor.server.host | quote }}

{{- if .Values.gateway.config.analytics }}
{{- $analyticsEnabled := and (kindIs "bool" .Values.gateway.config.analytics.enabled) .Values.gateway.config.analytics.enabled }}
[analytics]
Expand Down Expand Up @@ -357,6 +430,11 @@ data:
sampling_rate = {{ .Values.gateway.config.tracing.sampling_rate }}
{{- end }}

{{- if .Values.gateway.config.subscriptions }}
[subscriptions]
enable_validation = {{ .Values.gateway.config.subscriptions.enable_validation }}
{{- end }}

{{- if .Values.gateway.gatewayRuntime.policies.llmPricing.enabled }}
[policy_configurations.llm_cost_v1]
pricing_file = "/etc/policy-engine/llm-pricing/model_prices.json"
Expand All @@ -366,12 +444,26 @@ data:
{{ dict "policy_configurations" .Values.gateway.config.policy_configurations | toToml | indent 4 }}
{{- end }}

{{- if .Values.gateway.config.api_key }}
[api_key]
api_keys_per_user_per_api = {{ .Values.gateway.config.api_key.api_keys_per_user_per_api }}
algorithm = {{ .Values.gateway.config.api_key.algorithm | quote }}
min_key_length = {{ .Values.gateway.config.api_key.min_key_length }}
max_key_length = {{ .Values.gateway.config.api_key.max_key_length }}
issuer = {{ .Values.gateway.config.api_key.issuer | quote }}
{{- end }}

{{- if .Values.gateway.config.immutable_gateway }}
[immutable_gateway]
enabled = {{ .Values.gateway.config.immutable_gateway.enabled }}
artifacts_dir = {{ .Values.gateway.config.immutable_gateway.artifacts_dir | quote }}
{{- end }}

{{- if .Values.gateway.config.mcp }}
[mcp]
append_resource_path_to_backend = {{ .Values.gateway.config.mcp.append_resource_path_to_backend }}
{{- end }}

{{- if .Values.gateway.config_toml }}
{{ .Values.gateway.config_toml | indent 4 }}
{{- end }}
Loading
Loading