public ActionResult Hostname(string id) { var settings = new AppSettingsAuthConfig(); var model = new HostnameModel(); List <ValidationResult> validationResult = null; if (settings.IsValid(out validationResult)) { var client = ArmHelper.GetWebSiteManagementClient(settings); var site = client.Sites.GetSiteOrSlot(settings.ResourceGroupName, settings.WebAppName, settings.SiteSlotName); model.HostNames = site.HostNames; model.HostNameSslStates = site.HostNameSslStates; model.Certificates = client.Certificates.GetCertificates(settings.ServicePlanResourceGroupName).Value; model.InstalledCertificateThumbprint = id; if (model.HostNames.Count == 1) { model.ErrorMessage = "No custom host names registered. At least one custom domain name must be registed for the web site to request a letsencrypt certificate."; } } else { var errorMessage = string.Join(" ,", validationResult.Select(s => s.ErrorMessage)); model.ErrorMessage = $"Application settings was invalid, please wait a little and try to reload page if you just updated appsettings. Validation errors: {errorMessage}"; } return(View(model)); }
public void IsValid() { List <ValidationResult> res = null; var config = new AppSettingsAuthConfig(); Assert.IsFalse(config.IsValid(out res)); Console.WriteLine(string.Join(" ,", res.Select(s => s.ErrorMessage))); }
public ActionResult PleaseWait() { var settings = new AppSettingsAuthConfig(); List <ValidationResult> validationResult = null; if (settings.IsValid(out validationResult)) { return(RedirectToAction("Hostname")); } return(View()); }
public async Task <ActionResult> PleaseWait() { var settings = new AppSettingsAuthConfig(); List <ValidationResult> validationResult = null; if (settings.IsValid(out validationResult)) { if (settings.RunFromPackage) { if (await new PathProvider(settings).IsVirtualDirectorySetup()) { return(RedirectToAction("Hostname")); } } else { return(RedirectToAction("Hostname")); } } return(View()); }