[Blob][RehydratePriority]Enable Rehydrate Priority for Copy/SetTier
This commit is contained in:
Родитель
10c687ba36
Коммит
64c61f3dd9
|
@ -3202,7 +3202,8 @@ class BaseBlobService(StorageClient):
|
|||
source_lease_id=None, timeout=None,
|
||||
incremental_copy=False,
|
||||
requires_sync=None,
|
||||
standard_blob_tier=None):
|
||||
standard_blob_tier=None,
|
||||
rehydrate_priority=None):
|
||||
'''
|
||||
See copy_blob for more details. This helper method
|
||||
allows for standard copies as well as incremental copies which are only supported for page blobs and sync
|
||||
|
@ -3258,7 +3259,8 @@ class BaseBlobService(StorageClient):
|
|||
'x-ms-lease-id': _to_str(destination_lease_id),
|
||||
'x-ms-source-lease-id': _to_str(source_lease_id),
|
||||
'x-ms-access-tier': _to_str(premium_page_blob_tier) or _to_str(standard_blob_tier),
|
||||
'x-ms-requires-sync': _to_str(requires_sync)
|
||||
'x-ms-requires-sync': _to_str(requires_sync),
|
||||
'x-ms-rehydrate-priority': _to_str(rehydrate_priority)
|
||||
}
|
||||
|
||||
_add_metadata_headers(metadata, request)
|
||||
|
|
|
@ -232,7 +232,7 @@ class BlockBlobService(BaseBlobService):
|
|||
if the resource has been modified since the specified time.
|
||||
:param datetime if_unmodified_since:
|
||||
A DateTime value. Azure expects the date value passed in to be UTC.
|
||||
If timezone is included, any non-UTC datetimes will be convFerted to UTC.
|
||||
If timezone is included, any non-UTC datetimes will be converted to UTC.
|
||||
If a date is passed in without timezone info, it is assumed to be UTC.
|
||||
Specify this header to perform the operation only if
|
||||
the resource has not been modified since the specified date/time.
|
||||
|
@ -885,7 +885,7 @@ class BlockBlobService(BaseBlobService):
|
|||
standard_blob_tier=standard_blob_tier)
|
||||
|
||||
def set_standard_blob_tier(
|
||||
self, container_name, blob_name, standard_blob_tier, timeout=None):
|
||||
self, container_name, blob_name, standard_blob_tier, timeout=None, rehydrate_priority=None):
|
||||
'''
|
||||
Sets the block blob tiers on the blob. This API is only supported for block blobs on standard storage accounts.
|
||||
|
||||
|
@ -900,9 +900,11 @@ class BlockBlobService(BaseBlobService):
|
|||
The timeout parameter is expressed in seconds. This method may make
|
||||
multiple calls to the Azure service and the timeout will apply to
|
||||
each call individually.
|
||||
:param :class:`~azure.storage.blob.models.RehydratePriority` rehydrate_priority:
|
||||
Indicates the priority with which to rehydrate an archived blob
|
||||
'''
|
||||
request = self._get_basic_set_blob_tier_http_request(container_name, blob_name, standard_blob_tier,
|
||||
timeout=timeout)
|
||||
timeout=timeout, rehydrate_priority=rehydrate_priority)
|
||||
|
||||
self._perform_request(request)
|
||||
|
||||
|
@ -960,9 +962,11 @@ class BlockBlobService(BaseBlobService):
|
|||
:return: HTTPRequest parsed from batch set tier sub-request
|
||||
:rtype: :class:`~azure.storage.common._http.HTTPRequest`
|
||||
"""
|
||||
request = self._get_basic_set_blob_tier_http_request(batch_set_blob_tier_sub_request.container_name,
|
||||
batch_set_blob_tier_sub_request.blob_name,
|
||||
batch_set_blob_tier_sub_request.standard_blob_tier)
|
||||
request = self._get_basic_set_blob_tier_http_request(
|
||||
batch_set_blob_tier_sub_request.container_name,
|
||||
batch_set_blob_tier_sub_request.blob_name,
|
||||
batch_set_blob_tier_sub_request.standard_blob_tier,
|
||||
rehydrate_priority=batch_set_blob_tier_sub_request.rehydrate_priority)
|
||||
request.headers.update({
|
||||
'Content-ID': _int_to_str(content_id),
|
||||
'Content-Length': _int_to_str(0),
|
||||
|
@ -979,7 +983,8 @@ class BlockBlobService(BaseBlobService):
|
|||
|
||||
return request
|
||||
|
||||
def _get_basic_set_blob_tier_http_request(self, container_name, blob_name, standard_blob_tier, timeout=None):
|
||||
def _get_basic_set_blob_tier_http_request(self, container_name, blob_name, standard_blob_tier, timeout=None,
|
||||
rehydrate_priority=None):
|
||||
"""
|
||||
Construct a basic HTTPRequest instance for set standard blob tier
|
||||
|
||||
|
@ -1001,7 +1006,8 @@ class BlockBlobService(BaseBlobService):
|
|||
'timeout': _int_to_str(timeout),
|
||||
}
|
||||
request.headers = {
|
||||
'x-ms-access-tier': _to_str(standard_blob_tier)
|
||||
'x-ms-access-tier': _to_str(standard_blob_tier),
|
||||
'x-ms-rehydrate-priority': _to_str(rehydrate_priority)
|
||||
}
|
||||
return request
|
||||
|
||||
|
@ -1011,7 +1017,8 @@ class BlockBlobService(BaseBlobService):
|
|||
source_if_none_match=None, destination_if_modified_since=None,
|
||||
destination_if_unmodified_since=None, destination_if_match=None,
|
||||
destination_if_none_match=None, destination_lease_id=None,
|
||||
source_lease_id=None, timeout=None, requires_sync=None, standard_blob_tier=None):
|
||||
source_lease_id=None, timeout=None, requires_sync=None, standard_blob_tier=None,
|
||||
rehydrate_priority=None):
|
||||
|
||||
'''
|
||||
Copies a blob. This operation returns a copy operation
|
||||
|
@ -1118,6 +1125,8 @@ class BlockBlobService(BaseBlobService):
|
|||
:param StandardBlobTier standard_blob_tier:
|
||||
A standard blob tier value to set the blob to. For this version of the library,
|
||||
this is only applicable to block blobs on standard storage accounts.
|
||||
:param :class:`~azure.storage.blob.models.RehydratePriority` rehydrate_priority:
|
||||
Indicates the priority with which to rehydrate an archived blob
|
||||
:return: Copy operation properties such as status, source, and ID.
|
||||
:rtype: :class:`~azure.storage.blob.models.CopyProperties`
|
||||
'''
|
||||
|
@ -1137,7 +1146,8 @@ class BlockBlobService(BaseBlobService):
|
|||
source_lease_id=source_lease_id, timeout=timeout,
|
||||
incremental_copy=False,
|
||||
requires_sync=requires_sync,
|
||||
standard_blob_tier=standard_blob_tier)
|
||||
standard_blob_tier=standard_blob_tier,
|
||||
rehydrate_priority=rehydrate_priority)
|
||||
|
||||
# -----Helper methods------------------------------------
|
||||
def _put_blob(self, container_name, blob_name, blob, content_settings=None,
|
||||
|
|
|
@ -776,6 +776,18 @@ class StandardBlobTier(object):
|
|||
''' Hot '''
|
||||
|
||||
|
||||
class RehydratePriority(object):
|
||||
"""
|
||||
Indicates the priority with which to rehydrate an archived blob
|
||||
"""
|
||||
|
||||
Standard = 'Standard'
|
||||
''' The rehydrate priority is standard. '''
|
||||
|
||||
High = 'High'
|
||||
''' The rehydrate priority is high. '''
|
||||
|
||||
|
||||
class AccountInformation(object):
|
||||
"""
|
||||
Holds information related to the storage account.
|
||||
|
@ -848,7 +860,7 @@ class BatchDeleteSubRequest(object):
|
|||
If a date is passed in without timezone info, it is assumed to be UTC.
|
||||
Specify this header to perform the operation only
|
||||
if the resource has been modified since the specified time.
|
||||
:ivardatetime if_unmodified_since:
|
||||
:ivar datetime if_unmodified_since:
|
||||
A DateTime value. Azure expects the date value passed in to be UTC.
|
||||
If timezone is included, any non-UTC datetimes will be converted to UTC.
|
||||
If a date is passed in without timezone info, it is assumed to be UTC.
|
||||
|
@ -913,8 +925,9 @@ class BatchSetBlobTierSubRequest(object):
|
|||
A standard blob tier value to set the blob to. For this version of the library,
|
||||
this is only applicable to block blobs on standard storage accounts.
|
||||
"""
|
||||
def __init__(self, container_name, blob_name, standard_blob_tier):
|
||||
def __init__(self, container_name, blob_name, standard_blob_tier, rehydrate_priority=None):
|
||||
self.container_name = container_name
|
||||
self.blob_name = blob_name
|
||||
self.standard_blob_tier = standard_blob_tier
|
||||
self.rehydrate_priority = rehydrate_priority
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ import unittest
|
|||
from azure.storage.blob import (
|
||||
BlockBlobService,
|
||||
)
|
||||
from azure.storage.blob.models import StandardBlobTier, BatchSetBlobTierSubRequest
|
||||
from azure.storage.blob.models import StandardBlobTier, BatchSetBlobTierSubRequest, RehydratePriority
|
||||
from tests.testcase import (
|
||||
StorageTestCase,
|
||||
record,
|
||||
|
@ -121,6 +121,24 @@ class BlobStorageAccountTest(StorageTestCase):
|
|||
with self.assertRaises(ValueError):
|
||||
self.bs.batch_set_standard_blob_tier(batch_set_standard_blob_tier_requests)
|
||||
|
||||
@record
|
||||
def test_set_standard_blob_tier_with_rehydrate_priority(self):
|
||||
# Arrange
|
||||
self.bs.create_container(self.container_name)
|
||||
blob_name = self._create_blob()
|
||||
blob_tier = StandardBlobTier.Archive
|
||||
rehydrate_tier = StandardBlobTier.Cool
|
||||
rehydrate_priority = RehydratePriority.Standard
|
||||
|
||||
# Act
|
||||
self.bs.set_standard_blob_tier(self.container_name, blob_name, blob_tier,
|
||||
rehydrate_priority=rehydrate_priority)
|
||||
self.bs.set_standard_blob_tier(self.container_name, blob_name, rehydrate_tier)
|
||||
blob_ref = self.bs.get_blob_properties(self.container_name, blob_name)
|
||||
|
||||
# Assert
|
||||
self.assertEquals('rehydrate-pending-to-cool', blob_ref.properties.rehydration_status)
|
||||
|
||||
@record
|
||||
def test_batch_set_standard_blob_tier_for_one_blob(self):
|
||||
# Arrange
|
||||
|
@ -151,6 +169,7 @@ class BlobStorageAccountTest(StorageTestCase):
|
|||
# Arrange
|
||||
self.bs.create_container(self.container_name)
|
||||
tiers = [StandardBlobTier.Archive, StandardBlobTier.Cool, StandardBlobTier.Hot]
|
||||
rehydrate_priority = [RehydratePriority.High, RehydratePriority.Standard, RehydratePriority.High]
|
||||
blob_names = list()
|
||||
|
||||
batch_set_blob_tier_request = []
|
||||
|
@ -159,7 +178,7 @@ class BlobStorageAccountTest(StorageTestCase):
|
|||
data = b'hello world'
|
||||
self.bs.create_blob_from_bytes(self.container_name, blob_name, data)
|
||||
|
||||
sub_request = BatchSetBlobTierSubRequest(self.container_name, blob_name, tiers[i])
|
||||
sub_request = BatchSetBlobTierSubRequest(self.container_name, blob_name, tiers[i], rehydrate_priority[i])
|
||||
batch_set_blob_tier_request.append(sub_request)
|
||||
blob_names.append(blob_name)
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ from azure.common import (
|
|||
AzureException,
|
||||
)
|
||||
|
||||
from azure.storage.blob.models import BatchDeleteSubRequest
|
||||
from azure.storage.blob.models import BatchDeleteSubRequest, RehydratePriority
|
||||
from azure.storage.blob.models import StandardBlobTier
|
||||
from azure.storage.common import (
|
||||
AccessPolicy,
|
||||
|
@ -1028,6 +1028,31 @@ class StorageCommonBlobTest(StorageTestCase):
|
|||
self.assertIsNotNone(copy.id)
|
||||
self.assertEqual(copy_blob_properties.blob_tier, blob_tier)
|
||||
|
||||
@record
|
||||
def test_copy_blob_with_rehydrate_priority(self):
|
||||
# Arrange
|
||||
blob_name = self._create_block_blob()
|
||||
|
||||
# Act
|
||||
source_blob = '/{0}/{1}/{2}'.format(self.settings.STORAGE_ACCOUNT_NAME,
|
||||
self.container_name,
|
||||
blob_name)
|
||||
blob_tier = StandardBlobTier.Archive
|
||||
rehydrate_priority = RehydratePriority.High
|
||||
copy = self.bs.copy_blob(self.container_name, 'blob1copy', source_blob,
|
||||
standard_blob_tier=blob_tier,
|
||||
rehydrate_priority=rehydrate_priority)
|
||||
copy_blob_properties = self.bs.get_blob_properties(self.container_name, 'blob1copy').properties
|
||||
self.bs.set_standard_blob_tier(self.container_name, 'blob1copy', StandardBlobTier.Hot)
|
||||
second_resp = self.bs.get_blob_properties(self.container_name, 'blob1copy').properties
|
||||
|
||||
# Assert
|
||||
self.assertIsNotNone(copy)
|
||||
self.assertEqual(copy.status, 'success')
|
||||
self.assertIsNotNone(copy.id)
|
||||
self.assertEqual(copy_blob_properties.blob_tier, blob_tier)
|
||||
self.assertEqual(second_resp.rehydration_status, 'rehydrate-pending-to-hot')
|
||||
|
||||
@record
|
||||
def test_copy_blob_async_private_blob(self):
|
||||
# Arrange
|
||||
|
|
|
@ -403,4 +403,410 @@ interactions:
|
|||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 09704f40-99f8-11e9-8b0b-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1?restype=container
|
||||
response:
|
||||
body:
|
||||
string: "\uFEFF<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>ContainerAlreadyExists</Code><Message>The
|
||||
specified container already exists.\nRequestId:3c836e4d-601e-0010-6404-2e5753000000\nTime:2019-06-28T22:57:00.3811749Z</Message></Error>"
|
||||
headers:
|
||||
Content-Length:
|
||||
- '230'
|
||||
Content-Type:
|
||||
- application/xml
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:56:59 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-error-code:
|
||||
- ContainerAlreadyExists
|
||||
x-ms-request-id:
|
||||
- 3c836e4d-601e-0010-6404-2e5753000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 409
|
||||
message: The specified container already exists.
|
||||
- request:
|
||||
body: hello world
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '11'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-client-request-id:
|
||||
- 09a7a1ca-99f8-11e9-ba0d-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/0
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:56:59 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEDDFC8B4"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 3c836e52-601e-0010-6704-2e5753000000
|
||||
x-ms-request-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 201
|
||||
message: Created
|
||||
- request:
|
||||
body: hello world
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '11'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-client-request-id:
|
||||
- 09ba3208-99f8-11e9-8fa2-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/1
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEDF2B8CC"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 3c836e56-601e-0010-6b04-2e5753000000
|
||||
x-ms-request-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 201
|
||||
message: Created
|
||||
- request:
|
||||
body: hello world
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '11'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-client-request-id:
|
||||
- 09c8ec76-99f8-11e9-bf25-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/2
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEE0385AD"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 3c836e5a-601e-0010-6f04-2e5753000000
|
||||
x-ms-request-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 201
|
||||
message: Created
|
||||
- request:
|
||||
body: "--batch_09da2e1e-99f8-11e9-a5f7-001a7dda7113\r\nContent-Type: application/http\r\nContent-ID:
|
||||
0\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT /utcontainer8ddd16e1/0?comp=tier
|
||||
HTTP/1.1\r\nx-ms-access-tier: Archive\r\nx-ms-rehydrate-priority: High\r\nContent-Length:
|
||||
0\r\nUser-Agent: Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)\r\nx-ms-date:
|
||||
Fri, 28 Jun 2019 22:57:00 GMT\r\nAuthorization: SharedKey blobstoragename:cFv2LVkfwSPeoGx6hfR6rzb/jeqnRdinrAm4i2k1UEs=\r\n\r\n\r\n--batch_09da2e1e-99f8-11e9-a5f7-001a7dda7113\r\nContent-Type:
|
||||
application/http\r\nContent-ID: 1\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT
|
||||
/utcontainer8ddd16e1/1?comp=tier HTTP/1.1\r\nx-ms-access-tier: Cool\r\nx-ms-rehydrate-priority:
|
||||
Standard\r\nContent-Length: 0\r\nUser-Agent: Azure-Storage/2.0.0-2.0.1 (Python
|
||||
CPython 3.7.3; Windows 10)\r\nx-ms-date: Fri, 28 Jun 2019 22:57:00 GMT\r\nAuthorization:
|
||||
SharedKey blobstoragename:RMmZY6amyYd1rJOH2ofpHOms0ZbHI7M1F5O0PnH6LRw=\r\n\r\n\r\n--batch_09da2e1e-99f8-11e9-a5f7-001a7dda7113\r\nContent-Type:
|
||||
application/http\r\nContent-ID: 2\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT
|
||||
/utcontainer8ddd16e1/2?comp=tier HTTP/1.1\r\nx-ms-access-tier: Hot\r\nx-ms-rehydrate-priority:
|
||||
High\r\nContent-Length: 0\r\nUser-Agent: Azure-Storage/2.0.0-2.0.1 (Python CPython
|
||||
3.7.3; Windows 10)\r\nx-ms-date: Fri, 28 Jun 2019 22:57:00 GMT\r\nAuthorization:
|
||||
SharedKey blobstoragename:YwGJLZfA2g4JwhPXXKjy0eNtctwi7anztWgWgEjQf5k=\r\n\r\n\r\n--batch_09da2e1e-99f8-11e9-a5f7-001a7dda7113--\r\n"
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '1434'
|
||||
Content-Type:
|
||||
- multipart/mixed; boundary=batch_09da2e1e-99f8-11e9-a5f7-001a7dda7113
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 09da550a-99f8-11e9-9671-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: POST
|
||||
uri: https://blobstoragename.blob.core.windows.net/?comp=batch
|
||||
response:
|
||||
body:
|
||||
string: "--batchresponse_e2fa2772-5a1b-47c2-a6a8-d4158ffd6d2e\r\nContent-Type:
|
||||
application/http\r\nContent-ID: 0\r\n\r\nHTTP/1.1 200 OK\r\nx-ms-request-id:
|
||||
3c836e5e-601e-0010-7304-2e57531e80a5\r\nx-ms-version: 2018-11-09\r\nServer:
|
||||
Windows-Azure-Blob/1.0\r\n\r\n--batchresponse_e2fa2772-5a1b-47c2-a6a8-d4158ffd6d2e\r\nContent-Type:
|
||||
application/http\r\nContent-ID: 1\r\n\r\nHTTP/1.1 200 OK\r\nx-ms-request-id:
|
||||
3c836e5e-601e-0010-7304-2e57531e80a7\r\nx-ms-version: 2018-11-09\r\nServer:
|
||||
Windows-Azure-Blob/1.0\r\n\r\n--batchresponse_e2fa2772-5a1b-47c2-a6a8-d4158ffd6d2e\r\nContent-Type:
|
||||
application/http\r\nContent-ID: 2\r\n\r\nHTTP/1.1 200 OK\r\nx-ms-request-id:
|
||||
3c836e5e-601e-0010-7304-2e57531e80a8\r\nx-ms-version: 2018-11-09\r\nServer:
|
||||
Windows-Azure-Blob/1.0\r\n\r\n--batchresponse_e2fa2772-5a1b-47c2-a6a8-d4158ffd6d2e--"
|
||||
headers:
|
||||
Content-Type:
|
||||
- multipart/mixed; boundary=batchresponse_e2fa2772-5a1b-47c2-a6a8-d4158ffd6d2e
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
Transfer-Encoding:
|
||||
- chunked
|
||||
x-ms-request-id:
|
||||
- 3c836e5e-601e-0010-7304-2e5753000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 202
|
||||
message: Accepted
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 09ec76b0-99f8-11e9-b258-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/0
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '11'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEDDFC8B4"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-access-tier-change-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-creation-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- 3c836e61-601e-0010-7604-2e5753000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 09fc0278-99f8-11e9-9fcf-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/1
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '11'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEDF2B8CC"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-access-tier:
|
||||
- Cool
|
||||
x-ms-access-tier-change-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-creation-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- 3c836e64-601e-0010-7904-2e5753000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 0a0d4922-99f8-11e9-921d-001a7dda7113
|
||||
x-ms-date:
|
||||
- Fri, 28 Jun 2019 22:57:01 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainer8ddd16e1/2
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '11'
|
||||
Content-MD5:
|
||||
- XrY7u+Ae7tCTyyK7j1rNww==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
ETag:
|
||||
- '"0x8D6FC1BEE0385AD"'
|
||||
Last-Modified:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-access-tier:
|
||||
- Hot
|
||||
x-ms-access-tier-change-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-creation-time:
|
||||
- Fri, 28 Jun 2019 22:57:00 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- 3c836e6a-601e-0010-7e04-2e5753000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
version: 1
|
||||
|
|
|
@ -0,0 +1,219 @@
|
|||
interactions:
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 8d6a66d4-96d0-11e9-a3eb-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainerd3161fdc?restype=container
|
||||
response:
|
||||
body:
|
||||
string: "\uFEFF<?xml version=\"1.0\" encoding=\"utf-8\"?><Error><Code>ContainerAlreadyExists</Code><Message>The
|
||||
specified container already exists.\nRequestId:93b1267e-701e-0023-6cdd-2a08f8000000\nTime:2019-06-24T22:36:48.4671732Z</Message></Error>"
|
||||
headers:
|
||||
Content-Length:
|
||||
- '230'
|
||||
Content-Type:
|
||||
- application/xml
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-error-code:
|
||||
- ContainerAlreadyExists
|
||||
x-ms-request-id:
|
||||
- 93b1267e-701e-0023-6cdd-2a08f8000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 409
|
||||
message: The specified container already exists.
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-client-request-id:
|
||||
- 8da3662c-96d0-11e9-9a77-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainerd3161fdc/blobd3161fdc
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- 1B2M2Y8AsgTpgAmY7PhCfg==
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8F471DD3972"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 93b12683-701e-0023-6fdd-2a08f8000000
|
||||
x-ms-request-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 201
|
||||
message: Created
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-client-request-id:
|
||||
- 8db1ad22-96d0-11e9-9c4c-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-rehydrate-priority:
|
||||
- Standard
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainerd3161fdc/blobd3161fdc?comp=tier
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 93b12686-701e-0023-71dd-2a08f8000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-access-tier:
|
||||
- Cool
|
||||
x-ms-client-request-id:
|
||||
- 8dc0e440-96d0-11e9-8ae6-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainerd3161fdc/blobd3161fdc?comp=tier
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- 93b12689-701e-0023-74dd-2a08f8000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 202
|
||||
message: Accepted
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- 8dd114e8-96d0-11e9-a91f-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://blobstoragename.blob.core.windows.net/utcontainerd3161fdc/blobd3161fdc
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- 1B2M2Y8AsgTpgAmY7PhCfg==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8F471DD3972"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-access-tier-change-time:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-archive-status:
|
||||
- rehydrate-pending-to-cool
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-creation-time:
|
||||
- Mon, 24 Jun 2019 22:36:48 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- 93b1268d-701e-0023-77dd-2a08f8000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
version: 1
|
|
@ -0,0 +1,290 @@
|
|||
interactions:
|
||||
- request:
|
||||
body: !!binary |
|
||||
7jD4T7GTBqoLSlMaiq4VKCo1GvmlCqU0dz2vaz6V7Adigje+fHJJNjtIHqvWAKdlALg1hIWf+npm
|
||||
Sn5oP0SkhjvvOlCDKUtkNpmDB13bLddUAx355ve2wVBmhVEs7WSXgaFsS8CTc2NKJDNEfrUSzPh/
|
||||
5omxUnkPVZlVREMccwVwA6n3R8L4I9WieIzFoSyvb2ECHvtsaz3WLKhuF8g3uAhthy8cFCqrU0vi
|
||||
CIpvbQeb2XbWwLj6EOu5M1xh9NgQ/G0tpMG0wHtV3PLU6TOqAbYRmzTtHHHBXBfN/BTVe6ekmVbH
|
||||
NNho2MkDNNT3JkpNZDX6VXkeg8xx9LuzevzVenb50R/dtMKzH0S/CZWLrIBniCE28Zqo37AK0+AJ
|
||||
rTTAJHAyv4KhcNypyoFDLEpY5erfoTs0tV5rYIbweEdNgC37D2Xv3pPG+q9fhRNa0wJraMxxCFZ/
|
||||
o6UeZfx9gPofmMI0qdXjzNGk8YsXN8mhazQOaRDp6OliP6jh8Q5NhC/fnRo2nk2YbtypYzA4u+p+
|
||||
nx52cDIaBdh3ybuRJ36hjKPJcngCfwniekSQZG2ZBVvb40KAhhvCbrItk1fXt8Kyhyb7E9d9Dz9X
|
||||
MJdC3a5Jxrq/yEvVF2BVhwq5dD9R62KrsL/EMgMMsImvd8nnIx0fuUhpzBKjZymFp5j20pe+zWtE
|
||||
gR43jAHc6or5Ebw9yR/c386VCpzkMtg6UgLognWxLmbj3A3XhkmQcFQk5OnmAsH25SLpcCCWMcRO
|
||||
0/sSuXKDNM2J5gQdCvxymhkR/RE7x6ax86nuQGN7RyDSfQHP6rGSkLvekJUc1zkgik6BQYsYjv1C
|
||||
14CHJdUrefxwN7e4DyiTZBsKWkGfgVhQ2da/Fu9aXUPzBUXDfqY+wee+RsN8GtCb5PO/R6fXyeSW
|
||||
2q83eDA9di330kKKaiNLEIuXl5/j7z/mrXKeLJWjJj7511be/s12nrKRI3ExTB1iAFwjAkL3SqAj
|
||||
WsZX0D6z2MrlJ42f8VwD/nOFVJKy1ELvaZ4PZdWP0jvFc0nJcWrqPRQ6um6zrJy3CVMlME8GAbb1
|
||||
Zd4hM1w9yWOrYucbgaoKjJn0rpS6NM6WeEdBzx+0keQMvjwwrnEJ6Hskk7PH6PEgadzIulV3pqF2
|
||||
d48Gw6uVxD2xtPBfqcH+nuT1Tyk5ZM/jLej5Lq42bSgt5757dZ3tSV3dWu+UAboy/BaMhrAynoP8
|
||||
Jij0lDH3FKPeiBty51hvOIA28c4vKRO3R/br6Ve0CYCZw4gWdzfGmtgSQidhG6RvgHTeN26Lf5zc
|
||||
ZZbpuj19FE9GfzNEscORnY6Wnei2Fei6Nea84hOwTINb70OSHOiK+WUdnwpJecU8I+JS9x3k9w==
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '1024'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-client-request-id:
|
||||
- a77b19e6-96c9-11e9-8a72-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob79ab16d0
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Content-MD5:
|
||||
- plkxPH9S8qpIjJWislFakQ==
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 21:47:24 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8ED8BBB5A4A"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- a6edc8fe-301e-0085-49d6-2a7e29000000
|
||||
x-ms-request-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 201
|
||||
message: Created
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-client-request-id:
|
||||
- a78a3e46-96c9-11e9-9bf2-001a7dda7113
|
||||
x-ms-copy-source:
|
||||
- https://emilydevtest.blob.core.windows.net/utcontainer79ab16d0/blob79ab16d0
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-rehydrate-priority:
|
||||
- High
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob1copy
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8ED8BC08B5A"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-copy-id:
|
||||
- a2cf222e-e7b6-4b04-acdb-42785ce144d9
|
||||
x-ms-copy-status:
|
||||
- success
|
||||
x-ms-request-id:
|
||||
- a6edc911-301e-0085-59d6-2a7e29000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 202
|
||||
message: Accepted
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- a8ff80fa-96c9-11e9-bbf0-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob1copy
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '1024'
|
||||
Content-MD5:
|
||||
- plkxPH9S8qpIjJWislFakQ==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8ED8BC08B5A"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
Vary:
|
||||
- Origin
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-access-tier-change-time:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-copy-completion-time:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-copy-id:
|
||||
- a2cf222e-e7b6-4b04-acdb-42785ce144d9
|
||||
x-ms-copy-progress:
|
||||
- 1024/1024
|
||||
x-ms-copy-source:
|
||||
- https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob79ab16d0
|
||||
x-ms-copy-status:
|
||||
- success
|
||||
x-ms-creation-time:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- a6edcc9a-301e-0085-7fd6-2a7e29000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
Content-Length:
|
||||
- '0'
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-access-tier:
|
||||
- Hot
|
||||
x-ms-client-request-id:
|
||||
- a904194c-96c9-11e9-adcf-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: PUT
|
||||
uri: https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob1copy?comp=tier
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Content-Length:
|
||||
- '0'
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
x-ms-request-id:
|
||||
- a6edcca5-301e-0085-07d6-2a7e29000000
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 202
|
||||
message: Accepted
|
||||
- request:
|
||||
body: null
|
||||
headers:
|
||||
Connection:
|
||||
- keep-alive
|
||||
User-Agent:
|
||||
- Azure-Storage/2.0.0-2.0.1 (Python CPython 3.7.3; Windows 10)
|
||||
x-ms-client-request-id:
|
||||
- a9277e34-96c9-11e9-8047-001a7dda7113
|
||||
x-ms-date:
|
||||
- Mon, 24 Jun 2019 21:47:28 GMT
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
method: HEAD
|
||||
uri: https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob1copy
|
||||
response:
|
||||
body:
|
||||
string: ''
|
||||
headers:
|
||||
Accept-Ranges:
|
||||
- bytes
|
||||
Content-Length:
|
||||
- '1024'
|
||||
Content-MD5:
|
||||
- plkxPH9S8qpIjJWislFakQ==
|
||||
Content-Type:
|
||||
- application/octet-stream
|
||||
Date:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
ETag:
|
||||
- '"0x8D6F8ED8BC08B5A"'
|
||||
Last-Modified:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
Server:
|
||||
- Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
|
||||
Vary:
|
||||
- Origin
|
||||
x-ms-access-tier:
|
||||
- Archive
|
||||
x-ms-access-tier-change-time:
|
||||
- Mon, 24 Jun 2019 21:47:27 GMT
|
||||
x-ms-archive-status:
|
||||
- rehydrate-pending-to-hot
|
||||
x-ms-blob-type:
|
||||
- BlockBlob
|
||||
x-ms-copy-completion-time:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-copy-id:
|
||||
- a2cf222e-e7b6-4b04-acdb-42785ce144d9
|
||||
x-ms-copy-progress:
|
||||
- 1024/1024
|
||||
x-ms-copy-source:
|
||||
- https://storagename.blob.core.windows.net/utcontainer79ab16d0/blob79ab16d0
|
||||
x-ms-copy-status:
|
||||
- success
|
||||
x-ms-creation-time:
|
||||
- Mon, 24 Jun 2019 21:47:25 GMT
|
||||
x-ms-lease-state:
|
||||
- available
|
||||
x-ms-lease-status:
|
||||
- unlocked
|
||||
x-ms-request-id:
|
||||
- a6edcd09-301e-0085-60d6-2a7e29000000
|
||||
x-ms-server-encrypted:
|
||||
- 'true'
|
||||
x-ms-tag-count:
|
||||
- '0'
|
||||
x-ms-version:
|
||||
- '2018-11-09'
|
||||
status:
|
||||
code: 200
|
||||
message: OK
|
||||
version: 1
|
Загрузка…
Ссылка в новой задаче