diff --git a/changelogs/fragments/50120-fix-vm-facts-managed-disk.yaml b/changelogs/fragments/50120-fix-vm-facts-managed-disk.yaml new file mode 100644 index 00000000000..f7beb438404 --- /dev/null +++ b/changelogs/fragments/50120-fix-vm-facts-managed-disk.yaml @@ -0,0 +1,2 @@ +bugfixes: +- azure_rm_virtualmachine_facts - fixed crash related to VM with managed disk attached diff --git a/lib/ansible/modules/cloud/azure/azure_rm_virtualmachine_facts.py b/lib/ansible/modules/cloud/azure/azure_rm_virtualmachine_facts.py index b81d29e7716..b2e112ddc77 100644 --- a/lib/ansible/modules/cloud/azure/azure_rm_virtualmachine_facts.py +++ b/lib/ansible/modules/cloud/azure/azure_rm_virtualmachine_facts.py @@ -294,7 +294,9 @@ class AzureRMVirtualMachineFacts(AzureRMModuleBase): new_result['state'] = 'present' new_result['location'] = vm.location new_result['vm_size'] = result['properties']['hardwareProfile']['vmSize'] - new_result['admin_username'] = result['properties']['osProfile']['adminUsername'] + os_profile = result['properties'].get('osProfile') + if os_profile is not None: + new_result['admin_username'] = os_profile.get('adminUsername') image = result['properties']['storageProfile'].get('imageReference') if image is not None: new_result['image'] = {