Esempio n. 1
0
        private Azure(RestClient restClient, string subscriptionId, string tenantId, IAuthenticated authenticated)
        {
            resourceManager          = ResourceManager.Fluent.ResourceManager.Authenticate(restClient).WithSubscription(subscriptionId);
            storageManager           = StorageManager.Authenticate(restClient, subscriptionId);
            computeManager           = ComputeManager.Authenticate(restClient, subscriptionId);
            networkManager           = NetworkManager.Authenticate(restClient, subscriptionId);
            batchManager             = BatchManager.Authenticate(restClient, subscriptionId);
            keyVaultManager          = KeyVaultManager.Authenticate(restClient, subscriptionId, tenantId);
            trafficManager           = TrafficManager.Fluent.TrafficManager.Authenticate(restClient, subscriptionId);
            dnsZoneManager           = DnsZoneManager.Authenticate(restClient, subscriptionId);
            sqlManager               = SqlManager.Authenticate(restClient, subscriptionId);
            redisManager             = RedisManager.Authenticate(restClient, subscriptionId);
            cdnManager               = CdnManager.Authenticate(restClient, subscriptionId);
            appServiceManager        = AppServiceManager.Authenticate(restClient, subscriptionId, tenantId);
            searchManager            = SearchManager.Authenticate(restClient, subscriptionId);
            serviceBusManager        = ServiceBusManager.Authenticate(restClient, subscriptionId);
            containerInstanceManager = ContainerInstanceManager.Authenticate(restClient, subscriptionId);
            registryManager          = RegistryManager.Authenticate(restClient, subscriptionId);
            containerServiceManager  = ContainerServiceManager.Authenticate(restClient, subscriptionId);
            cosmosDBManager          = CosmosDBManager.Authenticate(restClient, subscriptionId);
            authorizationManager     = AuthorizationManager.Authenticate(restClient, subscriptionId);
            msiManager               = MsiManager.Authenticate(restClient, subscriptionId);
            batchAIManager           = BatchAIManager.Authenticate(restClient, subscriptionId);
            monitorManager           = MonitorManager.Authenticate(restClient, subscriptionId);
            eventHubManager          = EventHubManager.Authenticate(restClient, subscriptionId);

            SubscriptionId     = subscriptionId;
            this.authenticated = authenticated;
        }
 private ContainerInstanceManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, ContainerInstanceManagementClient.NewInstance(restClient))
 {
     Inner.SubscriptionId = subscriptionId;
     this.storageManager  = StorageManager.Authenticate(restClient, subscriptionId);
     this.rbacManager     = GraphRbacManager.Authenticate(restClient, subscriptionId);
 }
Esempio n. 3
0
 public ComputeManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, ComputeManagementClient.NewInstance(restClient))
 {
     Inner.SubscriptionId = subscriptionId;
     storageManager       = StorageManager.Authenticate(restClient, subscriptionId);
     networkManager       = NetworkManager.Authenticate(restClient, subscriptionId);
     rbacManager          = GraphRbacManager.Authenticate(restClient, restClient.Credentials.TenantId);
 }
 public BatchManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new BatchManagementClient(restClient)
 {
     SubscriptionId = subscriptionId
 })
 {
     storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
Esempio n. 5
0
 private EventHubManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new EventHubManagementClient(restClient)
 {
     SubscriptionId = subscriptionId
 })
 {
     storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
Esempio n. 6
0
 private ContainerInstanceManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new ContainerInstanceManagementClient(restClient)
 {
     SubscriptionId = subscriptionId
 })
 {
     this.storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
Esempio n. 7
0
 public RegistryManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new ContainerRegistryManagementClient(restClient)
 {
     SubscriptionId = subscriptionId
 })
 {
     this.storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
Esempio n. 8
0
 public ComputeManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new ComputeManagementClient(restClient)
 {
     SubscriptionId = subscriptionId
 })
 {
     storageManager = StorageManager.Authenticate(restClient, subscriptionId);
     networkManager = NetworkManager.Authenticate(restClient, subscriptionId);
     rbacManager    = GraphRbacManager.Authenticate(restClient, restClient.Credentials.TenantId);
 }
        private async Task <IFunctionApp> CreateFunctionAppsAsync(IResourceGroup resourceGroup)
        {
            var storageAccount = await StorageManager
                                 .Authenticate(_azureCredentials, _configuration.SubscriptionId)
                                 .StorageAccounts
                                 .Define(_configuration.ResourceNamePrefix.ToLowerInvariant() + "storage")
                                 .WithRegion(_configuration.RegionName)
                                 .WithExistingResourceGroup(resourceGroup)
                                 .WithSku(StorageAccountSkuType.Standard_LRS)
                                 .CreateAsync();

            Console.WriteLine($"Successfully created or updated storage account '{storageAccount.Name}'");

            var appServiceManager = AppServiceManager.Authenticate(_azureCredentials, _configuration.SubscriptionId);
            var appServicePlan    = await appServiceManager
                                    .AppServicePlans
                                    .Define(_configuration.ResourceNamePrefix + "Plan")
                                    .WithRegion(_configuration.RegionName)
                                    .WithExistingResourceGroup(resourceGroup)
                                    .WithPricingTier(PricingTier.FromSkuDescription(new SkuDescription("Y1", "Dynamic", "Y1", "Y", 0)))
                                    .WithOperatingSystem(OperatingSystem.Windows)
                                    .CreateAsync();

            Console.WriteLine($"Successfully created or updated app service plan '{appServicePlan.Name}'");

            var functionApp = await appServiceManager
                              .FunctionApps
                              .Define(_configuration.ResourceNamePrefix + "Api")
                              .WithExistingAppServicePlan(appServicePlan)
                              .WithExistingResourceGroup(resourceGroup)
                              .WithExistingStorageAccount(storageAccount)
                              .WithSystemAssignedManagedServiceIdentity()
                              .DefineAuthentication()
                              .WithDefaultAuthenticationProvider(BuiltInAuthenticationProvider.AzureActiveDirectory)
                              .WithActiveDirectory(_configuration.CertificateAuthorityClientId, $"https://login.microsoftonline.com/{_configuration.TenantId}/v2.0")
                              .Attach()
                              .WithAppSetting("StorageConnectionString", await BuildStorageConnectionString())
                              .WithAppSetting("StorageContainerName", _configuration.FunctionStorageContainerName)
                              .WithAppSetting("RootCertificateId", BuildRootCertificateId())
                              .CreateAsync();

            Console.WriteLine($"Successfully created or updated function app '{functionApp.Name}'");
            return(functionApp);

            async Task <string> BuildStorageConnectionString()
            {
                var storageAccountKeys = await storageAccount.GetKeysAsync();

                var storageAccountKeyValue = storageAccountKeys[0].Value;

                return($"DefaultEndpointsProtocol=https;AccountName={storageAccount.Name};AccountKey={storageAccountKeyValue};EndpointSuffix=core.windows.net");
            }

            string BuildRootCertificateId() => $"https://{_configuration.ResourceNamePrefix.ToLowerInvariant()}vault.vault.azure.net/certificates/{_configuration.RootCertificateName.ToLowerInvariant()}";
        }
 private EventHubManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new EventHubManagementClient(new Uri(restClient.BaseUri),
                                                                   restClient.Credentials,
                                                                   restClient.RootHttpHandler,
                                                                   restClient.Handlers.ToArray())
 {
     SubscriptionId = subscriptionId
 })
 {
     storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
 private ContainerInstanceManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new ContainerInstanceManagementClient(new Uri(restClient.BaseUri),
                                                                            restClient.Credentials,
                                                                            restClient.RootHttpHandler,
                                                                            restClient.Handlers.ToArray())
 {
     SubscriptionId = subscriptionId
 })
 {
     this.storageManager = StorageManager.Authenticate(restClient, subscriptionId);
 }
 public ComputeManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, new ComputeManagementClient(new Uri(restClient.BaseUri),
                                                                  restClient.Credentials,
                                                                  restClient.RootHttpHandler,
                                                                  restClient.Handlers.ToArray())
 {
     SubscriptionId = subscriptionId
 })
 {
     storageManager = StorageManager.Authenticate(restClient, subscriptionId);
     networkManager = NetworkManager.Authenticate(restClient, subscriptionId);
     rbacManager    = GraphRbacManager.Authenticate(restClient, ((AzureCredentials)(restClient.Credentials)).TenantId);
 }
Esempio n. 13
0
        static void Download()
        {
            StorageManager manager = new StorageManager();

            Console.WriteLine("authenticating");
            manager.Authenticate();
            Console.WriteLine("Getting manifests");
            manager.GetAssetManifests(AssetCategory.Maps);
            Console.WriteLine("Generating assets");
            var assets = manager.GenerateAssets(AssetCategory.Maps);

            Directory.CreateDirectory("test");
            Console.WriteLine("done");
        }
 private EventHubManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, EventHubManagementClient.NewInstance(restClient))
 {
     Inner.SubscriptionId = subscriptionId;
     storageManager       = StorageManager.Authenticate(restClient, subscriptionId);
 }
 public RegistryManager(RestClient restClient, string subscriptionId) :
     base(restClient, subscriptionId, ContainerRegistryManagementClient.NewInstance(restClient))
 {
     Inner.SubscriptionId = subscriptionId;
     this.storageManager  = StorageManager.Authenticate(restClient, subscriptionId);
 }