public static PSStorageService Create(StorageManagementClient client, StorageServicePropertiesOperationContext account) { var cloudStorageAccount = StorageUtilities.GenerateCloudStorageAccount(client, account.StorageAccountName); return(new PSStorageService(account, new AzureStorageContext(cloudStorageAccount))); }
public static PSStorageService Create(StorageManagementClient client, StorageServicePropertiesOperationContext account) { return(new PSStorageService(account, new LazyAzureStorageContext((s) => { return StorageUtilities.GenerateCloudStorageAccount(client, account.StorageAccountName); }, account.StorageAccountName) as AzureStorageContext)); }
public static CloudStorageAccount GetCloudStorageAccount(this AzureSubscription subscription) { if (subscription == null) { return(null); } using (var storageClient = AzureSession.ClientFactory.CreateClient <StorageManagementClient>(subscription, AzureEnvironment.Endpoint.ServiceManagement)) { return(StorageUtilities.GenerateCloudStorageAccount( storageClient, subscription.GetProperty(AzureSubscription.Property.StorageAccount))); } }
public override void ExecuteCmdlet() { CloudStorageAccount account; if (Context != null) { account = Context.StorageAccount; } else { account = StorageUtilities.GenerateCloudStorageAccount(new ARMStorageProvider(StorageClient), ResourceGroupName, Name); } // Clear the current storage account for both SM and RM GeneralUtilities.ClearCurrentStorageAccount(true); DefaultContext.SetCurrentStorageAccount(account.ToString(true)); WriteObject(account.Credentials.AccountName); }
protected override void ProcessRecord() { CloudStorageAccount account; if (Context != null) { account = Context.StorageAccount; } else { account = StorageUtilities.GenerateCloudStorageAccount(StorageClient, ResourceGroupName, StorageAccountName); } // Clear the current storage account for both SM and RM GeneralUtilities.ClearCurrentStorageAccount(true); DefaultContext.SetCurrentStorageAccount(account.ToString(true)); WriteObject(account.Credentials.AccountName); }
public static CloudStorageAccount GetCloudStorageAccount(this WindowsAzureSubscription subscription) { if (subscription == null || subscription.SubscriptionId == null) { return(null); } if (subscription.currentCloudStorageAccount != null) { return(subscription.currentCloudStorageAccount as CloudStorageAccount); } else { using (var storageClient = subscription.CreateClient <StorageManagementClient>()) { subscription.currentCloudStorageAccount = StorageUtilities.GenerateCloudStorageAccount( storageClient, subscription.currentStorageAccountName); return(subscription.currentCloudStorageAccount as CloudStorageAccount); } } }
/// <summary> /// Get storage account details from the current storage account /// </summary> /// <param name="subscription">The subscription containing the account.</param> /// <param name="profile">The profile continuing the subscription.</param> /// <returns>Storage account details, usable with the windows azure storage data plane library.</returns> public static CloudStorageAccount GetCloudStorageAccount(this AzureSubscription subscription, AzureSMProfile profile) { if (subscription == null) { return(null); } var account = subscription.GetProperty(AzureSubscription.Property.StorageAccount); try { return(CloudStorageAccount.Parse(account)); } catch { using ( var storageClient = AzureSession.ClientFactory.CreateClient <StorageManagementClient>(profile, subscription, AzureEnvironment.Endpoint.ServiceManagement)) { return(StorageUtilities.GenerateCloudStorageAccount( storageClient, account)); } } }
/// <summary> /// Gets connection string of the given storage service name. /// </summary> /// <param name="name">The storage service name</param> /// <returns>The connection string</returns> public string GetStorageServiceConnectionString(string name) { return(StorageUtilities.GenerateCloudStorageAccount(StorageClient, name).ToString(true)); }
/// <summary> /// Executes the set subscription cmdlet operation. /// </summary> public override void ExecuteCmdlet() { AzureSubscription subscription = null; if (!string.IsNullOrEmpty(SubscriptionId) && string.IsNullOrEmpty(SubscriptionName)) { subscription = ProfileClient.GetSubscription(new Guid(SubscriptionId)); Environment = subscription.Environment; } else if (string.IsNullOrEmpty(SubscriptionId) && !string.IsNullOrEmpty(SubscriptionName)) { subscription = ProfileClient.GetSubscription(SubscriptionName); Environment = subscription.Environment; } else { subscription = new AzureSubscription(); subscription.Id = new Guid(SubscriptionId); subscription.Name = SubscriptionName; } AzureEnvironment environment = ProfileClient.GetEnvironment(Environment, ServiceEndpoint, ResourceManagerEndpoint); if (environment == null) { var profileClient = new ProfileClient(Profile); environment = profileClient.GetEnvironment(Environment, ServiceEndpoint, ResourceManagerEndpoint); } if (environment == null) { throw new ArgumentException("ServiceEndpoint and ResourceManagerEndpoint values do not " + "match existing environment. Please use Environment parameter."); } else { subscription.Environment = environment.Name; } if (ServiceEndpoint != null || ResourceManagerEndpoint != null) { WriteWarning("Please use Environment parameter to specify subscription environment. This " + "warning will be converted into an error in the upcoming release."); } if (Certificate != null) { ProfileClient.ImportCertificate(Certificate); subscription.Account = Certificate.Thumbprint; AzureAccount account = new AzureAccount { Id = Certificate.Thumbprint, Type = AzureAccount.AccountType.Certificate }; account.SetOrAppendProperty(AzureAccount.Property.Subscriptions, subscription.Id.ToString()); ProfileClient.AddOrSetAccount(account); if (subscription.Account == null) { subscription.Account = account.Id; } } if (subscription.Account == null) { throw new ArgumentException("Certificate is required for creating a new subscription."); } if (!string.IsNullOrEmpty(CurrentStorageAccountName) || Context != null) { ProfileClient.GetAccount(subscription.Account); if (Profile.Context != null && Profile.Context.Subscription != null && Profile.Context.Subscription.Id == subscription.Id) { GeneralUtilities.ClearCurrentStorageAccount(); } var context = new AzureContext(subscription, ProfileClient.GetAccount(subscription.Account), ProfileClient.GetEnvironmentOrDefault(subscription.Environment)); if (Context != null) { context.SetCurrentStorageAccount(this); } else { var client = AzureSession.ClientFactory.CreateClient <StorageManagementClient>(context, AzureEnvironment.Endpoint.ServiceManagement); var account = StorageUtilities.GenerateCloudStorageAccount(client, CurrentStorageAccountName); context.SetCurrentStorageAccount(account.ToString(true)); } } subscription = ProfileClient.AddOrSetSubscription(subscription); if (PassThru) { WriteObject(subscription); } }