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());
        }
Exemplo n.º 4
0
        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());
        }