Skip to main content

DIRAC is an interware, meaning a software framework for distributed computing.

Project description

Cite us:

https://zenodo.org/badge/DOI/10.5281/zenodo.1451647.svg

Status master branch (stable):

Basic Tests Status Dirac Install Status Pilot Wrapper Status Integration Tests Status Documentation Status

Status integration branch (devel):

Basic Tests Status Dirac Install Status Pilot Wrapper Status Integration Tests Status Documentation Status

DIRAC

DIRAC is an interware, meaning a software framework for distributed computing.

DIRAC provides a complete solution to one or more user community requiring access to distributed resources. DIRAC builds a layer between the users and the resources offering a common interface to a number of heterogeneous providers, integrating them in a seamless manner, providing interoperability, at the same time as an optimized, transparent and reliable usage of the resources.

DIRAC has been started by the LHCb collaboration who still maintains it. It is now used by several communities (AKA VO=Virtual Organizations) for their distributed computing workflows.

DIRAC is written in python 2.7.13 and transitioning to python 3.

Install

There are basically 2 types of installations: client, and server.

For DIRAC client installation instructions, see the web page.

For DIRAC server installation instructions, see the web page.

The supported distributions are EL6 (e.g. SLC6) and EL7 (e.g. CC7).

Development

Contributing

DIRAC is a fully open source project, and you are welcome to contribute to it. A list of its main authors can be found here A detailed explanation on how to contribute to DIRAC can be found in this page. For a quick’n dirty guide on how to contribute, simply:

  • fork the project

  • work on a branch

  • create a Pull Request, target the “integration” branch.

Code quality

The contributions are subject to reviews.

Pylint, and pep8 style checker are run regularly on the source code. The .pylintrc file defines the expected coding rules and peculiarities (e.g.: tabs consists of 2 spaces instead of 4). Each Pull Request is checked for pylint and pep8 compliance.

Each PR is a also subject to check for python 3 compatibility. If you are issuing PRs that are devoted to future versions of DIRAC (so, not for patch releases), for each of the python files touched please run (and react to):

pylint --rcfile=tests/.pylintrc3k --py3k --msg-template="{path}:{line}: [{msg_id}({symbol}), {obj}] {msg}" --extension-pkg-whitelist=numpy path/to/file.py

Testing

Unit tests are provided within the source code. Integration, regression and system tests are instead in the DIRAC/tests/ directory. Run pytest to run all unit tests (it will include the coverage).

Acknowledgements

This work is co-funded by the EOSC-hub project (Horizon 2020) under Grant number 777536

eu-logo eosc-hub-web

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DIRAC-7.2.0a39.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

DIRAC-7.2.0a39-py3-none-any.whl (2.2 MB view details)

Uploaded Python 3

File details

Details for the file DIRAC-7.2.0a39.tar.gz.

File metadata

  • Download URL: DIRAC-7.2.0a39.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.0 importlib_metadata/3.7.3 packaging/20.9 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for DIRAC-7.2.0a39.tar.gz
Algorithm Hash digest
SHA256 bed239c9dd2050db7505b84e9a0cc286de11b1d6339f479c0a7d583715a1982a
MD5 262f301733974eb5a71f6a4ba3947ef7
BLAKE2b-256 11a3f7d6e9df16ffc9db20bfed82f7c1eeea51d751eccdaa3c03d68580e477e0

See more details on using hashes here.

File details

Details for the file DIRAC-7.2.0a39-py3-none-any.whl.

File metadata

  • Download URL: DIRAC-7.2.0a39-py3-none-any.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.0 importlib_metadata/3.7.3 packaging/20.9 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for DIRAC-7.2.0a39-py3-none-any.whl
Algorithm Hash digest
SHA256 2e2a3b3f4d84f121fe69daf6f982bb6530f2d3f8e81974084e93feaa318b75f3
MD5 539eabb653816f1676a7ce355d32dff0
BLAKE2b-256 0d6e9660c63c9e932e23f008d117dcda1d09c91b0bbe9423a4abf125a4c6e6b8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page