vospace文件系统的类库

vofs的Python项目详细描述


https://img.shields.io/pypi/v/vofs.svg

vosfs是一个python模块,它允许将vospace服务用作 文件系统。

vosfs的默认安装被调整为访问vospace 由Canadian Advanced Network For Astronomical Research(canfar)提供

vospace是一种用于天文学的分布式云存储服务。

Java内容

使用VOS有两种方法:

  1. 使vospace显示为已装入的文件系统:mountvofs
  2. 在python脚本中使用vosfs模块:import vosfs

对canfar vospace服务的身份验证是使用x509执行的 安全证书、头令牌或用户名/密码对。这个 身份验证系统由CADC组管理服务管理 (GMS)。

检索用于^{tt2}的x509安全证书$ 工具使用Cadcutils附带的CADC GET CERT脚本 包裹。

有关其他信息,请参见CANFAR documentation

系统要求

  • 一个canfar vospace帐户(写访问需要,读访问可以 匿名)
  • 保险丝或OSX-FUSE(参见附加文档,仅适用于 基于文件系统的访问,不用于命令行或编程)
  • python2.6或更高版本

安装

VOSFS通过PyPI/vos和 pypi是获得最新稳定版本的最直接方法:

pip install vosfs --upgrade--user

或者,您可以检索github 分发和使用

python setup.py install --user

教程

  1. 获得CANFAR account
  2. 安装vosfs包。
  3. 使用安装在 cadc-get-cert脚本。
  4. 示例用法。
    1. 对于文件系统使用:mountvofs挂载CADC VOSPACE根目录 容器节点位于/tmp/vospace并在 用户主目录(${home}/vos)。 fusermount -u /tmp/vospace(Linux)或umount /tmp/vospace (OS-X)卸载文件系统。vospace没有映射 您的unix用户id,因此文件似乎由 发出“mountvofs”命令的用户。

开发

建议使用虚拟环境(venv)设置外部 不在系统范围内安装依赖项。在these instructions之后, 安装virtualenv

$ pip install virtualenv

接下来,创建并激活本地venv(本例使用 bash):

$ virtualenv venv
$ source venv/bin/activate

通过安装 合适的套餐:

$ pip install -r dev_requirements.txt

测试环境内置在setup.py中,因此 单元测试的实现方式如下:

python setup.py test

例如,如果您希望将Versbose输出格式化为网页, 您可以向测试呼叫添加选项:

python setup.py test --addopts '--cov-report html:cov_html --cov=vosfs'

相同的option属性可用于将其他参数传递给py.test 正在执行测试。仅运行特定的测试,例如:

python setup.py test --addopts 'vos/test/Test_vos.py::TestClient::test_transfer_error'

每次您恢复项目工作并希望使用venv (例如,从新外壳),只需重新激活它即可:

$ source venv/bin/activate

完成后,只需发布a

$ deactivate

停用虚拟环境的命令。

集成测试

目前,集成测试设计为仅在 CADC空间。测试假设已经安装了vofs包。

激活venv并安装vofs

$ source venv/bin/activate.csh
$ pip install vofs

运行测试:

```$./test/scripts/vospace-mountvospace-atest.tcsh

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java数据集。map()在eclipse的YanClient模式下运行时抛出ClassCastException,但在本地模式下传递   java在Play框架中将api前置到URL的根   java访问外部C++ DLL   java电报bot仅用于发送消息   java无法在JavaFX中加载控制器   JavaAnt解压除一个之外的每个jar   java在将图像保存到文件夹中时出现问题   使用来自ifstatement的输入在java中打印数组   java更改intellij的GWT配置中的超级开发模式端口参数   java不能是Android Emulator上的根用户   java如何等待某个事件而不是线程阻塞?   java如何将字符串列表收集到映射中,其中每个字符串都是一个键?   具有键值对映射的java JPA持久化实体   用于从给定DFA打印所有接受字符串(如果数量无限,则打印到上限)的java算法   java与本机查询级联删除