@@ -105,8 +105,9 @@ type DatabaseStatefulSetOptions struct {
105105 StsType StsType
106106 AdditionalMongodConfig * mdbv1.AdditionalMongodConfig
107107
108- InitDatabaseNonStaticImage string
109- DatabaseNonStaticImage string
108+ // InitDatabaseImage is the image used for the init container as well as for the static binary holder
109+ InitDatabaseImage string
110+ DatabaseNonStaticImage string
110111 MongodbImage string
111112 AgentImage string
112113
@@ -674,7 +675,7 @@ func buildMongoDBPodTemplateSpec(opts DatabaseStatefulSetOptions, mdb databaseSt
674675 volumes := []corev1.Volume {scriptsVolume }
675676 volumeMounts := []corev1.VolumeMount {databaseScriptsVolumeMount }
676677
677- initContainerModifications := []func (* corev1.Container ){buildDatabaseInitContainer (opts .InitDatabaseNonStaticImage )}
678+ initContainerModifications := []func (* corev1.Container ){buildDatabaseInitContainer (opts .InitDatabaseImage )}
678679 databaseContainerModifications := []func (* corev1.Container ){container .Apply (
679680 container .WithName (util .DatabaseContainerName ),
680681 container .WithImage (opts .DatabaseNonStaticImage ),
@@ -783,7 +784,19 @@ func sharedDatabaseConfiguration(opts DatabaseStatefulSetOptions, mdb databaseSt
783784 )
784785
785786 staticMongodModification := podtemplatespec .NOOP ()
787+ agentUtilitiesModification := podtemplatespec .NOOP ()
786788 if architectures .IsRunningStaticArchitecture (mdb .GetAnnotations ()) {
789+ // agentUtilities
790+ agentUtilitiesModification = podtemplatespec .WithContainerByIndex (2 ,
791+ container .Apply (
792+ container .WithArgs ([]string {"tail -F -n0 /dev/null" }),
793+ container .WithResourceRequirements (buildRequirementsFromPodSpec (* opts .PodSpec )),
794+ container .WithPorts ([]corev1.ContainerPort {{ContainerPort : opts .ServicePort }}),
795+ container .WithImagePullPolicy (corev1 .PullPolicy (env .ReadOrPanic (util .AutomationAgentImagePullPolicy ))), // nolint:forbidigo
796+ container .WithEnvs (logConfigurationToEnvVars (opts .AgentConfig .StartupParameters , opts .AdditionalMongodConfig )... ),
797+ configureContainerSecurityContext ,
798+ ),
799+ )
787800 // The mongod
788801 staticMongodModification = podtemplatespec .WithContainerByIndex (1 ,
789802 container .Apply (
@@ -805,7 +818,7 @@ func sharedDatabaseConfiguration(opts DatabaseStatefulSetOptions, mdb databaseSt
805818 container .WithEnvs (staticContainersEnvVars (mdb )... ),
806819 container .WithEnvs (readinessEnvironmentVariablesToEnvVars (opts .AgentConfig .ReadinessProbe .EnvironmentVariables )... ),
807820 container .WithArgs ([]string {}),
808- container .WithCommand ([]string {"/opt/scripts/agent-launcher.sh" }),
821+ container .WithCommand ([]string {"/opt/scripts/agent-launcher-shim .sh" }),
809822 configureContainerSecurityContext ,
810823 ),
811824 )
@@ -818,10 +831,9 @@ func sharedDatabaseConfiguration(opts DatabaseStatefulSetOptions, mdb databaseSt
818831 configurePodSpecSecurityContext ,
819832 podtemplatespec .WithAffinity (opts .Name , PodAntiAffinityLabelKey , 100 ),
820833 podtemplatespec .WithTopologyKey (opts .PodSpec .GetTopologyKeyOrDefault (), 0 ),
821- // The Agent
822834 agentModification ,
823- // AgentLoggingMongodConfig if static container
824- staticMongodModification ,
835+ staticMongodModification , // non static noop
836+ agentUtilitiesModification , // non static noop
825837 )
826838}
827839
0 commit comments