This is an automated email from the ASF dual-hosted git repository.
zhongxjian pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-kubernetes.git
The following commit(s) were added to refs/heads/master by this push:
new 34d11b71 [operator] fix installcomp logic (#615)
34d11b71 is described below
commit 34d11b716122fe67dd9821e1f1f7bcc21e5c40c6
Author: Jian Zhong <[email protected]>
AuthorDate: Wed Feb 19 18:44:02 2025 +0800
[operator] fix installcomp logic (#615)
---
operator/pkg/component/component.go | 84 ++++++++++++++++++++++---------------
operator/pkg/install/installer.go | 4 +-
operator/pkg/render/manifest.go | 20 ---------
3 files changed, 53 insertions(+), 55 deletions(-)
diff --git a/operator/pkg/component/component.go
b/operator/pkg/component/component.go
index b7e4177f..71f8ba56 100644
--- a/operator/pkg/component/component.go
+++ b/operator/pkg/component/component.go
@@ -9,55 +9,72 @@ import (
type Name string
const (
- BaseComponentName Name = "Base"
- AdminComponentName Name = "Admin"
- RegisterComponentName Name = "Register"
+ BaseComponentName Name = "Base"
+ AdminComponentName Name = "Admin"
+ NacosRegisterComponentName Name = "Nacos"
+ ZookeeperRegisterComponentName Name = "Zookeeper"
)
+type Component struct {
+ UserFacingName Name
+ SpecName string
+ ResourceType string
+ ResourceName string
+ Default bool
+ HelmSubDir string
+ HelmValuesTreeRoot string
+ FlattenValues bool
+}
+
var AllComponents = []Component{
{
- UserFacingName: BaseComponentName,
- SpecName: "base",
- Default: true,
- HelmSubDir: "base",
- HelmTreeRoot: "base.global",
+ UserFacingName: BaseComponentName,
+ SpecName: "base",
+ Default: true,
+ HelmSubDir: "base",
+ HelmValuesTreeRoot: "global",
},
{
- UserFacingName: AdminComponentName,
- SpecName: "admin",
- Default: true,
- HelmSubDir: "admin",
- HelmTreeRoot: "",
+ UserFacingName: AdminComponentName,
+ SpecName: "admin",
+ ResourceType: "Deployment",
+ Default: true,
+ HelmSubDir: "admin",
+ HelmValuesTreeRoot: "admin",
},
{
- UserFacingName: RegisterComponentName,
- SpecName: "register",
- Default: true,
- HelmSubDir: "dubbo-control/register-discovery",
- HelmTreeRoot: "",
+ UserFacingName: NacosRegisterComponentName,
+ SpecName: "nacos",
+ ResourceType: "StatefulSet",
+ ResourceName: "register",
+ Default: true,
+ HelmSubDir: "dubbo-control/register-discovery/nacos",
+ HelmValuesTreeRoot: "nacos",
+ },
+ {
+ UserFacingName: ZookeeperRegisterComponentName,
+ SpecName: "zookeeper",
+ ResourceType: "StatefulSet",
+ ResourceName: "register",
+ Default: true,
+ HelmSubDir:
"dubbo-control/register-discovery/zookeeper",
+ HelmValuesTreeRoot: "zookeeper",
},
-}
-
-type Component struct {
- UserFacingName Name
- SpecName string
- Default bool
- HelmSubDir string
- HelmTreeRoot string
- FlattenValues bool
}
var (
userFacingCompNames = map[Name]string{
- BaseComponentName: "Dubbo Core",
- AdminComponentName: "Dubbo Dashboard",
- RegisterComponentName: "Dubbo Register Plane",
+ BaseComponentName: "Dubbo Core",
+ AdminComponentName: "Dubbo Dashboard",
+ NacosRegisterComponentName: "Dubbo Nacos Register Plane",
}
Icons = map[Name]string{
- BaseComponentName: "🛸",
- RegisterComponentName: "📡",
- AdminComponentName: "🛰",
+ BaseComponentName: "🛸",
+ // TODO DubbodComponentName: "📡",
+ NacosRegisterComponentName: "🪝",
+ ZookeeperRegisterComponentName: "⚓",
+ AdminComponentName: "🛰",
}
)
@@ -92,6 +109,7 @@ func (c Component) Get(merged values.Map)
([]apis.MetadataCompSpec, error) {
if spec.Namespace == "" {
spec.Namespace = "dubbo-system"
}
+
spec.Raw = m
return spec, nil
}
diff --git a/operator/pkg/install/installer.go
b/operator/pkg/install/installer.go
index 627b3b95..314a07ee 100644
--- a/operator/pkg/install/installer.go
+++ b/operator/pkg/install/installer.go
@@ -218,9 +218,9 @@ func (i Installer) prune(manifests []manifest.ManifestSet)
error {
}
var componentDependencies = map[component.Name][]component.Name{
- component.RegisterComponentName: {},
+ component.NacosRegisterComponentName: {},
component.BaseComponentName: {
- component.RegisterComponentName,
+ component.NacosRegisterComponentName,
component.AdminComponentName,
},
component.AdminComponentName: {},
diff --git a/operator/pkg/render/manifest.go b/operator/pkg/render/manifest.go
index 4c7cd22d..4ccdf2b7 100644
--- a/operator/pkg/render/manifest.go
+++ b/operator/pkg/render/manifest.go
@@ -177,28 +177,8 @@ func validateDubboOperator(dop values.Map, logger
clog.Logger) error {
}
func applyComponentValuesToHelmValues(comp component.Component, spec
apis.MetadataCompSpec, merged values.Map) values.Map {
- root := comp.HelmTreeRoot
if spec.Namespace != "" {
spec.Namespace = "dubbo-system"
}
- if comp.FlattenValues {
- cv, f := merged.GetPathMap("spec.values." + root)
- if f {
- vals, _ := merged.GetPathMap("spec.values")
- nv := values.Map{
- "global": vals["global"],
- }
- for k, v := range vals {
- _, isMap := v.(map[string]any)
- if !isMap {
- nv[k] = v
- }
- }
- for k, v := range cv {
- nv[k] = v
- }
- merged["spec"].(map[string]any)["values"] = nv
- }
- }
return merged
}