public void HandleMessage(BrokeredMessage message) { if (message.GetMessageType() == "Create") { var virtualMachine = message.GetObject<VirtualMachine>(); var imageName = CloudConfigurationManager.GetSetting("VirtualMachineBaseImageName"); var dataDiskBase = CloudConfigurationManager.GetSetting("DataDiskName"); var dataDiskName = String.Format("{0}-{1}", dataDiskBase, virtualMachine.Name); var sourceVhdName = String.Format("{0}.vhd", dataDiskBase); var storageContainerUrl = CloudConfigurationManager.GetSetting("StorageContainerUrl"); var vhdContainerName = CloudConfigurationManager.GetSetting("VhdContainerName"); //TODO: does this work with multiple storage accounts? var serviceName = CloudConfigurationManager.GetSetting("ServiceName"); //var subscriptionId = CloudConfigurationManager.GetSetting("Azure.SubscriptionId"); //var managementCertificateString = CloudConfigurationManager.GetSetting("Azure.ManagementCertificate"); //var managementCertificate = new X509Certificate2(Convert.FromBase64String(managementCertificateString)); //var credentials = new CertificateCloudCredentials(subscriptionId, managementCertificate); //TODO: find a subscription? //TODO: get storage account? if (AzureVmExists(_executor, virtualMachine) == false) { CreateNewVirtualMachine(_executor, virtualMachine, imageName, serviceName, sourceVhdName, storageContainerUrl, vhdContainerName, dataDiskName); } } else { throw new ArgumentException("Invalid Message Type.", "message"); } }
public void SetAndGetVirtualMachine_AdminUserNameIsPersisted() { var message = new BrokeredMessage(); var expected = new VirtualMachine { Name = "Name", AdminUserName = "******", AdminPassword = "******", Location = "Location", Size = AzureVirtualMachineSize.ExtraSmall, TimeZone = "TimeZone" }; message.SetObject(expected); var actual = message.GetObject<VirtualMachine>(); Assert.That(actual.AdminUserName, Is.EqualTo(expected.AdminUserName)); }
public void HandleMessage(BrokeredMessage message) { if (message.GetMessageType() == "Delete") { var virtualMachine = message.GetObject<VirtualMachine>(); var serviceName = CloudConfigurationManager.GetSetting("ServiceName"); //var subscriptionId = CloudConfigurationManager.GetSetting("Azure.SubscriptionId"); //var managementCertificateString = CloudConfigurationManager.GetSetting("Azure.ManagementCertificate"); //var managementCertificate = new X509Certificate2(Convert.FromBase64String(managementCertificateString)); //var credentials = new CertificateCloudCredentials(subscriptionId, managementCertificate); //TODO: find a subscription? //TODO: get storage account? DeleteExistingArtifacts(_executor, virtualMachine, serviceName); } else { throw new ArgumentException("Invalid Message Type.", "message"); } }