@@ -20,7 +20,6 @@ import (
2020 "github.com/replicatedhq/embedded-cluster/api/pkg/logger"
2121 "github.com/replicatedhq/embedded-cluster/api/types"
2222 ecv1beta1 "github.com/replicatedhq/embedded-cluster/kinds/apis/v1beta1"
23- "github.com/replicatedhq/embedded-cluster/pkg-new/constants"
2423 "github.com/replicatedhq/embedded-cluster/pkg-new/kubernetesinstallation"
2524 "github.com/replicatedhq/embedded-cluster/pkg/helm"
2625 "github.com/replicatedhq/embedded-cluster/pkg/release"
@@ -41,6 +40,15 @@ import (
4140
4241// Test the kubernetes setupInfra endpoint runs infrastructure setup correctly
4342func TestKubernetesPostSetupInfra (t * testing.T ) {
43+ // Setup environment variable for V3
44+ t .Setenv ("ENABLE_V3" , "1" )
45+
46+ // Set up release data globally so AppSlug() returns the correct value for v3
47+ err := release .SetReleaseDataForTests (map [string ][]byte {
48+ "channelrelease.yaml" : []byte ("# channel release object\n appSlug: test-app" ),
49+ })
50+ require .NoError (t , err )
51+
4452 // Create schemes
4553 scheme := runtime .NewScheme ()
4654 require .NoError (t , ecv1beta1 .AddToScheme (scheme ))
@@ -84,9 +92,17 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
8492
8593 // Create mocks
8694 helmMock := & helm.MockClient {}
95+
96+ // Create the app namespace that will be used by the addon
97+ appNamespace := & corev1.Namespace {
98+ ObjectMeta : metav1.ObjectMeta {
99+ Name : "test-app" ,
100+ },
101+ }
102+
87103 fakeKcli := clientfake .NewClientBuilder ().
88104 WithScheme (scheme ).
89- WithObjects (integration .NewTestControllerNode (hostname )).
105+ WithObjects (integration .NewTestControllerNode (hostname ), appNamespace ).
90106 WithStatusSubresource (& ecv1beta1.Installation {}, & apiextensionsv1.CustomResourceDefinition {}).
91107 WithInterceptorFuncs (integration .NewTestInterceptorFuncs ()).
92108 Build ()
@@ -104,6 +120,7 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
104120 kubernetesinfra .WithReleaseData (& release.ReleaseData {
105121 EmbeddedClusterConfig : & ecv1beta1.Config {},
106122 ChannelRelease : & release.ChannelRelease {
123+ AppSlug : "test-app" ,
107124 DefaultDomains : release.Domains {
108125 ReplicatedAppDomain : "replicated.example.com" ,
109126 ProxyRegistryDomain : "some-proxy.example.com" ,
@@ -127,6 +144,7 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
127144 kubernetesinstall .WithReleaseData (& release.ReleaseData {
128145 EmbeddedClusterConfig : & ecv1beta1.Config {},
129146 ChannelRelease : & release.ChannelRelease {
147+ AppSlug : "test-app" ,
130148 DefaultDomains : release.Domains {
131149 ReplicatedAppDomain : "replicated.example.com" ,
132150 ProxyRegistryDomain : "some-proxy.example.com" ,
@@ -212,13 +230,15 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
212230 // Verify that the mock expectations were met
213231 helmMock .AssertExpectations (t )
214232
215- // Verify kotsadm namespace and kotsadm-password secret were created
233+ // Verify app namespace and kotsadm-password secret were created
234+ // The namespace name should be the app slug ("test-app")
235+ expectedNamespace := "test-app"
216236 var gotKotsadmNamespace corev1.Namespace
217- err = fakeKcli .Get (t .Context (), client.ObjectKey {Name : constants . KotsadmNamespace }, & gotKotsadmNamespace )
237+ err = fakeKcli .Get (t .Context (), client.ObjectKey {Name : expectedNamespace }, & gotKotsadmNamespace )
218238 require .NoError (t , err )
219239
220240 var gotKotsadmPasswordSecret corev1.Secret
221- err = fakeKcli .Get (t .Context (), client.ObjectKey {Namespace : constants . KotsadmNamespace , Name : "kotsadm-password" }, & gotKotsadmPasswordSecret )
241+ err = fakeKcli .Get (t .Context (), client.ObjectKey {Namespace : expectedNamespace , Name : "kotsadm-password" }, & gotKotsadmPasswordSecret )
222242 require .NoError (t , err )
223243 assert .NotEmpty (t , gotKotsadmPasswordSecret .Data ["passwordBcrypt" ])
224244
@@ -303,6 +323,7 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
303323 kubernetesinfra .WithReleaseData (& release.ReleaseData {
304324 EmbeddedClusterConfig : & ecv1beta1.Config {},
305325 ChannelRelease : & release.ChannelRelease {
326+ AppSlug : "test-app" ,
306327 DefaultDomains : release.Domains {
307328 ReplicatedAppDomain : "replicated.example.com" ,
308329 ProxyRegistryDomain : "some-proxy.example.com" ,
@@ -326,6 +347,7 @@ func TestKubernetesPostSetupInfra(t *testing.T) {
326347 kubernetesinstall .WithReleaseData (& release.ReleaseData {
327348 EmbeddedClusterConfig : & ecv1beta1.Config {},
328349 ChannelRelease : & release.ChannelRelease {
350+ AppSlug : "test-app" ,
329351 DefaultDomains : release.Domains {
330352 ReplicatedAppDomain : "replicated.example.com" ,
331353 ProxyRegistryDomain : "some-proxy.example.com" ,
0 commit comments