跳转到主要内容

DIRAC是一个中间件,意味着它是分布式计算的一个软件框架。

项目描述

DIRAC

https://badge.fury.io/py/DIRAC.svg https://img.shields.io/conda/vn/conda-forge/dirac-grid https://zenodo.org/badge/DOI/10.5281/zenodo.1451647.svg

DIRAC是一个中间件,意味着它是分布式计算的一个软件框架。

DIRAC为需要访问分布式资源的用户社区提供了一整套解决方案。DIRAC在用户和资源之间构建了一层,提供了一个通用的接口,连接到多个异构提供者,以无缝的方式整合它们,提供互操作性,同时实现资源的优化、透明和可靠使用。

DIRAC由LHCb合作组启动,并由他们维护。现在它被多个社区(也称为虚拟组织)用于他们的分布式计算工作流程。

DIRAC是用Python 3.9编写的。

状态:rel-v8r0系列(稳定,推荐)

Basic Tests Status Pilot Wrapper Status Integration Tests Status Documentation Status

状态:集成分支(开发中)

Basic Tests Status Pilot Wrapper Status Integration Tests Status Documentation Status

安装

基本有两种安装类型:客户端和服务器。

有关DIRAC客户端安装说明,请参阅网页

有关DIRAC服务器安装说明,请参阅网页

DIRAC 8.0将不支持基于Python 2的客户端和服务器。

有三种安装选项可用

  1. DIRACOS2:这是唯一完全支持的方法,请参阅DIRACOS 2文档

  2. Conda / Mamba from conda-forge 我们建议使用以下命令为DIRAC创建一个新的环境

    mamba create --name my-dirac-env -c conda-forge dirac-grid
    conda activate my-dirac-env
  3. Pip:如果提供了合适的依赖项,可以使用pip install DIRAC安装DIRAC。应从上游项目寻求安装依赖项的支持。

开发

有关完整开发指南,请参阅此处,以下是一些最重要的细节。

贡献

DIRAC是一个完全开源的项目,欢迎您为其做出贡献。主要作者的列表可以在此处找到。有关如何为DIRAC做出贡献的详细说明,请参阅此页。以下是一些快速贡献指南:

  • 在GitHub UI中Fork项目

  • 在本地克隆并为每个更改创建一个分支

    git clone git@github.com:$GITHUB_USERNAME/DIRAC.git
    cd DIRAC
    git remote add upstream git@github.com:DIRACGrid/DIRAC.git
    git fetch --all
    git checkout upstream/integration
    git checkout -b my-feature-branch
    git push -u origin my-feature-branch
  • 创建一个Pull Request,针对“集成”分支。

代码质量

为确保代码符合DIRAC的编码规范,我们建议使用操作系统的包管理器全局安装pre-commit系统。或者,pre-commit包含在Python 3开发环境中,请参阅开发指南以了解如何创建一个。

安装pre-commit后,您可以通过运行以下命令启用它:

pre-commit install --allow-missing-config

现在,代码格式化将在每次提交之前自动应用。

测试

单元测试包含在源代码中,可以使用pytest运行。集成、回归和系统测试位于DIRAC/tests/目录中。

致谢

本工作由EOSC-hub项目(Horizon 2020)资助,资助编号为777536。

eu-logo eosc-hub-web

项目详情


发布历史 发布通知 | RSS订阅

下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

dirac-8.0.53.tar.gz (2.2 MB 查看哈希值)

上传时间 源代码

构建分发

DIRAC-8.0.53-py3-none-any.whl (2.7 MB 查看哈希值)

上传时间 Python 3

由以下机构支持