mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-10-08 01:14:03 -07:00
Add support for Azure 2.0.0 (#27920)
* Adapt azure_rm_resource_group to azure 2.0.0 + azure Cli support * Fix exceptions in Azure ARM plugins * update azure_rm_networkinterface documention to reflect required params * change state param to not required for docs in azure_rm_subnet * fix import to reflect azure==2.0.0 changes * add aliases and fix docs for azure_rm_storageblob * add resource_group_name alias to azure_rm_storageaccount_facts * fix import bug due to change in azure==2.0.0 * fix args bug and enum modules issue * update docs to reflect azure==2.0.0 * pin management clients to a specific api_version * update docs to reflect the new azure-ansible-base python package * add fallback for older api resource group listing * rework azure dependencies installation * refactor path joining to a cross-plat solution
This commit is contained in:
parent
1b9d9376e2
commit
e4cd899363
17 changed files with 151 additions and 51 deletions
|
@ -26,6 +26,8 @@ options:
|
|||
description:
|
||||
- Name of the resource group to use.
|
||||
required: true
|
||||
aliases:
|
||||
- resource_group_name
|
||||
name:
|
||||
description:
|
||||
- Name of the storage account to update or create.
|
||||
|
@ -141,8 +143,8 @@ state:
|
|||
try:
|
||||
from msrestazure.azure_exceptions import CloudError
|
||||
from azure.storage.cloudstorageaccount import CloudStorageAccount
|
||||
from azure.common import AzureMissingResourceHttpError, AzureHttpError
|
||||
from azure.mgmt.storage.models.storage_management_client_enums import ProvisioningState, SkuName, SkuTier, Kind
|
||||
from azure.common import AzureMissingResourceHttpError
|
||||
from azure.mgmt.storage.models import ProvisioningState, SkuName, SkuTier, Kind
|
||||
from azure.mgmt.storage.models import StorageAccountUpdateParameters, CustomDomain, \
|
||||
StorageAccountCreateParameters, Sku
|
||||
except ImportError:
|
||||
|
@ -161,7 +163,7 @@ class AzureRMStorageAccount(AzureRMModuleBase):
|
|||
custom_domain=dict(type='dict'),
|
||||
location=dict(type='str'),
|
||||
name=dict(type='str', required=True),
|
||||
resource_group=dict(required=True, type='str'),
|
||||
resource_group=dict(required=True, type='str', aliases=['resource_group_name']),
|
||||
state=dict(default='present', choices=['present', 'absent']),
|
||||
force=dict(type='bool', default=False),
|
||||
tags=dict(type='dict'),
|
||||
|
@ -237,7 +239,7 @@ class AzureRMStorageAccount(AzureRMModuleBase):
|
|||
self.log('Checking name availability for {0}'.format(self.name))
|
||||
try:
|
||||
response = self.storage_client.storage_accounts.check_name_availability(self.name)
|
||||
except AzureHttpError as e:
|
||||
except CloudError as e:
|
||||
self.log('Error attempting to validate name.')
|
||||
self.fail("Error checking name availability: {0}".format(str(e)))
|
||||
if not response.name_available:
|
||||
|
@ -386,7 +388,7 @@ class AzureRMStorageAccount(AzureRMModuleBase):
|
|||
try:
|
||||
poller = self.storage_client.storage_accounts.create(self.resource_group, self.name, parameters)
|
||||
self.get_poller_result(poller)
|
||||
except AzureHttpError as e:
|
||||
except CloudError as e:
|
||||
self.log('Error creating storage account.')
|
||||
self.fail("Failed to create account: {0}".format(str(e)))
|
||||
# the poller doesn't actually return anything
|
||||
|
@ -404,7 +406,7 @@ class AzureRMStorageAccount(AzureRMModuleBase):
|
|||
status = self.storage_client.storage_accounts.delete(self.resource_group, self.name)
|
||||
self.log("delete status: ")
|
||||
self.log(str(status))
|
||||
except AzureHttpError as e:
|
||||
except CloudError as e:
|
||||
self.fail("Failed to delete the account: {0}".format(str(e)))
|
||||
return True
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue