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 1997d56d [operator] add generate manifest logic
1997d56d is described below
commit 1997d56d38c8dbea987c30a97f1b39aadd96b657
Author: mfordjody <[email protected]>
AuthorDate: Sat Dec 14 08:08:55 2024 +0800
[operator] add generate manifest logic
---
operator/pkg/render/manifest.go | 37 +++++++++++++++++++++++++++++++++++--
1 file changed, 35 insertions(+), 2 deletions(-)
diff --git a/operator/pkg/render/manifest.go b/operator/pkg/render/manifest.go
index ee0c2d18..c946c1a7 100644
--- a/operator/pkg/render/manifest.go
+++ b/operator/pkg/render/manifest.go
@@ -6,6 +6,7 @@ import (
"github.com/apache/dubbo-kubernetes/operator/cmd/validation"
"github.com/apache/dubbo-kubernetes/operator/pkg/apis"
"github.com/apache/dubbo-kubernetes/operator/pkg/component"
+ "github.com/apache/dubbo-kubernetes/operator/pkg/helm"
"github.com/apache/dubbo-kubernetes/operator/pkg/manifest"
"github.com/apache/dubbo-kubernetes/operator/pkg/util"
"github.com/apache/dubbo-kubernetes/operator/pkg/util/clog"
@@ -120,9 +121,38 @@ func GenerateManifest(files []string, setFlags []string,
logger clog.Logger) ([]
}
for _, spec := range specs {
compVals := applyComponentValuesToHelmValues(comp,
spec, merged)
+ rendered, warnings, err := helm.Reader(spec.Namespace,
comp.HelmSubDir, compVals)
+ if err != nil {
+ return nil, nil, fmt.Errorf("helm render: %v",
err)
+ }
+ chartWarnings = util.AppendErrs(chartWarnings, warnings)
+ finalized, err := postProcess(comp, rendered, compVals)
+ if err != nil {
+ return nil, nil, fmt.Errorf("post process: %v",
err)
+ }
+ mfs, found := allManifests[comp.UserFacingName]
+ if found {
+ mfs.Manifests = append(mfs.Manifests,
finalized...)
+ allManifests[comp.UserFacingName] = mfs
+ } else {
+ allManifests[comp.UserFacingName] =
manifest.ManifestSet{
+ Components: comp.UserFacingName,
+ Manifests: finalized,
+ }
+ }
+ }
+ }
+ if logger != nil {
+ for _, w := range chartWarnings {
+ logger.LogAndErrorf("%s %v", "❗", w)
}
}
- return nil, merged, nil
+
+ val := make([]manifest.ManifestSet, 0, len(allManifests))
+ for _, v := range allManifests {
+ val = append(val, v)
+ }
+ return val, merged, nil
}
func validateDubboOperator(dop values.Map, logger clog.Logger) error {
@@ -139,9 +169,12 @@ 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"
}
return merged
}
+
+func postProcess(comp component.Component, manifests []manifest.Manifest, vals
values.Map) ([]manifest.Manifest, error) {
+ return manifests, nil
+}
\ No newline at end of file