public IActionResult StepOne() { var mysqlHost = Environment.GetEnvironmentVariable("SP_MYSQL_HOST"); var mysqlPortString = Environment.GetEnvironmentVariable("SP_MYSQL_PORT"); var mysqlDb = Environment.GetEnvironmentVariable("SP_MYSQL_DB"); var mysqlUser = Environment.GetEnvironmentVariable("SP_MYSQL_USER"); var mysqlPort = 3306; if (mysqlPortString != null) { try { mysqlPort = Convert.ToInt32(mysqlPortString); } catch (Exception ex) { // Not important if exception fires } } StepOneModel model = new StepOneModel(); model.MySQLHost = mysqlHost != null ? mysqlHost : ""; model.MySQLPort = mysqlPort != 3306 ? mysqlPort : 3306; model.MySQLDatabaseName = mysqlDb != null ? mysqlDb : ""; model.MySQLUser = mysqlUser != null ? mysqlUser : ""; return(View(model)); }
public IActionResult StepOne(StepOneModel model) { if (ModelState.IsValid && model != null) { try { string connectionString = "server=" + model.MySQLHost + ";port=" + model.MySQLPort.ToString() + ";database=" + model.MySQLDatabaseName + ";user="******";password="******"CONFIG_FILE"); Helpers.ReplaceEnvVariableInFile(fileName, "SP_MYSQL_HOST", model.MySQLHost); Helpers.ReplaceEnvVariableInFile(fileName, "SP_MYSQL_PORT", model.MySQLPort.ToString()); Helpers.ReplaceEnvVariableInFile(fileName, "SP_MYSQL_DB", model.MySQLDatabaseName); Helpers.ReplaceEnvVariableInFile(fileName, "SP_MYSQL_USER", model.MySQLUser); Helpers.ReplaceEnvVariableInFile(fileName, "SP_MYSQL_PASS", model.MySQLPassword); GlobalSettings.InitSettingsFromEnvironment(); SAMLPortalContext context = new SAMLPortalContext(); context.Database.Migrate(); // MySQL Step is complete Helpers.ReplaceEnvVariableInFile(fileName, "SP_CONFIG_SETUPASSISTANT_STEP", "2"); GlobalSettings.Store("CONFIG_SETUPASSISTANT_STEP", "2"); return(Redirect("2")); } else { ModelState.AddModelError(string.Empty, "An unknown error occurred. Please try again."); } } catch (Exception ex) when(ex is MySqlException) { if (ex is MySqlException) { ModelState.AddModelError(string.Empty, ex.Message); } else { ModelState.AddModelError(string.Empty, "An unknown error occurred. Please try again."); throw; } } } return(View(model)); }