Esempio n. 1
0
        public StackEventMonitor(string stackName, IAWSClientFactory awsClientFactory, IConsoleUtilities consoleUtilities)
        {
            _stackName        = stackName;
            _consoleUtilities = consoleUtilities;

            _cloudFormationClient = awsClientFactory.GetAWSClient <IAmazonCloudFormation>();
        }
Esempio n. 2
0
        public StackEventMonitor(string stackName, IAWSClientFactory awsClientFactory, IToolInteractiveService interactiveService, OrchestratorSession session)
        {
            _stackName = stackName;

            _cloudFormationClient = awsClientFactory.GetAWSClient <IAmazonCloudFormation>(session.AWSCredentials, session.AWSRegion);
            _consoleUtilities     = new ConsoleUtilities(interactiveService);
        }
Esempio n. 3
0
 public DeleteDeploymentCommand(IAWSClientFactory awsClientFactory, IToolInteractiveService interactiveService, OrchestratorSession session)
 {
     _awsClientFactory     = awsClientFactory;
     _interactiveService   = interactiveService;
     _session              = session;
     _cloudFormationClient = _awsClientFactory.GetAWSClient <IAmazonCloudFormation>(_session.AWSCredentials, _session.AWSRegion);
     _consoleUtilities     = new ConsoleUtilities(interactiveService);
 }
        /// <summary>
        /// For a given Cloud Application loads the metadata for it. This includes the settings used to deploy and the recipe information.
        /// </summary>
        /// <param name="cloudApplication"></param>
        /// <returns></returns>
        public async Task <CloudApplicationMetadata> LoadCloudApplicationMetadata(string cloudApplication)
        {
            using var client = _awsClientFactory.GetAWSClient <Amazon.CloudFormation.IAmazonCloudFormation>(_session.AWSCredentials, _session.AWSRegion);

            var response = await client.GetTemplateAsync(new GetTemplateRequest
            {
                StackName = cloudApplication
            });

            return(TemplateMetadataReader.ReadSettings(response.TemplateBody));
        }
Esempio n. 5
0
        public async Task <CloudApplicationMetadata> LoadCloudApplicationMetadata(string cloudApplication)
        {
            using var client = _awsClientFactory.GetAWSClient <Amazon.CloudFormation.IAmazonCloudFormation>();

            var request = new GetTemplateRequest
            {
                StackName = cloudApplication
            };

            var response = await client.GetTemplateAsync(request);

            return(ReadSettings(response.TemplateBody));
        }
 public DeleteDeploymentCommand(
     IAWSClientFactory awsClientFactory,
     IToolInteractiveService interactiveService,
     IConsoleUtilities consoleUtilities,
     ILocalUserSettingsEngine localUserSettingsEngine,
     OrchestratorSession?session)
 {
     _awsClientFactory        = awsClientFactory;
     _interactiveService      = interactiveService;
     _consoleUtilities        = consoleUtilities;
     _cloudFormationClient    = _awsClientFactory.GetAWSClient <IAmazonCloudFormation>();
     _localUserSettingsEngine = localUserSettingsEngine;
     _session = session;
 }
        public async Task <Amazon.AppRunner.Model.Service> DescribeAppRunnerService(string serviceArn)
        {
            var appRunnerClient = _awsClientFactory.GetAWSClient <Amazon.AppRunner.IAmazonAppRunner>();

            var service = (await appRunnerClient.DescribeServiceAsync(new Amazon.AppRunner.Model.DescribeServiceRequest
            {
                ServiceArn = serviceArn
            })).Service;

            if (service == null)
            {
                throw new AWSResourceNotFoundException($"The AppRunner service '{serviceArn}' does not exist.");
            }

            return(service);
        }
        public async Task<List<Cluster>> ListOfECSClusters(OrchestratorSession session)
        {
            var ecsClient = _awsClientFactory.GetAWSClient<IAmazonECS>(session.AWSCredentials, session.AWSRegion);

            var clusterArns = await ecsClient.Paginators
                .ListClusters(new ListClustersRequest())
                .ClusterArns
                .ToListAsync();

            var clusters = await ecsClient.DescribeClustersAsync(new DescribeClustersRequest
            {
                Clusters = clusterArns
            });

            return clusters.Clusters;
        }