AETHER-2234 move and update aether-roc-umbrella
Change-Id: I7ca845b92dff1fce5fd87d42053a43d80cc55f34
diff --git a/aether-roc-umbrella/tests/aether-roc-umbrella.go b/aether-roc-umbrella/tests/aether-roc-umbrella.go
new file mode 100644
index 0000000..799d41d
--- /dev/null
+++ b/aether-roc-umbrella/tests/aether-roc-umbrella.go
@@ -0,0 +1,71 @@
+// SPDX-FileCopyrightText: 2020-present Open Networking Foundation <info@opennetworking.org>
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+package tests
+
+import (
+ "context"
+ "testing"
+ "time"
+
+ "github.com/onosproject/helmit/pkg/helm"
+ "github.com/onosproject/helmit/pkg/input"
+ "github.com/onosproject/helmit/pkg/kubernetes"
+ "github.com/onosproject/helmit/pkg/test"
+ "github.com/onosproject/onos-test/pkg/onostest"
+ "github.com/stretchr/testify/assert"
+)
+
+// AetherRocUmbrellaSuite is the aether-roc-umbrella chart test suite
+type AetherRocUmbrellaSuite struct {
+ test.Suite
+ c *input.Context
+}
+
+// SetupTestSuite sets up the aether roc umbrella test suite
+func (s *AetherRocUmbrellaSuite) SetupTestSuite(c *input.Context) error {
+ s.c = c
+ return nil
+}
+
+func getCredentials() (string, string, error) {
+ kubClient, err := kubernetes.New()
+ if err != nil {
+ return "", "", err
+ }
+ secrets, err := kubClient.CoreV1().Secrets().Get(context.Background(), onostest.SecretsName)
+ if err != nil {
+ return "", "", err
+ }
+ username := string(secrets.Object.Data["sd-ran-username"])
+ password := string(secrets.Object.Data["sd-ran-password"])
+
+ return username, password, nil
+}
+
+// TestInstall tests installing the aether-roc-umbrella chart
+func (s *AetherRocUmbrellaSuite) TestInstall(t *testing.T) {
+ username, password, err := getCredentials()
+ assert.NoError(t, err)
+ registry := s.c.GetArg("registry").String("")
+
+ onos := helm.Chart("aether-roc-umbrella", onostest.SdranChartRepo).
+ Release("aether-roc-umbrella").
+ SetUsername(username).
+ SetPassword(password).
+ WithTimeout(15*time.Minute).
+ Set("onos-ric.service.external.nodePort", 0).
+ Set("onos-ric-ho.service.external.nodePort", 0).
+ Set("onos-ric-mlb.service.external.nodePort", 0).
+ Set("import.onos-gui.enabled", false).
+ Set("import.aether-roc-gui.v2_1.enabled", false).
+ Set("import.aether-roc-gui.v3.enabled", false).
+ Set("import.onos-cli.enabled", false).
+ Set("onos-topo.image.tag", "latest").
+ Set("onos-config.image.tag", "latest").
+ Set("aether-roc-api.image.tag", "latest").
+ Set("onos-config.plugin.compiler.target", "github.com/onosproject/onos-config@master").
+ Set("global.image.registry", registry)
+ assert.NoError(t, onos.Install(true))
+}