Installer: Separate infrastructure and environment apps.
Have two separate application managers, one for installing apps on the
dodo infra, and nother installing on individual environments.
Change-Id: I1b24f008e30c5533c48c22ea92328bc4bb7abc54
diff --git a/core/installer/derived.go b/core/installer/derived.go
index 813939e..baa453e 100644
--- a/core/installer/derived.go
+++ b/core/installer/derived.go
@@ -5,15 +5,10 @@
)
type Release struct {
- Namespace string `json:"namespace"`
- RepoAddr string `json:"repoAddr"`
- AppDir string `json:"appDir"`
-}
-
-type Derived struct {
- Release Release `json:"release"`
- Global Values `json:"global"`
- Values map[string]any `json:"input"` // TODO(gio): rename to input
+ AppInstanceId string `json:"appInstanceId"`
+ Namespace string `json:"namespace"`
+ RepoAddr string `json:"repoAddr"`
+ AppDir string `json:"appDir"`
}
type Network struct {
@@ -24,17 +19,19 @@
AllocatePortAddr string `json:"allocatePortAddr,omitempty"`
}
-type AppConfig struct {
+type AppInstanceConfig struct {
Id string `json:"id"`
AppId string `json:"appId"`
- Config map[string]any `json:"config"`
- Derived Derived `json:"derived"`
+ Env AppEnvConfig `json:"env"`
+ Release Release `json:"release"`
+ Values map[string]any `json:"values"`
+ Input map[string]any `json:"input"`
}
-func (a AppConfig) Input(schema Schema) map[string]any {
- ret, err := derivedToConfig(a.Derived.Values, schema)
+func (a AppInstanceConfig) InputToValues(schema Schema) map[string]any {
+ ret, err := derivedToConfig(a.Input, schema)
if err != nil {
- panic(err) // TODO(gio): handle
+ panic(err)
}
return ret
}