installer: separate suffix and prefix generation.
Reuse suffix for app dir name.
diff --git a/core/installer/app_manager.go b/core/installer/app_manager.go
index b5815e4..fccf0b2 100644
--- a/core/installer/app_manager.go
+++ b/core/installer/app_manager.go
@@ -3,6 +3,7 @@
import (
"fmt"
"io/ioutil"
+ "path/filepath"
"sigs.k8s.io/yaml"
)
@@ -42,17 +43,21 @@
return cfg, err
}
-func (m *AppManager) Install(app App, ns NamespaceGenerator, config map[string]any) error {
+func (m *AppManager) Install(app App, ns NamespaceGenerator, suffixGen SuffixGenerator, config map[string]any) error {
// if err := m.repoIO.Fetch(); err != nil {
// return err
// }
+ suffix, err := suffixGen.Generate()
+ if err != nil {
+ return err
+ }
namespaces := make([]string, len(app.Namespaces))
for i, n := range app.Namespaces {
- var err error
- namespaces[i], err = ns.Generate(n)
+ ns, err := ns.Generate(n)
if err != nil {
return err
}
+ namespaces[i] = ns + suffix
}
for _, n := range namespaces {
if err := m.nsCreator.Create(n); err != nil {
@@ -73,5 +78,8 @@
}
}
// TODO(giolekva): use ns suffix for app directory
- return m.repoIO.InstallApp(app, "apps", all)
+ return m.repoIO.InstallApp(
+ app,
+ filepath.Join("/apps", app.Name+suffix),
+ all)
}