上次打包了阿里的云服务,刚发现更新了,很久没更新之后终于更新了,更新日记如下,于是,也更新了此包。未来阿里应该在此方面会比较正式一点,也没有多大必要再更新了,于是修改了接口与其保持一致。
ChangeHistory =============================================================== 0.3.2 - 2013-10-20 * 修复osscmd的uploadfromdir命令中,在中文目录下,上传的object名字被截断的问题。 * 修复oss_util.py中DEBUG被设置成True的情况下无法打印log的问题。 * oss_api.py中增加了设置每次上传和下载大小的接口。 * osscmd增加了--debug=true来打印日志。 * oss_api.py中增加了上传失败时候的重试,最大重试100次。 0.3.1 - 2013-08-02 * 支持跳转。 * 给oss_api.py部分函数增加说明。 0.1.3 - 2013-07-12 * 支持multipart相关操作,osscmd增加multipart相关的接口。 osscmd支持本地目录上传。 osscmd支持将bucket的某一个prefix的object下载到本地的目录。 0.1.0 - 2011-11-15 * 第一次操作支持基本的创建,删除和显示bucket。 支持创建,删除和显示object。
补充下阿里OSS SDK的steup.py缺少的东西。
scripts=[ 'oss/osscmd.py', ],
#!/usr/bin/env python try: from setuptools import setup except ImportError: from distutils.core import setup import os import sys import oss.pkg_info if float("%d.%d" % sys.version_info[:2]) < 2.5 or float("%d.%d" % sys.version_info[:2]) >= 3.0: sys.stderr.write("Your Python version %d.%d.%d is not supported.\n" % sys.version_info[:3]) sys.stderr.write("osscmd requires Python between 2.4 and 3.0.\n") sys.exit(1) source_dir_list = [] package_list = [] data_file_dict = {} data_file_list = [] for dir in os.listdir(os.getcwd()): if os.path.exists(os.path.join(dir, '__init__.py')): package_list.append(dir) source_dir_list.append(dir) for source_dir in source_dir_list: for rootDir, dirs, files in os.walk(source_dir): for dir in dirs: dir = os.path.join(rootDir, dir) if os.path.exists(os.path.join(dir, '__init__.py')): package_list.append(dir.replace(os.sep, '.')) for file in files: file = os.path.join(rootDir, file) if not file.endswith('.py') and not file.endswith('.pyc') and '.svn' not in file: if rootDir not in data_file_dict.keys(): data_file_dict[rootDir] = [file] else: data_file_dict[rootDir].append(file) for k, v in data_file_dict.items(): data_file_list.append((k, v)) setup( name = oss.pkg_info.package, version = oss.pkg_info.version, packages=package_list, data_files=data_file_list, author = "Phodal.Gmszone", author_email = "[email protected]", url = oss.pkg_info.url, license = oss.pkg_info.license, description = oss.pkg_info.short_description, long_description = oss.pkg_info.long_description, scripts=[ 'oss/osscmd.py', ], )
easy_install alioss或者
pip install alioss
运行
用来配置访问OSS所需要的认证码"osscmd.py config --id=YOUR_ID --key=YOUR_KEY"
代码可见: https://github.com/gmszone/aliossosscmd.py getallbucket"列出创建的bucket.
这里就不再详细说明了。