使用luigi、远程作业提交、远程目标和环境构建大规模任务工作流

law的Python项目详细描述


law logo
Build statusDocumentation statusPackage versionLicense

注意:此项目目前正在开发中。版本0.1.0将是第一个完整记录的alpha版本。

利用法律构建复杂、大规模的任务工作流。它构建在luigi之上,并为run locationsstorage locationssoftware environments添加抽象。法律严格地将这些组成部分分离开来,并确保它们保持可互换性和资源机会主义。

主要功能:

  • 具有自动完成、交互状态和依赖项检查的cli。
  • 具有自动重试和本地缓存的远程目标
    • webdav,http,dropbox,sftp,所有wlcg协议(srm,xrootd,rfio,dcap,gsiftp,…)
  • 从任务内自动提交到批处理系统
    • htcondor、lsf、glite、arc
  • DAT>环境沙箱,可配置在任务级别
    • Docker,奇点,子壳

第一步

安装和依赖项

通过pip:安装

pip install law

此命令还安装luigisix

远程目标还要求安装gfal2gfal2-python(可选,也通过pip)。

示例

在命令行上自动完成

猛击

source"$( law completion )"

zsh

zsh能够通过bashcompinit加载和计算bash完成脚本。为了使bashcompinit工作,您应该运行compinstall以启用完成脚本:

autoload -Uz compinstall && compinstall

按照说明操作后,这些行应该出现在~/.zshrc:

# The following lines were added by compinstall
zstyle :compinstall filename '~/.zshrc'

autoload -Uz compinit
compinit
# End of lines added by compinstall

如果是这样的话,只要获得law completion脚本(它在内部启用bashcompinit)就可以了:

source"$( law completion )"

开发

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

推荐PyPI第三方库


热门话题
java OnResizeListener或OnDrawListener或类似的东西   java Orika映射嵌套子列表   保存时java Heroku请求超时代码H12   数据库在Java中出现socket读取超时异常的原因是什么?   java如何更改来自Sqlite数据库的特定数据在Listview中的行颜色   java JAXB解组器无法正确处理XML中的列表   java Android日期时区让我抓狂   java不透明属性在Swing中如何工作?   eclipse从JavaEE代码生成流程图   java如何在Hibernate中从相关表中获取计数   java Glassfish部署了项目的依赖项库   java使内容适合JavaFx中的WebView   java不满意的链接错误libcrypto。所以1.0.0   循环中java数组的使用   java找出哪个包调用服务