diff --git a/modules/Installer/Http/Controllers/InstallerController.php b/modules/Installer/Http/Controllers/InstallerController.php index 5da69056..0ea63535 100644 --- a/modules/Installer/Http/Controllers/InstallerController.php +++ b/modules/Installer/Http/Controllers/InstallerController.php @@ -158,7 +158,9 @@ class InstallerController extends Controller */ public function envsetup(Request $request) { - Log::info('ENV setup', $request->post()); + $log_str = $request->post(); + $log_str['password'] = ''; + Log::info('ENV setup', $log_str); // Before writing out the env file, test the DB credentials try { @@ -211,6 +213,7 @@ class InstallerController extends Controller $console_out .= $this->dbService->setupDB(); $console_out .= $this->migrationSvc->runAllMigrations(); } catch(QueryException $e) { + $this->envService->removeConfigFiles(); flash()->error($e->getMessage()); return redirect(route('installer.step2'))->withInput(); } diff --git a/modules/Installer/Services/ConfigService.php b/modules/Installer/Services/ConfigService.php index 440953fc..ac389101 100644 --- a/modules/Installer/Services/ConfigService.php +++ b/modules/Installer/Services/ConfigService.php @@ -158,6 +158,31 @@ class ConfigService return $opts; } + /** + * Remove the config files + */ + public function removeConfigFiles() + { + $env_file = \App::environmentFilePath(); + $config_file = \App::environmentPath().'/config.php'; + + if (file_exists($env_file)) { + try { + unlink($env_file); + } catch (\Exception $e) { + Log::error($e->getMessage()); + } + } + + if(file_exists($config_file)) { + try { + unlink($config_file); + } catch (\Exception $e) { + Log::error($e->getMessage()); + } + } + } + /** * Get the template file name and write it out * @param $opts diff --git a/modules/Installer/Services/DatabaseService.php b/modules/Installer/Services/DatabaseService.php index 178eecd0..af78afde 100644 --- a/modules/Installer/Services/DatabaseService.php +++ b/modules/Installer/Services/DatabaseService.php @@ -41,6 +41,8 @@ class DatabaseService { /** * Setup the database by running the migration commands + * Only run the setup for sqlite, otherwise, we're assuming + * that the MySQL database has already been created */ public function setupDB() {