public async Task <ActionResult> RestartEnvironment(string environmentName) { if (string.IsNullOrEmpty(environmentName)) { throw new ArgumentNullException(nameof(environmentName)); } if (!HomeController.RestartBeanstalkGroups.Any(x => environmentName.StartsWith(x, StringComparison.OrdinalIgnoreCase))) { throw new UnauthorizedAccessException(); } RestartAppServerResponse restartResponse; try { using (AmazonElasticBeanstalkClient client = new AmazonElasticBeanstalkClient(RegionEndpoint.EUWest1)) { RestartAppServerRequest request = new RestartAppServerRequest { EnvironmentName = environmentName, }; restartResponse = await client.RestartAppServerAsync(request); } } catch (AmazonElasticBeanstalkException ex) { return(new HttpStatusCodeResult(ex.StatusCode, ex.Message)); } return(this.RedirectToAction("Index", "Restart")); }