@@ -217,8 +217,6 @@ public function build(Config $config): Manager
217217 $ this ->addDbService ($ manager , $ config , self ::SERVICE_DB_SALES , $ dbVersion , $ volumesMount );
218218 }
219219
220- $ esEnvVars = $ config ->get (SourceInterface::SERVICES_ES_VARS );
221-
222220 foreach (self ::$ standaloneServices as $ service ) {
223221 if (!$ config ->hasServiceEnabled ($ service )) {
224222 continue ;
@@ -229,16 +227,7 @@ public function build(Config $config): Manager
229227 $ this ->serviceFactory ->create (
230228 (string )$ service ,
231229 (string )$ config ->getServiceVersion ($ service ),
232- self ::SERVICE_ELASTICSEARCH === $ service && !empty ($ esEnvVars )
233- ? ['environment ' => $ esEnvVars ]
234- : self ::SERVICE_REDIS === $ service
235- ? [self ::SERVICE_HEALTHCHECK => [
236- 'test ' => 'redis-cli ping || exit 1 ' ,
237- 'interval ' => '30s ' ,
238- 'timeout ' => '30s ' ,
239- 'retries ' => 3
240- ] ]
241- : []
230+ $ this ->getServiceConfig ($ service , $ config )
242231 ),
243232 [self ::NETWORK_MAGENTO ],
244233 []
@@ -577,6 +566,36 @@ private function addDbService(
577566 );
578567 }
579568
569+ /**
570+ * @param string $service
571+ * @param Config $config
572+ * @return array
573+ * @throws ConfigurationMismatchException
574+ */
575+ private function getServiceConfig (string $ service , Config $ config ): array
576+ {
577+ switch ($ service ) {
578+ case self ::SERVICE_REDIS :
579+ $ serviceConfig = [self ::SERVICE_HEALTHCHECK => [
580+ 'test ' => 'redis-cli ping || exit 1 ' ,
581+ 'interval ' => '30s ' ,
582+ 'timeout ' => '30s ' ,
583+ 'retries ' => 3
584+ ]];
585+ break ;
586+
587+ case self ::SERVICE_ELASTICSEARCH :
588+ $ esEnvVars = $ config ->get (SourceInterface::SERVICES_ES_VARS );
589+ $ serviceConfig = !empty ($ esEnvVars ) ? ['environment ' => $ esEnvVars ] : [];
590+ break ;
591+
592+ default :
593+ $ serviceConfig = [];
594+ }
595+
596+ return $ serviceConfig ;
597+ }
598+
580599 /**
581600 * @param string $device
582601 * @return array
0 commit comments