Skip to content

Commit 9f6d4e7

Browse files
author
libertyzhu
committed
fix disaster_recovery_demo
1 parent 50cf170 commit 9f6d4e7

File tree

1 file changed

+9
-21
lines changed

1 file changed

+9
-21
lines changed

demo/disaster_recovery_demo.py

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
# -*- coding=utf-8
2-
#
3-
# ref to @shezhangjun
4-
# https://github.com/shezhangjun/TencentCOS/blob/master/Python_SDK/COS_Disaster_Recovery/DisasterRecovery.py
5-
#
2+
63
from qcloud_cos import CosConfig
74
from qcloud_cos import CosS3Client
85
import sys
@@ -12,10 +9,9 @@
129
# logging.basicConfig(level=logging.INFO, stream=sys.stdout)
1310

1411

15-
def _recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix,
16-
dst_region, dst_secret_id, dst_secret_key, dst_bucket):
12+
def _recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix):
13+
1714
src_client = CosS3Client(CosConfig(Region=src_region, SecretId=src_secret_id, SecretKey=src_secret_key))
18-
dst_client = CosS3Client(CosConfig(Region=dst_region, SecretId=dst_secret_id, SecretKey=dst_secret_key))
1915

2016
key_marker = ''
2117
versionId_marker = ''
@@ -45,8 +41,8 @@ def _recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix,
4541
if key in delete_marker_keys and not key in recovered_keys:
4642
print('recover from key:{key}, versionId:{versionId}'.format(key=key, versionId=versionId))
4743
try:
48-
dst_client.copy(
49-
Bucket=dst_bucket,
44+
src_client.copy(
45+
Bucket=src_bucket,
5046
Key=key,
5147
CopySource={
5248
'Bucket': src_bucket,
@@ -56,8 +52,8 @@ def _recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix,
5652
}
5753
)
5854
recovered_keys.append(key)
59-
print("success recover object: {src_bucket}/{key}({versionId}) => {dst_bucket}/{key}".format(
60-
src_bucket=src_bucket, key=key, versionId=versionId, dst_bucket=dst_bucket))
55+
print("success recover object: {key}(versionId={versionId}) => {key}".format(
56+
src_bucket=src_bucket, key=key, versionId=versionId))
6157
except Exception as e:
6258
print(e)
6359
pass
@@ -71,22 +67,14 @@ def _recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix,
7167

7268
if __name__ == '__main__':
7369
# 使用场景:
74-
# 根据源桶src_bucket的删除标记从历史版本里把文件恢复到dst_bucket
75-
# src_bucket和dst_bucket可以一致, 即原地恢复
70+
# 根据源桶src_bucket的删除标记从历史版本里把文件恢复出来
7671

7772
# 源桶信息
7873
src_region = 'ap-guangzhou' # 源地域
7974
src_secret_id = '' # 源桶SecretID
8075
src_secret_key = '' # 源桶SecretKey
8176
src_bucket = 'bucket-1200000000' # 源桶名
8277

83-
# 目标桶信息
84-
dst_region = 'ap-guangzhou' # 目标桶地域
85-
dst_secret_id = '' # 目标桶SecretID
86-
dst_secret_key = '' # 目标桶SecretKey
87-
dst_bucket = 'bucket-1250000000' # 目标桶名
88-
8978
prefix = '' # 设置要恢复的对象前缀
9079

91-
_recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix,
92-
dst_region, dst_secret_id, dst_secret_key, dst_bucket)
80+
_recover_main(src_region, src_secret_id, src_secret_key, src_bucket, prefix)

0 commit comments

Comments
 (0)