@@ -117,14 +117,31 @@ protected function replaceEnvVariables(array $services)
117117 {
118118 $ environment = file_get_contents ($ this ->laravel ->basePath ('.env ' ));
119119
120- if (in_array ('pgsql ' , $ services )) {
121- $ environment = str_replace ('DB_CONNECTION=mysql ' , "DB_CONNECTION=pgsql " , $ environment );
120+ if (in_array ('mysql ' , $ services ) ||
121+ in_array ('mariadb ' , $ services ) ||
122+ in_array ('pgsql ' , $ services )) {
123+ $ defaults = [
124+ '# DB_HOST=127.0.0.1 ' ,
125+ '# DB_PORT=3306 ' ,
126+ '# DB_DATABASE=laravel ' ,
127+ '# DB_USERNAME=root ' ,
128+ '# DB_PASSWORD= ' ,
129+ ];
130+
131+ foreach ($ defaults as $ default ) {
132+ $ environment = str_replace ($ default , substr ($ default , 2 ), $ environment );
133+ }
134+ }
135+
136+ if (in_array ('mysql ' , $ services )) {
137+ $ environment = preg_replace ('/DB_CONNECTION=.*/ ' , 'DB_CONNECTION=mysql ' , $ environment );
138+ $ environment = str_replace ('DB_HOST=127.0.0.1 ' , "DB_HOST=mysql " , $ environment );
139+ }elseif (in_array ('pgsql ' , $ services )) {
140+ $ environment = preg_replace ('/DB_CONNECTION=.*/ ' , 'DB_CONNECTION=pgsql ' , $ environment );
122141 $ environment = str_replace ('DB_HOST=127.0.0.1 ' , "DB_HOST=pgsql " , $ environment );
123142 $ environment = str_replace ('DB_PORT=3306 ' , "DB_PORT=5432 " , $ environment );
124143 } elseif (in_array ('mariadb ' , $ services )) {
125144 $ environment = str_replace ('DB_HOST=127.0.0.1 ' , "DB_HOST=mariadb " , $ environment );
126- } else {
127- $ environment = str_replace ('DB_HOST=127.0.0.1 ' , "DB_HOST=mysql " , $ environment );
128145 }
129146
130147 $ environment = str_replace ('DB_USERNAME=root ' , "DB_USERNAME=sail " , $ environment );
0 commit comments