File: resourcemanagementstorage.rst

package info (click to toggle)
python-azure 2.0.0~rc6%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 269,052 kB
  • ctags: 9,428
  • sloc: python: 81,857; makefile: 149
file content (98 lines) | stat: -rw-r--r-- 3,059 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Storage Resource Management
===========================

For general information on resource management, see :doc:`Resource Management<resourcemanagement>`.

Create the management client
----------------------------

The following code creates an instance of the management client.

You will need to provide your ``subscription_id`` which can be retrieved
from `your subscription list <https://manage.windowsazure.com/#Workspaces/AdminTasks/SubscriptionMapping>`__.

See :doc:`Resource Management Authentication <resourcemanagementauthentication>`
for details on getting a ``Credentials`` instance.

.. code:: python

    from azure.mgmt.storage import StorageManagementClient

    # TODO: Replace this with your subscription id
    subscription_id = '33333333-3333-3333-3333-333333333333'
    # TODO: See above how to get a Credentials instance
    credentials = ...

    storage_client = StorageManagementClient(
        credentials,
        subscription_id
    )

Registration
------------

Some operations in the storage ARM APIs require a one-time registration of the
storage provider with your subscription.

Use the following code to do the registration. You can use the same
credentials you created in the previous section.

.. code:: python

    from azure.mgmt.resource.resources import ResourceManagementClient

    resource_client = ResourceManagementClient(
        credentials,
        subscription_id
    )
    resource_client.providers.register('Microsoft.Storage')

Create storage account
----------------------

The following code creates a new storage account under an existing resource group.
To create or manage resource groups, see :doc:`Resource Management<resourcemanagement>`.

.. code:: python

    from azure.mgmt.storage.models import StorageAccountCreateParameters, Sku, SkuName, Kind

    group_name = 'myresourcegroup'
    account_name = 'mystorageaccountname'
    result = storage_client.storage_accounts.create(
        group_name,
        account_name,
        StorageAccountCreateParameters(
            sku=Sku(SkuName.standard_lrs),
            kind=Kind.storage,
            location='westus'
        )
    )
    # result is a msrestazure.azure_operation.AzureOperationPoller instance
    # wait insure polling the underlying async operation until it's done.
    result.wait()

List storage accounts
---------------------

.. code:: python

    group_name = 'myresourcegroup'
    storage_accounts = storage_client.storage_accounts.list_by_resource_group(group_name)
    for storage_account in storage_accounts:
        print(storage_account.name)
        print(storage_account.location)
        print(storage_account.provisioning_state)
        print('')

Get storage account keys
------------------------

.. code:: python

    group_name = 'myresourcegroup'
    account_name = 'mystorageaccountname'
    storage_keys = storage_client.storage_accounts.list_keys(group_name, account_name)
    storage_keys = {v.key_name: v.value for v in storage_keys.keys}
    print(storage_keys['key1'])
    print(storage_keys['key2'])