This is an automated email from the ASF dual-hosted git repository.

wu-sheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking-helm.git


The following commit(s) were added to refs/heads/master by this push:
     new 9a97f2d  Add zipkinUrl for horizon-ui (#188)
9a97f2d is described below

commit 9a97f2d6f0291a580b00f13ddcc1a03079a23b23
Author: Wan Kai <[email protected]>
AuthorDate: Fri May 22 14:33:20 2026 +0800

    Add zipkinUrl for horizon-ui (#188)
---
 chart/skywalking/README.md                     |  6 +++---
 chart/skywalking/templates/oap-deployment.yaml |  8 ++++----
 chart/skywalking/templates/ui-configmap.yaml   | 16 ++++++++++------
 chart/skywalking/values.yaml                   |  8 ++++++--
 4 files changed, 23 insertions(+), 15 deletions(-)

diff --git a/chart/skywalking/README.md b/chart/skywalking/README.md
index f2b8996..53ca136 100644
--- a/chart/skywalking/README.md
+++ b/chart/skywalking/README.md
@@ -57,8 +57,8 @@ The following table lists the configurable parameters of the 
Skywalking chart an
 | `oap.ports.grpc`                       | OAP grpc port for tracing or metric 
                                                                                
                                                                                
                                                                                
                                       | `11800`                                
                                                                                
  |
 | `oap.ports.rest`                       | OAP http port for the GraphQL query 
protocol (used by the UI and by `swctl`)                                        
                                                                                
                                                                                
                                       | `12800`                                
                                                                                
  |
 | `oap.ports.admin`                      | OAP admin REST port (runtime-rule, 
DSL debugging, inspect, status). Required by Horizon UI's admin features; 
available on OAP 10.5+                                                          
                                                                                
                                              | `17128`                         
                                                                                
         |
-| `oap.ports.zipkinreceiver`             | OAP http port for Zipkin 
receiver(not exposed by default)                                                
                                                                                
                                                                                
                                                  | `9411`                      
                                                                                
             |
-| `oap.ports.zipkinquery`                | OAP http port for querying Zipkin 
traces and UI(not exposed by default)                                           
                                                                                
                                                                                
                                         | `9412`                               
                                                                                
    |
+| `oap.ports.zipkin-receiver`            | OAP http port for Zipkin 
receiver(not exposed by default)                                                
                                                                                
                                                                                
                                                  | `9411`                      
                                                                                
             |
+| `oap.ports.zipkin-query`               | OAP http port for querying Zipkin 
traces and UI(not exposed by default)                                           
                                                                                
                                                                                
                                         | `9412`                               
                                                                                
    |
 | `oap.replicas`                         | OAP k8s deployment replicas         
                                                                                
                                                                                
                                                                                
                                       | `2`                                    
                                                                                
  |
 | `oap.service.type`                     | OAP svc type                        
                                                                                
                                                                                
                                                                                
                                       | `ClusterIP`                            
                                                                                
  |
 | `oap.service.annotations`              | OAP svc annotations                 
                                                                                
                                                                                
                                                                                
                                       | `{}`                                   
                                                                                
  |
@@ -102,7 +102,7 @@ The following table lists the configurable parameters of 
the Skywalking chart an
 | `ui.persistence.storageClass`          | Storage class for the chart-managed 
PVC                                                                             
                                                                                
                                                                                
                                       | `""`                                   
                                                                                
  |
 | `ui.persistence.accessModes`           | PVC access modes                    
                                                                                
                                                                                
                                                                                
                                       | `[ReadWriteOnce]`                      
                                                                                
  |
 | `ui.persistence.size`                  | PVC size                            
                                                                                
                                                                                
                                                                                
                                       | `1Gi`                                  
                                                                                
  |
-| `ui.config`                            | `horizon.yaml` content (deep-merged 
onto chart defaults that point `oap.queryUrl`/`adminUrl` at the in-cluster 
OAP). See the upstream 
[`horizon.example.yaml`](https://github.com/apache/skywalking-horizon-ui/blob/main/horizon.example.yaml)
 and [horizon.yaml 
reference](https://github.com/apache/skywalking-horizon-ui/blob/main/docs/setup/horizon-yaml.md).
 `auth.local.users` defaults to empty (BFF refuses to start); see the root 
README "Web UI" sect [...]
+| `ui.config`                            | `horizon.yaml` content (deep-merged 
onto chart defaults that point `oap.queryUrl`/`adminUrl`/`zipkinUrl` at the 
in-cluster OAP; `zipkinUrl` is derived from `oap.ports.zipkin-query` and only 
resolves to a usable URL when that port is set). See the upstream 
[`horizon.example.yaml`](https://github.com/apache/skywalking-horizon-ui/blob/main/horizon.example.yaml)
 and [horizon.yaml 
reference](https://github.com/apache/skywalking-horizon-ui/blob/main/d [...]
 | `ui.envFromSecret`                     | Reference a Secret whose keys are 
exposed as env vars in the BFF container, for use with `${VAR}` interpolation 
in `ui.config` (e.g. admin password hash)                                       
                                                                                
                                           | `""`                               
                                                                                
      |
 | `ui.extraEnv`                          | Extra env vars passed to the BFF 
container                                                                       
                                                                                
                                                                                
                                          | `[]`                                
                                                                                
     |
 | `oapInit.nodeAffinity`                 | OAP init job node affinity policy   
                                                                                
                                                                                
                                                                                
                                       | `{}`                                   
                                                                                
  |
diff --git a/chart/skywalking/templates/oap-deployment.yaml 
b/chart/skywalking/templates/oap-deployment.yaml
index de076e4..d88c6ef 100644
--- a/chart/skywalking/templates/oap-deployment.yaml
+++ b/chart/skywalking/templates/oap-deployment.yaml
@@ -127,17 +127,17 @@ spec:
 {{ toYaml .Values.oap.resources | indent 10 }}
 {{- end }}
         env:
-{{- if .Values.oap.ports.zipkinreceiver }}
+{{- if index .Values.oap.ports "zipkin-receiver" }}
         - name: SW_RECEIVER_ZIPKIN
           value: default
         - name: SW_RECEIVER_ZIPKIN_REST_PORT
-          value: "{{ .Values.oap.ports.zipkinreceiver }}"
+          value: "{{ index .Values.oap.ports "zipkin-receiver" }}"
 {{- end }}
-{{- if .Values.oap.ports.zipkinquery }}
+{{- if index .Values.oap.ports "zipkin-query" }}
         - name: SW_QUERY_ZIPKIN
           value: default
         - name: SW_QUERY_ZIPKIN_REST_PORT
-          value: "{{ .Values.oap.ports.zipkinquery }}"
+          value: "{{ index .Values.oap.ports "zipkin-query" }}"
 {{- end }}
         - name: JAVA_OPTS
           value: "-Dmode=no-init {{ .Values.oap.javaOpts }}"
diff --git a/chart/skywalking/templates/ui-configmap.yaml 
b/chart/skywalking/templates/ui-configmap.yaml
index 81b22f7..99918fd 100644
--- a/chart/skywalking/templates/ui-configmap.yaml
+++ b/chart/skywalking/templates/ui-configmap.yaml
@@ -20,14 +20,18 @@ horizon.yaml is built by deep-merging:
   2. whatever the operator put in `ui.config`
 The merge order means user values win on every field except oap.queryUrl /
 oap.adminUrl, where we always default to the in-cluster service if the
-operator left them unset.
+operator left them unset. zipkinUrl is only injected when the Zipkin query
+port is enabled — Horizon's BFF rejects an empty/non-URL value at startup.
 */ -}}
-{{- $defaults := dict
-  "oap" (dict
-    "queryUrl" (printf "http://%s:%v"; (include "skywalking.oap.fullname" .) 
.Values.oap.ports.rest)
-    "adminUrl" (printf "http://%s:%v"; (include "skywalking.oap.fullname" .) 
(default 17128 .Values.oap.ports.admin))
-  )
+{{- $oapDefaults := dict
+  "queryUrl" (printf "http://%s:%v"; (include "skywalking.oap.fullname" .) 
.Values.oap.ports.rest)
+  "adminUrl" (printf "http://%s:%v"; (include "skywalking.oap.fullname" .) 
(default 17128 .Values.oap.ports.admin))
 }}
+{{- $zipkinQueryPort := index .Values.oap.ports "zipkin-query" }}
+{{- if $zipkinQueryPort }}
+{{- $_ := set $oapDefaults "zipkinUrl" (printf "http://%s:%v/zipkin"; (include 
"skywalking.oap.fullname" .) $zipkinQueryPort) }}
+{{- end }}
+{{- $defaults := dict "oap" $oapDefaults }}
 {{- $userConfig := default (dict) .Values.ui.config }}
 {{- $merged := mergeOverwrite (deepCopy $defaults) (deepCopy $userConfig) }}
 apiVersion: v1
diff --git a/chart/skywalking/values.yaml b/chart/skywalking/values.yaml
index f51d059..0f24c3c 100644
--- a/chart/skywalking/values.yaml
+++ b/chart/skywalking/values.yaml
@@ -46,8 +46,12 @@ oap:
     # null (or remove) if the deployed OAP version predates 10.5 — Horizon
     # admin features will be unavailable in that case.
     admin: 17128
-    # zipkinreceiver: 9411
-    # zipkinquery: 9412
+    # zipkin-receiver: 9411
+    # zipkin-query: 9412
+    # promql: 9090
+    # logql: 3100
+    # traceql: 3200
+    # metrics: 1234
   replicas: 2
   service:
     type: ClusterIP

Reply via email to