Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[AutoPR storage/resource-manager] Adds Geo Replication Stats in Azure…
… Storage Account's properties (#3789)

* Generated from 6363da5bf9a13499463df8ff5e443801d064ab84

Adds Geo Replication Stats in Azure Storage Account's properties

* Generated from 126237ac76d98075599b17e0032c37e0af486e8b

Merge branch 'master' into adds_geo_replication_stats
  • Loading branch information
AutorestCI authored and lmazuel committed Nov 15, 2018
commit 1070a263a118682861e600cbff05bae587f75d18
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
from .identity_py3 import Identity
from .storage_account_create_parameters_py3 import StorageAccountCreateParameters
from .endpoints_py3 import Endpoints
from .geo_replication_stats_py3 import GeoReplicationStats
from .storage_account_py3 import StorageAccount
from .storage_account_key_py3 import StorageAccountKey
from .storage_account_list_keys_result_py3 import StorageAccountListKeysResult
Expand Down Expand Up @@ -83,6 +84,7 @@
from .identity import Identity
from .storage_account_create_parameters import StorageAccountCreateParameters
from .endpoints import Endpoints
from .geo_replication_stats import GeoReplicationStats
from .storage_account import StorageAccount
from .storage_account_key import StorageAccountKey
from .storage_account_list_keys_result import StorageAccountListKeysResult
Expand Down Expand Up @@ -129,6 +131,7 @@
Bypass,
DefaultAction,
AccessTier,
GeoReplicationStatus,
ProvisioningState,
AccountStatus,
KeyPermission,
Expand All @@ -144,6 +147,7 @@
LeaseDuration,
ImmutabilityPolicyState,
ImmutabilityPolicyUpdateType,
StorageAccountExpand,
)

__all__ = [
Expand All @@ -168,6 +172,7 @@
'Identity',
'StorageAccountCreateParameters',
'Endpoints',
'GeoReplicationStats',
'StorageAccount',
'StorageAccountKey',
'StorageAccountListKeysResult',
Expand Down Expand Up @@ -213,6 +218,7 @@
'Bypass',
'DefaultAction',
'AccessTier',
'GeoReplicationStatus',
'ProvisioningState',
'AccountStatus',
'KeyPermission',
Expand All @@ -228,4 +234,5 @@
'LeaseDuration',
'ImmutabilityPolicyState',
'ImmutabilityPolicyUpdateType',
'StorageAccountExpand',
]
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class GeoReplicationStats(Model):
"""Statistics related to replication for storage account's Blob, Table, Queue
and File services. It is only available when geo-redundant replication is
enabled for the storage account.

Variables are only populated by the server, and will be ignored when
sending a request.

:ivar status: The status of the secondary location. Possible values are: -
Live: Indicates that the secondary location is active and operational. -
Bootstrap: Indicates initial synchronization from the primary location to
the secondary location is in progress.This typically occurs when
replication is first enabled. - Unavailable: Indicates that the secondary
location is temporarily unavailable. Possible values include: 'Live',
'Bootstrap', 'Unavailable'
:vartype status: str or
~azure.mgmt.storage.v2018_07_01.models.GeoReplicationStatus
:ivar last_sync_time: All primary writes preceding this UTC date/time
value are guaranteed to be available for read operations. Primary writes
following this point in time may or may not be available for reads.
Element may be default value if value of LastSyncTime is not available,
this can happen if secondary is offline or we are in bootstrap.
:vartype last_sync_time: datetime
"""

_validation = {
'status': {'readonly': True},
'last_sync_time': {'readonly': True},
}

_attribute_map = {
'status': {'key': 'status', 'type': 'str'},
'last_sync_time': {'key': 'lastSyncTime', 'type': 'iso-8601'},
}

def __init__(self, **kwargs):
super(GeoReplicationStats, self).__init__(**kwargs)
self.status = None
self.last_sync_time = None
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class GeoReplicationStats(Model):
"""Statistics related to replication for storage account's Blob, Table, Queue
and File services. It is only available when geo-redundant replication is
enabled for the storage account.

Variables are only populated by the server, and will be ignored when
sending a request.

:ivar status: The status of the secondary location. Possible values are: -
Live: Indicates that the secondary location is active and operational. -
Bootstrap: Indicates initial synchronization from the primary location to
the secondary location is in progress.This typically occurs when
replication is first enabled. - Unavailable: Indicates that the secondary
location is temporarily unavailable. Possible values include: 'Live',
'Bootstrap', 'Unavailable'
:vartype status: str or
~azure.mgmt.storage.v2018_07_01.models.GeoReplicationStatus
:ivar last_sync_time: All primary writes preceding this UTC date/time
value are guaranteed to be available for read operations. Primary writes
following this point in time may or may not be available for reads.
Element may be default value if value of LastSyncTime is not available,
this can happen if secondary is offline or we are in bootstrap.
:vartype last_sync_time: datetime
"""

_validation = {
'status': {'readonly': True},
'last_sync_time': {'readonly': True},
}

_attribute_map = {
'status': {'key': 'status', 'type': 'str'},
'last_sync_time': {'key': 'lastSyncTime', 'type': 'iso-8601'},
}

def __init__(self, **kwargs) -> None:
super(GeoReplicationStats, self).__init__(**kwargs)
self.status = None
self.last_sync_time = None
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,9 @@ class StorageAccount(TrackedResource):
:param is_hns_enabled: Account HierarchicalNamespace enabled if sets to
true.
:type is_hns_enabled: bool
:ivar geo_replication_stats: Geo Replication Stats
:vartype geo_replication_stats:
~azure.mgmt.storage.v2018_07_01.models.GeoReplicationStats
:ivar failover_in_progress: If the failover is in progress, the value will
be true, otherwise, it will be null.
:vartype failover_in_progress: bool
Expand All @@ -130,6 +133,7 @@ class StorageAccount(TrackedResource):
'encryption': {'readonly': True},
'access_tier': {'readonly': True},
'network_rule_set': {'readonly': True},
'geo_replication_stats': {'readonly': True},
'failover_in_progress': {'readonly': True},
}

Expand Down Expand Up @@ -158,6 +162,7 @@ class StorageAccount(TrackedResource):
'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'},
'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'},
'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'},
'geo_replication_stats': {'key': 'properties.geoReplicationStats', 'type': 'GeoReplicationStats'},
'failover_in_progress': {'key': 'properties.failoverInProgress', 'type': 'bool'},
}

Expand All @@ -182,4 +187,5 @@ def __init__(self, **kwargs):
self.enable_https_traffic_only = kwargs.get('enable_https_traffic_only', None)
self.network_rule_set = None
self.is_hns_enabled = kwargs.get('is_hns_enabled', None)
self.geo_replication_stats = None
self.failover_in_progress = None
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,9 @@ class StorageAccount(TrackedResource):
:param is_hns_enabled: Account HierarchicalNamespace enabled if sets to
true.
:type is_hns_enabled: bool
:ivar geo_replication_stats: Geo Replication Stats
:vartype geo_replication_stats:
~azure.mgmt.storage.v2018_07_01.models.GeoReplicationStats
:ivar failover_in_progress: If the failover is in progress, the value will
be true, otherwise, it will be null.
:vartype failover_in_progress: bool
Expand All @@ -130,6 +133,7 @@ class StorageAccount(TrackedResource):
'encryption': {'readonly': True},
'access_tier': {'readonly': True},
'network_rule_set': {'readonly': True},
'geo_replication_stats': {'readonly': True},
'failover_in_progress': {'readonly': True},
}

Expand Down Expand Up @@ -158,6 +162,7 @@ class StorageAccount(TrackedResource):
'enable_https_traffic_only': {'key': 'properties.supportsHttpsTrafficOnly', 'type': 'bool'},
'network_rule_set': {'key': 'properties.networkAcls', 'type': 'NetworkRuleSet'},
'is_hns_enabled': {'key': 'properties.isHnsEnabled', 'type': 'bool'},
'geo_replication_stats': {'key': 'properties.geoReplicationStats', 'type': 'GeoReplicationStats'},
'failover_in_progress': {'key': 'properties.failoverInProgress', 'type': 'bool'},
}

Expand All @@ -182,4 +187,5 @@ def __init__(self, *, location: str, tags=None, identity=None, enable_azure_file
self.enable_https_traffic_only = enable_https_traffic_only
self.network_rule_set = None
self.is_hns_enabled = is_hns_enabled
self.geo_replication_stats = None
self.failover_in_progress = None
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,13 @@ class AccessTier(str, Enum):
cool = "Cool"


class GeoReplicationStatus(str, Enum):

live = "Live"
bootstrap = "Bootstrap"
unavailable = "Unavailable"


class ProvisioningState(str, Enum):

creating = "Creating"
Expand Down Expand Up @@ -198,3 +205,8 @@ class ImmutabilityPolicyUpdateType(str, Enum):
put = "put"
lock = "lock"
extend = "extend"


class StorageAccountExpand(str, Enum):

geo_replication_stats = "geoReplicationStats"
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ def delete(
delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}'}

def get_properties(
self, resource_group_name, account_name, custom_headers=None, raw=False, **operation_config):
self, resource_group_name, account_name, expand=None, custom_headers=None, raw=False, **operation_config):
"""Returns the properties for the specified storage account including but
not limited to name, SKU name, location, and account status. The
ListKeys operation should be used to retrieve storage keys.
Expand All @@ -283,6 +283,12 @@ def get_properties(
specified resource group. Storage account names must be between 3 and
24 characters in length and use numbers and lower-case letters only.
:type account_name: str
:param expand: May be used to expand the properties within account's
properties. By default, data is not included when fecthing properties.
Currently we only support geoReplicationStats. Possible values
include: 'geoReplicationStats'
:type expand: str or
~azure.mgmt.storage.v2018_07_01.models.StorageAccountExpand
:param dict custom_headers: headers that will be added to the request
:param bool raw: returns the direct response alongside the
deserialized response
Expand All @@ -305,6 +311,8 @@ def get_properties(
# Construct parameters
query_parameters = {}
query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str', min_length=1)
if expand is not None:
query_parameters['$expand'] = self._serialize.query("expand", expand, 'StorageAccountExpand')

# Construct headers
header_parameters = {}
Expand Down