diff options
author | Srivahni Chivukula <srivahni.chivukula@intel.com> | 2020-03-12 15:50:42 -0700 |
---|---|---|
committer | Srivahni Chivukula <srivahni.chivukula@intel.com> | 2020-03-12 15:59:21 -0700 |
commit | 3b848c7b4b6a4a49658bd9275a0baa6a08effe2a (patch) | |
tree | 2dc70d3fe52215dfacb624ab0ade71f8895c4b2a /src/orchestrator/pkg/module | |
parent | 9c63ce2a7b2b66b3e3fce5d1f553f327148df83f (diff) |
Added getAllApps functionality in App api
Issue-ID: MULTICLOUD-994
Signed-off-by: Srivahni Chivukula <srivahni.chivukula@intel.com>
Change-Id: I459504c45b9bedea0e6bc15ca57e7876d5f59d28
Diffstat (limited to 'src/orchestrator/pkg/module')
-rw-r--r-- | src/orchestrator/pkg/module/app.go | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/orchestrator/pkg/module/app.go b/src/orchestrator/pkg/module/app.go index c25a1b51..1e1a5974 100644 --- a/src/orchestrator/pkg/module/app.go +++ b/src/orchestrator/pkg/module/app.go @@ -65,6 +65,7 @@ type AppManager interface { CreateApp(a App, ac AppContent, p string, cN string, cV string) (App, error) GetApp(name string, p string, cN string, cV string) (App, error) GetAppContent(name string, p string, cN string, cV string) (AppContent, error) + GetApps(p string, cN string, cV string) ([]App, error) DeleteApp(name string, p string, cN string, cV string) error } @@ -183,6 +184,34 @@ func (v *AppClient) GetAppContent(name string, p string, cN string, cV string) ( return AppContent{}, pkgerrors.New("Error getting app content") } +// GetApps returns all Apps for given composite App +func (v *AppClient) GetApps(project, compositeApp, compositeAppVersion string) ([]App, error) { + + key := AppKey{ + App: "", + Project: project, + CompositeApp: compositeApp, + CompositeAppVersion: compositeAppVersion, + } + + var resp []App + values, err := db.DBconn.Find(v.storeName, key, v.tagMeta) + if err != nil { + return []App{}, pkgerrors.Wrap(err, "Get Apps") + } + + for _, value := range values { + a := App{} + err = db.DBconn.Unmarshal(value, &a) + if err != nil { + return []App{}, pkgerrors.Wrap(err, "Unmarshaling Value") + } + resp = append(resp, a) + } + + return resp, nil +} + // DeleteApp deletes the App from database func (v *AppClient) DeleteApp(name string, p string, cN string, cV string) error { |