Rewrite: rewrites env config repo and commits application cue files
We can build upon this tool to implement version to version migration logic.
Change-Id: I6066f565f118ca44ca3ce7a0ac7522258958cf25
diff --git a/core/installer/app_test.go b/core/installer/app_test.go
index 0d7bd6a..7695796 100644
--- a/core/installer/app_test.go
+++ b/core/installer/app_test.go
@@ -105,7 +105,9 @@
PublicIP: []net.IP{net.ParseIP("1.2.3.4")},
NamespacePrefix: "id-",
}
- values := map[string]any{}
+ values := map[string]any{
+ "authGroups": "foo,bar",
+ }
rendered, err := a.Render(release, env, values)
if err != nil {
t.Fatal(err)
@@ -255,3 +257,47 @@
t.Log(string(r))
}
}
+
+func TestAppPackages(t *testing.T) {
+ contents, err := valuesTmpls.ReadFile("values-tmpl/rpuppy.cue")
+ if err != nil {
+ t.Fatal(err)
+ }
+ app, err := NewCueEnvApp(CueAppData{
+ "base.cue": []byte(cueBaseConfig),
+ "app.cue": []byte(contents),
+ })
+ if err != nil {
+ t.Fatal(err)
+ }
+ release := Release{
+ Namespace: "foo",
+ }
+ env := AppEnvConfig{
+ InfraName: "dodo",
+ Id: "id",
+ ContactEmail: "foo@bar.ge",
+ Domain: "bar.ge",
+ PrivateDomain: "p.bar.ge",
+ PublicIP: []net.IP{net.ParseIP("1.2.3.4")},
+ NamespacePrefix: "id-",
+ }
+ values := map[string]any{
+ "network": "Public",
+ "subdomain": "woof",
+ "auth": map[string]any{
+ "enabled": true,
+ "groups": "a,b",
+ },
+ }
+ rendered, err := app.Render(release, env, values)
+ if err != nil {
+ t.Fatal(err)
+ }
+ for _, r := range rendered.Resources {
+ t.Log(string(r))
+ }
+ for _, r := range rendered.Data {
+ t.Log(string(r))
+ }
+}