@@ -254,6 +254,7 @@ func TestExportPrivateEndpoint(t *testing.T) {
254254 defaultTestProject (s .generator .projectName , "" , expectedLabels , false ),
255255 defaultTestAtlasConnSecret (credentialName , "" ),
256256 defaultPrivateEndpoint (s .generator , false ),
257+ referenceContainer (s .generator , "AWS" , "EU_CENTRAL_1" , "" , expectedLabels , false ),
257258 },
258259 },
259260 "should export separate resource with external reference for version with support" : {
@@ -263,6 +264,7 @@ func TestExportPrivateEndpoint(t *testing.T) {
263264 defaultTestProject (s .generator .projectName , "" , expectedLabels , false ),
264265 defaultTestAtlasConnSecret (credentialName , "" ),
265266 defaultPrivateEndpoint (s .generator , true ),
267+ referenceContainer (s .generator , "AWS" , "EU_CENTRAL_1" , "" , expectedLabels , true ),
266268 },
267269 },
268270 }
@@ -1677,7 +1679,7 @@ func TestProjectWithNetworkPeering(t *testing.T) {
16771679 cliPath := s .cliPath
16781680 atlasCliPath := s .atlasCliPath
16791681 generator := s .generator
1680- expectedProject := s . expectedProject
1682+ expectedProject := referenceProject ( s . generator . projectName , targetNamespace , map [ string ] string { features . ResourceVersion : "2.7.0" })
16811683
16821684 atlasCidrBlock := "10.8.0.0/18"
16831685 networkPeer := akov2.NetworkPeer {
@@ -1719,10 +1721,9 @@ func TestProjectWithNetworkPeering(t *testing.T) {
17191721 "kubernetes" ,
17201722 "config" ,
17211723 "generate" ,
1722- "--projectId" ,
1723- generator .projectID ,
1724- "--targetNamespace" ,
1725- targetNamespace ,
1724+ "--projectId" , generator .projectID ,
1725+ "--targetNamespace" , targetNamespace ,
1726+ "--operatorVersion" , "2.7.0" ,
17261727 "--includeSecrets" )
17271728 cmd .Env = os .Environ ()
17281729
@@ -1772,6 +1773,7 @@ func TestProjectWithPrivateEndpoint_Azure(t *testing.T) {
17721773 },
17731774 },
17741775 },
1776+ referenceContainer (s .generator , "AZURE" , "EUROPE_NORTH" , targetNamespace , expectedLabels , false ),
17751777 }
17761778
17771779 t .Run ("Add network peer to the project" , func (t * testing.T ) {
@@ -1798,6 +1800,59 @@ func TestProjectWithPrivateEndpoint_Azure(t *testing.T) {
17981800 })
17991801}
18001802
1803+ func referenceContainer (g * atlasE2ETestGenerator , provider , region , namespace string , labels map [string ]string , independent bool ) * akov2.AtlasNetworkContainer {
1804+ c := & akov2.AtlasNetworkContainer {
1805+ TypeMeta : metav1.TypeMeta {
1806+ Kind : "AtlasNetworkContainer" ,
1807+ APIVersion : "atlas.mongodb.com/v1" ,
1808+ },
1809+ ObjectMeta : metav1.ObjectMeta {
1810+ Name : resources .NormalizeAtlasName (
1811+ fmt .Sprintf ("" +
1812+ "%s-container-%s-%s" ,
1813+ g .projectName ,
1814+ provider ,
1815+ strings .ToLower (strings .ReplaceAll (region , "_" , "" )),
1816+ ),
1817+ resources .AtlasNameToKubernetesName (),
1818+ ),
1819+ Namespace : namespace ,
1820+ Labels : labels ,
1821+ },
1822+ Spec : akov2.AtlasNetworkContainerSpec {
1823+ Provider : provider ,
1824+ AtlasNetworkContainerConfig : akov2.AtlasNetworkContainerConfig {
1825+ ID : g .containerID ,
1826+ Region : region ,
1827+ CIDRBlock : "192.168.248.0/21" ,
1828+ },
1829+ },
1830+ Status : akov2status.AtlasNetworkContainerStatus {
1831+ Common : akoapi.Common {
1832+ Conditions : []akoapi.Condition {},
1833+ },
1834+ },
1835+ }
1836+
1837+ if independent {
1838+ c .Spec .ProjectDualReference = akov2.ProjectDualReference {
1839+ ExternalProjectRef : & akov2.ExternalProjectReference {
1840+ ID : g .projectID ,
1841+ },
1842+ ConnectionSecret : & akoapi.LocalObjectReference {
1843+ Name : resources .NormalizeAtlasName (strings .ToLower (g .projectName )+ "-credentials" , resources .AtlasNameToKubernetesName ()),
1844+ },
1845+ }
1846+ } else {
1847+ c .Spec .ProjectRef = & akov2common.ResourceRefNamespaced {
1848+ Name : strings .ToLower (g .projectName ),
1849+ Namespace : namespace ,
1850+ }
1851+ }
1852+
1853+ return c
1854+ }
1855+
18011856func TestProjectAndTeams (t * testing.T ) {
18021857 s := InitialSetupWithTeam (t )
18031858 cliPath := s .cliPath
@@ -2749,6 +2804,10 @@ func atlasBackupSchedule(objects []runtime.Object) (*akov2.AtlasBackupSchedule,
27492804}
27502805
27512806func TestKubernetesConfigGenerate_DataFederation (t * testing.T ) {
2807+ if revision , ok := os .LookupEnv ("revision" ); ok {
2808+ t .Log (revision )
2809+ t .Log (expectedLabels )
2810+ }
27522811 n , err := RandInt (255 )
27532812 require .NoError (t , err )
27542813 g := newAtlasE2ETestGenerator (t )
0 commit comments