Clone or download
Latest commit 29591a5 Oct 19, 2018
Failed to load latest commit information.
.github small mods Oct 30, 2017
.travis.d Ignore pep8 example files in pylint Nov 2, 2017
AccountingSystem Networkplotter: Doc fix syntax for bullet list Sep 27, 2018
ConfigurationSystem Config Operations helper: fix doc indentation Sep 27, 2018
Core Merge pull request #3840 from marianne013/check_for_empty Oct 3, 2018
DataManagementSystem Merge remote-tracking branch 'release/integration' into integration Oct 3, 2018
FrameworkSystem Conflicts resolved with rel-v6r20 Oct 3, 2018
Interfaces Conflicts resolved with rel-v6r20 Oct 17, 2018
MonitoringSystem Conflicts resolved with rel-v6r20 Sep 21, 2018
RequestManagementSystem RMS.Request: fix docstring Sep 27, 2018
ResourceStatusSystem Conflicts resolved with rel-v6r20 Oct 17, 2018
Resources Resources: fix warnings for docstring syntax Sep 27, 2018
StorageManagementSystem StorageManagerClient: fix proxy problem for checkFilesToStage Aug 6, 2018
TransformationSystem Conflicts resolved with rel-v6r20 Oct 17, 2018
Workflow better log Aug 21, 2018
WorkloadManagementSystem Conflicts resolved Oct 17, 2018
container expanded DIRAC dev documentation May 29, 2018
docs Rename GettingStarted/Step 1/index.rst, change headline, add to admin… Oct 19, 2018
tests Conflicts resolved with rel-v6r20 Oct 3, 2018
.gitignore adding emacs backup file pattern to .gitignore Sep 12, 2018
.landscape.yml Added a line for pylint conf. Jun 3, 2016
.pylintrc backports from v6r20 Apr 23, 2018
.travis.yml Travis: docs install graphviz Sep 28, 2018
AUTHORS.rst minor changes Mar 1, 2018
LICENSE RFC proxies on Jan 20, 2015
Makefile fix py.test Mar 8, 2016
README.rst added DOI Oct 8, 2018 v6r20-pre17 Mar 20, 2018
dirac.cfg TransformationCleaningAgent: update configuration documentation Jul 27, 2018
pytest.ini Tests: add checkAgentsOption function for agent tests Aug 21, 2018
release.notes Conflicts resolved with rel-v6r20 Oct 17, 2018
releases.cfg v6r20p16 Oct 17, 2018
requirements.txt Conflicts resolved with rel-v6r20 Sep 21, 2018
setup.cfg style (removed E402) Mar 23, 2018 add Nov 3, 2017


Cite us:

Status master branch (stable):

Build Status Documentation Status

Status integration branch (devel):

Build Status Documentation Status


DIRAC (Distributed Infrastructure with Remote Agent Control) INTERWARE is a software framework for distributed computing providing 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.

Important links


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.



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.


Unit tests are provided within the source code. Integration, regression and system tests are instead in the tests directory. Run pytest to run all unit tests.