public async Task <IEnumerable <Site> > ExecuteRaw(ICloudOdsOperationContext context)
        {
            var instance = await _getCloudOdsHostedInstanceQuery.Execute(context.Instance);

            var websites = await _armClient.GetWebsiteListAsync(_activeDirectoryClientInfo.SubscriptionId, instance?.SystemName);

            return(websites.Where(w =>
                                  w.IsInEnvironment(CloudOdsEnvironment.Production) &&
                                  (context.TargetRole == null || w.IsInRole(context.TargetRole))));
        }
        public async Task Execute(ICloudOdsOperationContext context)
        {
            var cloudOdsWebsites = await _getAzureCloudOdsHostedComponentsQuery.Execute(context);

            var instance = await _getCloudOdsHostedInstanceQuery.Execute(context.Instance);

            foreach (var cloudOdsWebsite in cloudOdsWebsites)
            {
                await _armClient.RestartAppService(_activeDirectoryClientInfo.SubscriptionId, instance.SystemName, cloudOdsWebsite.SystemName);
            }
        }
        public async Task <AzureWebsitePerformanceLevel> Execute(ICloudOdsOperationContext context)
        {
            var websites = await _getAzureCloudOdsHostedComponentsQuery.ExecuteRaw(context);

            if (websites != null && websites.Any())
            {
                var productionApiWebsite = websites.First();
                var serverFarmId         = productionApiWebsite.ServerFarmId;
                var instance             = await _getCloudOdsHostedInstanceQuery.Execute(context.Instance);

                var website = await _armClient.GetServerFarmByIdAsync(_activeDirectoryClientInfo.SubscriptionId, instance?.SystemName, serverFarmId);

                return(new AzureWebsitePerformanceLevel(website.Sku.Tier, website.Sku.Size));
            }

            return(null);
        }
Exemplo n.º 4
0
 //This operation isn't currently supported for this platform, but should not raise an exception to the caller.
 public Task Execute(ICloudOdsOperationContext context)
 {
     return(Task.CompletedTask);
 }
Exemplo n.º 5
0
 public static bool MatchesOperationContext(this Site site, ICloudOdsOperationContext context)
 {
     return((context.TargetEnvironment == null || site.IsInEnvironment(context.TargetEnvironment)) &&
            (context.TargetRole == null || site.IsInRole(context.TargetRole)));
 }
        public async Task <IEnumerable <CloudOdsWebsite> > Execute(ICloudOdsOperationContext context)
        {
            var websites = await ExecuteRaw(context);

            return(websites.Select(w => AzureModelExtensions.ToCloudOdsWebsite(w)));
        }
Exemplo n.º 7
0
 public Task <IEnumerable <CloudOdsWebsite> > Execute(ICloudOdsOperationContext context)
 {
     throw new System.NotImplementedException();
 }