Diff of /.dev/upload_modelzoo.py [000000] .. [4e96d3]

Switch to unified view

a b/.dev/upload_modelzoo.py
1
# Copyright (c) OpenMMLab. All rights reserved.
2
import argparse
3
import os
4
import os.path as osp
5
6
import oss2
7
8
ACCESS_KEY_ID = os.getenv('OSS_ACCESS_KEY_ID', None)
9
ACCESS_KEY_SECRET = os.getenv('OSS_ACCESS_KEY_SECRET', None)
10
BUCKET_NAME = 'openmmlab'
11
ENDPOINT = 'https://oss-accelerate.aliyuncs.com'
12
13
14
def parse_args():
15
    parser = argparse.ArgumentParser(description='Upload models to OSS')
16
    parser.add_argument('model_zoo', type=str, help='model_zoo input')
17
    parser.add_argument(
18
        '--dst-folder',
19
        type=str,
20
        default='mmsegmentation/v0.5',
21
        help='destination folder')
22
    args = parser.parse_args()
23
    return args
24
25
26
def main():
27
    args = parse_args()
28
    model_zoo = args.model_zoo
29
    dst_folder = args.dst_folder
30
    bucket = oss2.Bucket(
31
        oss2.Auth(ACCESS_KEY_ID, ACCESS_KEY_SECRET), ENDPOINT, BUCKET_NAME)
32
33
    for root, dirs, files in os.walk(model_zoo):
34
        for file in files:
35
            file_path = osp.relpath(osp.join(root, file), model_zoo)
36
            print(f'Uploading {file_path}')
37
38
            oss2.resumable_upload(bucket, osp.join(dst_folder, file_path),
39
                                  osp.join(model_zoo, file_path))
40
            bucket.put_object_acl(
41
                osp.join(dst_folder, file_path), oss2.OBJECT_ACL_PUBLIC_READ)
42
43
44
if __name__ == '__main__':
45
    main()