test/integration/virtual_machine_extension.rb in fog-azure-rm-0.1.0 vs test/integration/virtual_machine_extension.rb in fog-azure-rm-0.1.1

- old
+ new

@@ -38,111 +38,120 @@ ######################################################################################################################## ###################### Prerequisites ###################### ######################################################################################################################## -rs.resource_groups.create( - name: 'TestRG-VME', - location: 'eastus' -) +begin + resource_group = rs.resource_groups.create( + name: 'TestRG-VME', + location: LOCATION + ) -storage.storage_accounts.create( - name: 'fogstorageac', - location: 'eastus', - resource_group: 'TestRG-VME', - account_type: 'Standard', - replication: 'LRS' -) + storage_account_name = "fog#{get_time}storageac" + storage.storage_accounts.create( + name: storage_account_name, + location: LOCATION, + resource_group: 'TestRG-VME', + account_type: 'Standard', + replication: 'LRS' + ) -network.virtual_networks.create( - name: 'testVnet', - location: 'eastus', - resource_group: 'TestRG-VME', - network_address_list: '10.1.0.0/16,10.2.0.0/16' -) + network.virtual_networks.create( + name: 'testVnet', + location: LOCATION, + resource_group: 'TestRG-VME', + network_address_list: '10.1.0.0/16,10.2.0.0/16' + ) -network.subnets.create( - name: 'mysubnet', - resource_group: 'TestRG-VME', - virtual_network_name: 'testVnet', - address_prefix: '10.2.0.0/24' -) + network.subnets.create( + name: 'mysubnet', + resource_group: 'TestRG-VME', + virtual_network_name: 'testVnet', + address_prefix: '10.2.0.0/24' + ) -network.network_interfaces.create( - name: 'NetInt', - resource_group: 'TestRG-VME', - location: 'eastus', - subnet_id: "/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VME/providers/Microsoft.Network/virtualNetworks/testVnet/subnets/mysubnet", - ip_configuration_name: 'testIpConfiguration', - private_ip_allocation_method: 'Dynamic' -) + network.network_interfaces.create( + name: 'NetInt', + resource_group: 'TestRG-VME', + location: LOCATION, + subnet_id: "/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VME/providers/Microsoft.Network/virtualNetworks/testVnet/subnets/mysubnet", + ip_configuration_name: 'testIpConfiguration', + private_ip_allocation_method: 'Dynamic' + ) -compute.servers.create( - name: 'TestVM', - location: 'eastus', - resource_group: 'TestRG-VME', - vm_size: 'Basic_A0', - storage_account_name: 'fogstorageac', - username: 'testuser', - password: 'Confiz=123', - disable_password_authentication: false, - network_interface_card_id: "/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VME/providers/Microsoft.Network/networkInterfaces/NetInt", - publisher: 'MicrosoftWindowsServer', - offer: 'WindowsServer', - sku: '2008-R2-SP1', - version: 'latest', - platform: 'Windows' -) + compute.servers.create( + name: 'TestVM', + location: LOCATION, + resource_group: 'TestRG-VME', + vm_size: 'Basic_A0', + storage_account_name: storage_account_name, + username: 'testuser', + password: 'Confiz=123', + disable_password_authentication: false, + network_interface_card_id: "/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VME/providers/Microsoft.Network/networkInterfaces/NetInt", + publisher: 'MicrosoftWindowsServer', + offer: 'WindowsServer', + sku: '2008-R2-SP1', + version: 'latest', + platform: 'Windows' + ) -######################################################################################################################## -###################### Attach Extension To Server ###################### -######################################################################################################################## + ######################################################################################################################## + ###################### Attach Extension To Server ###################### + ######################################################################################################################## -compute.virtual_machine_extensions.create( - resource_group: 'TestRG-VME', - location: 'eastus', - vm_name: 'TestVM', - name: 'IaaSAntimalware', - publisher: 'Microsoft.Azure.Security', - type: 'IaaSAntimalware', - type_handler_version: '1.3', - auto_upgrade_minor_version: true, - settings: {'AntimalwareEnabled': 'true', 'RealtimeProtectionEnabled': 'false', 'ScheduledScanSettings': {'isEnabled': 'false', 'day': '7', 'time': '120', 'scanType': 'Quick'}, 'Exclusions': {'Extensions': '', 'Paths': '', 'Processes': ''}}, - protected_settings: {} -) + vm_extension = compute.virtual_machine_extensions.create( + resource_group: 'TestRG-VME', + location: LOCATION, + vm_name: 'TestVM', + name: 'IaaSAntimalware', + publisher: 'Microsoft.Azure.Security', + type: 'IaaSAntimalware', + type_handler_version: '1.3', + auto_upgrade_minor_version: true, + settings: { 'AntimalwareEnabled' => 'true', 'RealtimeProtectionEnabled' => 'false', 'ScheduledScanSettings' => { 'isEnabled' => 'false', 'day' => '7', 'time' => '120', 'scanType' => 'Quick' }, 'Exclusions' => { 'Extensions' => '', 'Paths' => '', 'Processes' => '' } }, + protected_settings: {} + ) + puts "Attached virtual machine extension: #{vm_extension.name}" -######################################################################################################################## -###################### Get Extension From Server ###################### -######################################################################################################################## + ######################################################################################################################## + ###################### Get Extension From Server ###################### + ######################################################################################################################## -vm_extension = compute.virtual_machine_extensions.get('TestRG-VME', 'TestVM', 'IaasAntimalware') + vm_extension = compute.virtual_machine_extensions.get('TestRG-VME', 'TestVM', 'IaasAntimalware') + puts "Get vm extension: #{vm_extension.name}" -######################################################################################################################## -###################### Update Extension ###################### -######################################################################################################################## + ######################################################################################################################## + ###################### Update Extension ###################### + ######################################################################################################################## -vm_extension.update(auto_upgrade_minor_version: false) + vm_extension.update(auto_upgrade_minor_version: false) + puts 'Updated vm extension' -######################################################################################################################## -###################### Delete Extension ###################### -######################################################################################################################## + ######################################################################################################################## + ###################### Delete Extension ###################### + ######################################################################################################################## -vm_extension.destroy + puts "Deleted vm extension: #{vm_extension.destroy}" -######################################################################################################################## -###################### CleanUp ###################### -######################################################################################################################## + ######################################################################################################################## + ###################### CleanUp ###################### + ######################################################################################################################## -virtual_machine = compute.servers.get('TestRG-VME', 'TestVM') -virtual_machine.destroy + virtual_machine = compute.servers.get('TestRG-VME', 'TestVM') + virtual_machine.destroy -nic = network.network_interfaces.get('TestRG-VME', 'NetInt') -nic.destroy + nic = network.network_interfaces.get('TestRG-VME', 'NetInt') + nic.destroy -vnet = network.virtual_networks.get('TestRG-VME', 'testVnet') -vnet.destroy + vnet = network.virtual_networks.get('TestRG-VME', 'testVnet') + vnet.destroy -storage = storage.storage_accounts.get('TestRG-VME', 'fogstorageac') -storage.destroy + storage = storage.storage_accounts.get('TestRG-VME', storage_account_name) + storage.destroy -resource_group = rs.resource_groups.get('TestRG-VME') -resource_group.destroy + resource_group = rs.resource_groups.get('TestRG-VME') + resource_group.destroy +rescue + puts 'Integration Test for vm extension is failing' + resource_group.destroy unless resource_group.nil? +end