Merge pull request #427 in YUNIONIO/onecloud from ~LIZEXI/onecloud:feature/lzx-helm-app to release/2.3.0

* commit '2feb414106d138a471c3f31c71998f31287cfbd7':
  climc: add k8s servicetree and notify app
This commit is contained in:
李泽玺
2018-11-05 17:32:33 +08:00
3 changed files with 39 additions and 5 deletions
+26
View File
@@ -24,4 +24,30 @@ func initReleaseApps() {
printObject(ret)
return nil
})
R(&o.AppCreateOptions{}, cmdN("servicetree"), "Create yunion servicetree helm release", func(s *mcclient.ClientSession, args *o.AppCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.ServicetreeReleaseApps.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.AppCreateOptions{}, cmdN("notify"), "Create yunion notify helm release", func(s *mcclient.ClientSession, args *o.AppCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.NotifyReleaseApps.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
}
+9 -3
View File
@@ -8,9 +8,11 @@ import (
)
var (
Releases *ReleaseManager
MeterReleaseApps *ReleaseAppManager
dummyReleaseApps *ReleaseAppManager
Releases *ReleaseManager
MeterReleaseApps *ReleaseAppManager
ServicetreeReleaseApps *ReleaseAppManager
NotifyReleaseApps *ReleaseAppManager
dummyReleaseApps *ReleaseAppManager
)
type ReleaseManager struct {
@@ -36,6 +38,10 @@ func init() {
NewNamespaceResourceManager("release", "releases", NewColumns(), NewColumns())}
dummyReleaseApps = NewReleaseAppManager("releaseapp", "releaseapps")
MeterReleaseApps = NewReleaseAppManager("app_meter", "app_meters")
ServicetreeReleaseApps = NewReleaseAppManager("app_servicetree", "app_servicetrees")
NotifyReleaseApps = NewReleaseAppManager("app_notify", "app_notifies")
modules.Register(Releases)
modules.Register(MeterReleaseApps)
modules.Register(ServicetreeReleaseApps)
modules.Register(NotifyReleaseApps)
}
+4 -2
View File
@@ -24,7 +24,7 @@ func (o AppBaseCreateOptions) Params() (*jsonutils.JSONDict, error) {
type AppCreateOptions struct {
AppBaseCreateOptions
CHARTNAME string `help:"Helm release app chart name, e.g yunion/meter"`
ChartName string `help:"Helm release app chart name, e.g yunion/meter, yunion/monitor-stack"`
}
func (o AppCreateOptions) Params() (*jsonutils.JSONDict, error) {
@@ -32,6 +32,8 @@ func (o AppCreateOptions) Params() (*jsonutils.JSONDict, error) {
if err != nil {
return nil, err
}
params.Add(jsonutils.NewString(o.CHARTNAME), "chart_name")
if o.ChartName != "" {
params.Add(jsonutils.NewString(o.ChartName), "chart_name")
}
return params, nil
}