Пример #1
0
        public static List <AzureResourceGroup> GetResourceGroups(SubscriptionCloudCredentials credentials)
        {
            var result = new List <AzureResourceGroup>();

            ResourceManagementClient client = new ResourceManagementClient(credentials);

            var resourceGroupParams = new ResourceGroupListParameters();

            var groupResult = client.ResourceGroups.List(resourceGroupParams);

            foreach (var resourceGroup in groupResult.ResourceGroups)
            {
                var azureResourceGroup = new AzureResourceGroup(resourceGroup);

                var resourceParams = new ResourceListParameters();
                resourceParams.ResourceGroupName = resourceGroup.Name;

                var resourceResult = client.Resources.List(resourceParams);

                foreach (var resource in resourceResult.Resources)
                {
                    azureResourceGroup.Resources.Add(new Models.AzureResource(resource, credentials.SubscriptionId, resourceGroup.Name));
                }

                result.Add(azureResourceGroup);
            }

            return(result);
        }
        private static Tuple <string, string> GetAllResourceNameAndLocation(EventData eventEntry, string resourceGroupName, string resourceUri, ResourceManagementClient resclient)
        {
            Tuple <string, string> resultSet = new Tuple <string, string>(string.Empty, string.Empty);

            if (!string.IsNullOrWhiteSpace(resourceGroupName) && !string.IsNullOrWhiteSpace(resourceUri))
            {
                try
                {
                    ResourceListParameters reslist = new ResourceListParameters();

                    reslist.ResourceGroupName = eventEntry.ResourceGroupName;

                    ResourceListResult resresult = resclient.Resources.List(reslist);

                    foreach (GenericResourceExtended resource in resresult.Resources)
                    {
                        if (resource.Id == eventEntry.ResourceId)
                        {
                            resultSet = new Tuple <string, string>(resource.Name, resource.Location);
                            break;
                        }
                    }
                }
                catch
                {
                    return(resultSet);
                }
            }

            return(resultSet);
        }
 /// <summary>
 /// Get all of the resources under a subscription.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Resources.IResourceOperations.
 /// </param>
 /// <param name='parameters'>
 /// Optional. Query parameters. If null is passed returns all resource
 /// groups.
 /// </param>
 /// <returns>
 /// List of resource groups.
 /// </returns>
 public static ResourceListResult List(this IResourceOperations operations, ResourceListParameters parameters)
 {
     return(Task.Factory.StartNew((object s) =>
     {
         return ((IResourceOperations)s).ListAsync(parameters);
     }
                                  , operations, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }
Пример #4
0
        public async Task <ResourceListResult> GetAutomationResources()
        {
            if (currSubscription.Name == null)
            {
                throw new Exception(Properties.Resources.SubscriptionNotSet);
            }

            // Get the token for the tenant on this subscription.
            var cloudtoken = AuthenticateHelper.RefreshTokenByAuthority(azureARMAuthResult.TenantId, Properties.Settings.Default.appIdURI);

            subscriptionCreds        = new TokenCloudCredentials(currSubscription.SubscriptionId, cloudtoken.AccessToken);
            resourceManagementClient = new ResourceManagementClient(subscriptionCreds, new Uri(Properties.Settings.Default.appIdURI));

            // Only get automation account resources
            ResourceListParameters automationResourceParams = new ResourceListParameters();

            automationResourceParams.ResourceType = "Microsoft.Automation/automationAccounts";
            ResourceListResult resources = await resourceManagementClient.Resources.ListAsync(automationResourceParams);

            return(resources);
        }
 /// <summary>
 /// Get all of the resources under a subscription.
 /// </summary>
 /// <param name='operations'>
 /// Reference to the
 /// Microsoft.Azure.Management.Resources.IResourceOperations.
 /// </param>
 /// <param name='parameters'>
 /// Optional. Query parameters. If null is passed returns all resource
 /// groups.
 /// </param>
 /// <returns>
 /// List of resource groups.
 /// </returns>
 public static Task <ResourceListResult> ListAsync(this IResourceOperations operations, ResourceListParameters parameters)
 {
     return(operations.ListAsync(parameters, CancellationToken.None));
 }