Ejemplo n.º 1
0
        public void ElasticBeanstalkTerminateEnvironment()
        {
            #region to-terminate-an-environment-1456277888556

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.TerminateEnvironment(new TerminateEnvironmentRequest
            {
                EnvironmentName = "my-env"
            });

            bool            abortableOperationInProgress = response.AbortableOperationInProgress;
            string          applicationName   = response.ApplicationName;
            string          cname             = response.CNAME;
            DateTime        dateCreated       = response.DateCreated;
            DateTime        dateUpdated       = response.DateUpdated;
            string          endpointURL       = response.EndpointURL;
            string          environmentId     = response.EnvironmentId;
            string          environmentName   = response.EnvironmentName;
            string          health            = response.Health;
            string          solutionStackName = response.SolutionStackName;
            string          status            = response.Status;
            EnvironmentTier tier = response.Tier;

            #endregion
        }
Ejemplo n.º 2
0
        public void ElasticBeanstalkUpdateEnvironment()
        {
            #region to-update-an-environment-to-a-new-version-1456278210718

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.UpdateEnvironment(new UpdateEnvironmentRequest
            {
                EnvironmentName = "my-env",
                VersionLabel    = "v2"
            });

            string          applicationName   = response.ApplicationName;
            string          cname             = response.CNAME;
            DateTime        dateCreated       = response.DateCreated;
            DateTime        dateUpdated       = response.DateUpdated;
            string          endpointURL       = response.EndpointURL;
            string          environmentId     = response.EnvironmentId;
            string          environmentName   = response.EnvironmentName;
            string          health            = response.Health;
            string          solutionStackName = response.SolutionStackName;
            string          status            = response.Status;
            EnvironmentTier tier         = response.Tier;
            string          versionLabel = response.VersionLabel;

            #endregion
        }
Ejemplo n.º 3
0
        public void ElasticBeanstalkUpdateConfigurationTemplate()
        {
            #region to-update-a-configuration-template-1456278075300

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.UpdateConfigurationTemplate(new UpdateConfigurationTemplateRequest
            {
                ApplicationName = "my-app",
                OptionsToRemove = new List <OptionSpecification> {
                    new OptionSpecification {
                        Namespace  = "aws:elasticbeanstalk:healthreporting:system",
                        OptionName = "ConfigDocument"
                    }
                },
                TemplateName = "my-template"
            });

            string   applicationName   = response.ApplicationName;
            DateTime dateCreated       = response.DateCreated;
            DateTime dateUpdated       = response.DateUpdated;
            string   solutionStackName = response.SolutionStackName;
            string   templateName      = response.TemplateName;

            #endregion
        }
Ejemplo n.º 4
0
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonElasticBeanstalkConfig config = new AmazonElasticBeanstalkConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonElasticBeanstalkClient client = new AmazonElasticBeanstalkClient(creds, config);

            DescribeEnvironmentManagedActionHistoryResponse resp = new DescribeEnvironmentManagedActionHistoryResponse();

            do
            {
                DescribeEnvironmentManagedActionHistoryRequest req = new DescribeEnvironmentManagedActionHistoryRequest
                {
                    NextToken = resp.NextToken
                    ,
                    MaxItems = maxItems
                };

                resp = client.DescribeEnvironmentManagedActionHistory(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.ManagedActionHistoryItems)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
Ejemplo n.º 5
0
        public void ElasticBeanstalkCreateEnvironment()
        {
            #region to-create-a-new-environment-for-an-application-1456269380396

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.CreateEnvironment(new CreateEnvironmentRequest
            {
                ApplicationName   = "my-app",
                CNAMEPrefix       = "my-app",
                EnvironmentName   = "my-env",
                SolutionStackName = "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8",
                VersionLabel      = "v1"
            });

            string          applicationName   = response.ApplicationName;
            string          cname             = response.CNAME;
            DateTime        dateCreated       = response.DateCreated;
            DateTime        dateUpdated       = response.DateUpdated;
            string          environmentId     = response.EnvironmentId;
            string          environmentName   = response.EnvironmentName;
            string          health            = response.Health;
            string          solutionStackName = response.SolutionStackName;
            string          status            = response.Status;
            EnvironmentTier tier         = response.Tier;
            string          versionLabel = response.VersionLabel;

            #endregion
        }
Ejemplo n.º 6
0
 public ElasticBeanstalkHelper(string profile, string region, string color) : base(profile, region, color)
 {
     //client = new AmazonRDSClient(credentials, AwsCommon.GetRetionEndpoint(region));
     client = new AmazonElasticBeanstalkClient(
         CredentiaslManager.GetCredential(profile),
         AwsCommon.GetRetionEndpoint(region));
 }
Ejemplo n.º 7
0
        public IEnumerable <ElasticBeanstalkService> GetServices()
        {
            var beanstalkClient = new AmazonElasticBeanstalkClient();
            var response        = beanstalkClient.DescribeEnvironmentsAsync().Result;

            return(response.Environments.Select(e => _serviceFactory.Create(e)));
        }
Ejemplo n.º 8
0
        public async Task <ActionResult <string> > GetAsync()
        {
            var environment = "gidu-api";
            var server      = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
            var textDefault = $"GIDU API's <br> by Jeff <br> 2019 <br>" +
                              $"{Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}";

            if (server == "Production")
            {
                var credencials = new BasicAWSCredentials(
                    Environment.GetEnvironmentVariable("AWS_AccessKey"),
                    Environment.GetEnvironmentVariable("AWS_SecretKey"));

                var elasticBeanstalkClient = new AmazonElasticBeanstalkClient(credencials, RegionEndpoint.SAEast1);
                var configs = (await elasticBeanstalkClient.DescribeEnvironmentsAsync()).
                              Environments.Where(e => e.EnvironmentName == environment).First();

                return($"{textDefault} <br>" +
                       $"{configs.HealthStatus} <br>" +
                       $"{configs.Status} <br>" +
                       $"{configs.VersionLabel} <br>" +
                       $"{configs.DateUpdated} <br>");
            }

            return(textDefault);
        }
Ejemplo n.º 9
0
        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"));
        }
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonElasticBeanstalkConfig config = new AmazonElasticBeanstalkConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonElasticBeanstalkClient client = new AmazonElasticBeanstalkClient(creds, config);

            ListPlatformVersionsResponse resp = new ListPlatformVersionsResponse();

            do
            {
                ListPlatformVersionsRequest req = new ListPlatformVersionsRequest
                {
                    NextToken = resp.NextToken
                    ,
                    MaxRecords = maxItems
                };

                resp = client.ListPlatformVersions(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.PlatformSummaryList)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
Ejemplo n.º 11
0
        // GET: Beanstalk
        public async Task <ActionResult> Index()
        {
            DescribeEnvironmentsResponse environmentsDescription;
            var activeEnvironmentsTask = this.clientRepository.GetActiveEnvironments();

            using (AmazonElasticBeanstalkClient client = new AmazonElasticBeanstalkClient(RegionEndpoint.EUWest1))
            {
                DescribeEnvironmentsRequest request = new DescribeEnvironmentsRequest();
                environmentsDescription = await client.DescribeEnvironmentsAsync(request);
            }

            var environments = environmentsDescription.Environments;

            environments.RemoveAll(x => x.Status == EnvironmentStatus.Terminated || x.Status == EnvironmentStatus.Terminating);

            var activeEnvironments = await activeEnvironmentsTask;

            BeanstalkGroupViewModel[] viewModels =
                new BeanstalkGroupViewModel[HomeController.BeanstalkGroups.Length + 1];

            for (int i = 0; i < HomeController.BeanstalkGroups.Length; i++)
            {
                viewModels[i] = new BeanstalkGroupViewModel(HomeController.BeanstalkGroups[i]);

                for (int j = environments.Count - 1; j >= 0; j--)
                {
                    if (environments[j].EnvironmentName.StartsWith(HomeController.BeanstalkGroups[i], StringComparison.OrdinalIgnoreCase))
                    {
                        // add something
                        var obj = Convert(environments[j]);
                        obj.HasBeanpole = activeEnvironments.ContainsKey(obj.EnvironmentName);

                        viewModels[i].Environments.Add(obj);
                        environments.RemoveAt(j);
                    }
                }
            }

            var unknownGroup = new BeanstalkGroupViewModel("Unknown");

            for (int i = 0; i < environments.Count; i++)
            {
                unknownGroup.Environments.Add(Convert(environments[i]));
            }
            viewModels[viewModels.Length - 1] = unknownGroup;

            for (int i = 0; i < viewModels.Length; i++)
            {
                viewModels[i].Environments.Sort((x, y) => StringComparer.OrdinalIgnoreCase.Compare(x.EnvironmentName, y.EnvironmentName));
            }

            return(View(viewModels));
        }
Ejemplo n.º 12
0
        public void ElasticBeanstalkDescribeApplications()
        {
            #region to-view-a-list-of-applications-1456270027373

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DescribeApplications(new DescribeApplicationsRequest
            {
            });

            List <ApplicationDescription> applications = response.Applications;

            #endregion
        }
Ejemplo n.º 13
0
        public void ElasticBeanstalkRebuildEnvironment()
        {
            #region to-rebuild-an-environment-1456277600918

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.RebuildEnvironment(new RebuildEnvironmentRequest
            {
                EnvironmentName = "my-env"
            });


            #endregion
        }
Ejemplo n.º 14
0
        public void ElasticBeanstalkCreateStorageLocation()
        {
            #region to-create-a-new-environment-for-an-application-1456269380396

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.CreateStorageLocation(new CreateStorageLocationRequest
            {
            });

            string s3Bucket = response.S3Bucket;

            #endregion
        }
Ejemplo n.º 15
0
        public void ElasticBeanstalkAbortEnvironmentUpdate()
        {
            #region to-abort-a-deployment-1456267848227

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.AbortEnvironmentUpdate(new AbortEnvironmentUpdateRequest
            {
                EnvironmentName = "my-env"
            });


            #endregion
        }
Ejemplo n.º 16
0
        public void ElasticBeanstalkDeleteApplication()
        {
            #region to-delete-an-application-1456269699366

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DeleteApplication(new DeleteApplicationRequest
            {
                ApplicationName = "my-app"
            });


            #endregion
        }
Ejemplo n.º 17
0
        public void ElasticBeanstalkRestartAppServer()
        {
            #region to-restart-application-servers-1456277739302

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.RestartAppServer(new RestartAppServerRequest
            {
                EnvironmentName = "my-env"
            });


            #endregion
        }
Ejemplo n.º 18
0
        public void ElasticBeanstalkRequestEnvironmentInfo()
        {
            #region to-request-tailed-logs-1456277657045

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.RequestEnvironmentInfo(new RequestEnvironmentInfoRequest
            {
                EnvironmentName = "my-env",
                InfoType        = "tail"
            });


            #endregion
        }
Ejemplo n.º 19
0
        public void ElasticBeanstalkListAvailableSolutionStacks()
        {
            #region to-view-solution-stacks-1456277504811

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.ListAvailableSolutionStacks(new ListAvailableSolutionStacksRequest
            {
            });

            List <SolutionStackDescription> solutionStackDetails = response.SolutionStackDetails;
            List <string> solutionStacks = response.SolutionStacks;

            #endregion
        }
Ejemplo n.º 20
0
        public void ElasticBeanstalkDescribeEvents()
        {
            #region to-view-events-for-an-environment-1456277367589

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DescribeEvents(new DescribeEventsRequest
            {
                EnvironmentName = "my-env"
            });

            List <EventDescription> events = response.Events;

            #endregion
        }
Ejemplo n.º 21
0
        public void ElasticBeanstalkDeleteConfigurationTemplate()
        {
            #region to-delete-a-configuration-template-1456269836701

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DeleteConfigurationTemplate(new DeleteConfigurationTemplateRequest
            {
                ApplicationName = "my-app",
                TemplateName    = "my-template"
            });


            #endregion
        }
Ejemplo n.º 22
0
        public void ElasticBeanstalkDescribeEnvironmentResources()
        {
            #region to-view-information-about-the-aws-resources-in-your-environment-1456277206232

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DescribeEnvironmentResources(new DescribeEnvironmentResourcesRequest
            {
                EnvironmentName = "my-env"
            });

            EnvironmentResourceDescription environmentResources = response.EnvironmentResources;

            #endregion
        }
Ejemplo n.º 23
0
        public void ElasticBeanstalkDeleteEnvironmentConfiguration()
        {
            #region to-delete-a-draft-configuration-1456269886654

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DeleteEnvironmentConfiguration(new DeleteEnvironmentConfigurationRequest
            {
                ApplicationName = "my-app",
                EnvironmentName = "my-env"
            });


            #endregion
        }
Ejemplo n.º 24
0
        public void ElasticBeanstalkSwapEnvironmentCNAMEs()
        {
            #region to-swap-environment-cnames-1456277839438

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.SwapEnvironmentCNAMEs(new SwapEnvironmentCNAMEsRequest
            {
                DestinationEnvironmentName = "my-env-green",
                SourceEnvironmentName      = "my-env-blue"
            });


            #endregion
        }
        protected IAmazonElasticBeanstalk CreateClient(AWSCredentials credentials, RegionEndpoint region)
        {
            var config = new AmazonElasticBeanstalkConfig {
                RegionEndpoint = region
            };

            Amazon.PowerShell.Utils.Common.PopulateConfig(this, config);
            this.CustomizeClientConfig(config);
            var client = new AmazonElasticBeanstalkClient(credentials, config);

            client.BeforeRequestEvent += RequestEventHandler;
            client.AfterResponseEvent += ResponseEventHandler;
            return(client);
        }
Ejemplo n.º 26
0
        public void ElasticBeanstalkDescribeConfigurationSettings()
        {
            #region to-view-configurations-settings-for-an-environment-1456276924537

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.DescribeConfigurationSettings(new DescribeConfigurationSettingsRequest
            {
                ApplicationName = "my-app",
                EnvironmentName = "my-env"
            });

            List <ConfigurationSettingsDescription> configurationSettings = response.ConfigurationSettings;

            #endregion
        }
Ejemplo n.º 27
0
        public void ElasticBeanstalkCheckDNSAvailability()
        {
            #region to-check-the-availability-of-a-cname-1456268589537

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.CheckDNSAvailability(new CheckDNSAvailabilityRequest
            {
                CNAMEPrefix = "my-cname"
            });

            bool   available           = response.Available;
            string fullyQualifiedCNAME = response.FullyQualifiedCNAME;

            #endregion
        }
Ejemplo n.º 28
0
        public void ElasticBeanstalkUpdateApplication()
        {
            #region to-change-an-applications-description-1456277957075

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.UpdateApplication(new UpdateApplicationRequest
            {
                ApplicationName = "my-app",
                Description     = "my Elastic Beanstalk application"
            });

            ApplicationDescription application = response.Application;

            #endregion
        }
Ejemplo n.º 29
0
        public void ElasticBeanstalkRetrieveEnvironmentInfo()
        {
            #region to-retrieve-tailed-logs-1456277792734

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.RetrieveEnvironmentInfo(new RetrieveEnvironmentInfoRequest
            {
                EnvironmentName = "my-env",
                InfoType        = "tail"
            });

            List <EnvironmentInfoDescription> environmentInfo = response.EnvironmentInfo;

            #endregion
        }
Ejemplo n.º 30
0
        public void ElasticBeanstalkCreateApplication()
        {
            #region to-create-a-new-application-1456268895683

            var client   = new AmazonElasticBeanstalkClient();
            var response = client.CreateApplication(new CreateApplicationRequest
            {
                ApplicationName = "my-app",
                Description     = "my application"
            });

            ApplicationDescription application = response.Application;

            #endregion
        }