DIRAC


NameDIRAC JSON
Version 8.0.44 PyPI version JSON
download
home_pagehttps://github.com/DIRACGrid/DIRAC/
SummaryDIRAC is an interware, meaning a software framework for distributed computing.
upload_time2024-04-23 12:04:57
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseGPL-3.0-only
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. -*- mode: rst -*-

DIRAC
=====

.. image:: https://badge.fury.io/py/DIRAC.svg
    :target: https://badge.fury.io/py/DIRAC
.. image:: https://img.shields.io/conda/vn/conda-forge/dirac-grid
    :target: https://github.com/conda-forge/dirac-grid-feedstock
.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1451647.svg
    :target: https://doi.org/10.5281/zenodo.1451647

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 <https://lhcb.web.cern.ch/lhcb/>`_ 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 3.9.

Status rel-v8r0 series (stable, recommended):

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Basic%20tests/badge.svg?branch=rel-v8r0
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Basic+tests%22+branch%3Arel-v8r0
   :alt: Basic Tests Status

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/pilot%20wrapper/badge.svg?branch=rel-v8r0
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22pilot+wrapper%22+branch%3Arel-v8r0
   :alt: Pilot Wrapper Status

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Integration%20tests/badge.svg?branch=rel-v8r0
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Integration+tests%22+branch%3Arel-v8r0
   :alt: Integration Tests Status

.. image:: https://readthedocs.org/projects/dirac/badge/?version=rel-v8r0
   :target: http://dirac.readthedocs.io/en/rel-v8r0/
   :alt: Documentation Status


Status integration branch (devel):

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Basic%20tests/badge.svg?branch=integration
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Basic+tests%22+branch%3Aintegration
   :alt: Basic Tests Status

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/pilot%20wrapper/badge.svg?branch=integration
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22pilot+wrapper%22+branch%3Aintegration
   :alt: Pilot Wrapper Status

.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Integration%20tests/badge.svg?branch=integration
   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Integration+tests%22+branch%3Aintegration
   :alt: Integration Tests Status

.. image:: https://readthedocs.org/projects/dirac/badge/?version=integration
   :target: http://dirac.readthedocs.io/en/integration/
   :alt: Documentation Status

Important links
===============

- Official source code repo: https://github.com/DIRACGrid/DIRAC
- HTML documentation (stable release): http://diracgrid.org (http://dirac.readthedocs.io/en/latest/index.html)
- Issue tracker: https://github.com/DIRACGrid/DIRAC/issues
- Discussions: https://github.com/DIRACGrid/DIRAC/discussions
- [ARCHIVED] Support Mailing list: https://groups.google.com/forum/#!forum/diracgrid-forum

Install
=======

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

For DIRAC client installation instructions, see the `web page <http://dirac.readthedocs.io/en/latest/UserGuide/GettingStarted/InstallingClient/index.html>`__.

For DIRAC server installation instructions, see the `web page <https://dirac.readthedocs.io/en/latest/AdministratorGuide/ServerInstallations/InstallingDiracServer.html>`__.

DIRAC 8.0 drops support for Python 2 based clients and servers.

There are three available options for installation:

.. _conda: https://conda.io/en/latest/index.html
.. |conda| replace:: **Conda**
.. _mamba: https://github.com/mamba-org/mamba#the-fast-cross-platform-package-manager
.. |mamba| replace:: **Mamba**
.. _condaforge: https://github.com/mamba-org/mamba#the-fast-cross-platform-package-manager
.. |condaforge| replace:: **conda-forge**

1. **DIRACOS2:** This is the only fully supported method, see the `DIRACOS 2 documentation <https://github.com/DIRACGrid/DIRACOS2/#installing-diracos2>`__.
2. |conda|_ **/** |mamba|_ **from** |condaforge|_ **:**
   We recommend making a new environment for DIRAC using

   .. code-block:: bash

     mamba create --name my-dirac-env -c conda-forge dirac-grid
     conda activate my-dirac-env

3. **Pip:** Provided suitable dependencies are available DIRAC can be installed with ``pip install DIRAC``. Support for installing the dependencies should be sought from the upstream projects.

Development
===========

For the full development guide see `here <https://dirac.readthedocs.io/en/integration/DeveloperGuide/DevelopmentEnvironment/index.html>`__, some of the most important details are included below.

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 <AUTHORS.rst>`__ A detailed explanation on how to contribute to DIRAC can be found in `this page <http://dirac.readthedocs.io/en/latest/DeveloperGuide/index.html>`_. For a quick'n dirty guide on how to contribute, simply:

- `Fork the project <https://docs.github.com/en/get-started/quickstart/fork-a-repo>`_ inside the GitHub UI
- Clone locally and create a branch for each change

   .. code-block:: bash

      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

- `Create a Pull Request <https://docs.github.com/en/articles/about-pull-requests>`_, targeting the "integration" branch.

Code quality
~~~~~~~~~~~~

To ensure the code meets DIRAC's coding conventions we recommend installing ``pre-commit`` system wide using your operating system's package manager.
Alteratively, ``pre-commit`` is included in the Python 3 development environment, see the `development guide <https://dirac.readthedocs.io/en/integration/DeveloperGuide/DevelopmentEnvironment/DeveloperInstallation/editingCode.html>`_ for details on how to create one.

Once ``pre-commit`` is installed you can enable it by running:

.. code-block:: bash

   pre-commit install --allow-missing-config

Code formatting will now be automatically applied before each commit.

Testing
~~~~~~~

Unit tests are provided within the source code and can be ran using ``pytest``.
Integration, regression and system tests are instead in the ``DIRAC/tests/`` directory.

Acknowledgements
~~~~~~~~~~~~~~~~

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

|eu-logo| |eosc-hub-web|

.. |eu-logo| image:: https://raw.githubusercontent.com/DIRACGrid/DIRAC/integration/docs/source/_static/eu-logo.jpeg

.. |eosc-hub-web| image:: https://raw.githubusercontent.com/DIRACGrid/DIRAC/integration/docs/source/_static/eosc-hub-web.png

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/DIRACGrid/DIRAC/",
    "name": "DIRAC",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/28/3c/98edae978f4c55580520c9d3c424b2b72ab54384d0041aafb0a92fae31a6/dirac-8.0.44.tar.gz",
    "platform": null,
    "description": ".. -*- mode: rst -*-\n\nDIRAC\n=====\n\n.. image:: https://badge.fury.io/py/DIRAC.svg\n    :target: https://badge.fury.io/py/DIRAC\n.. image:: https://img.shields.io/conda/vn/conda-forge/dirac-grid\n    :target: https://github.com/conda-forge/dirac-grid-feedstock\n.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1451647.svg\n    :target: https://doi.org/10.5281/zenodo.1451647\n\nDIRAC is an interware, meaning a software framework for distributed computing.\n\nDIRAC 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.\n\nDIRAC has been started by the `LHCb collaboration <https://lhcb.web.cern.ch/lhcb/>`_ who still maintains it. It is now used by several communities (AKA VO=Virtual Organizations) for their distributed computing workflows.\n\nDIRAC is written in python 3.9.\n\nStatus rel-v8r0 series (stable, recommended):\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Basic%20tests/badge.svg?branch=rel-v8r0\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Basic+tests%22+branch%3Arel-v8r0\n   :alt: Basic Tests Status\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/pilot%20wrapper/badge.svg?branch=rel-v8r0\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22pilot+wrapper%22+branch%3Arel-v8r0\n   :alt: Pilot Wrapper Status\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Integration%20tests/badge.svg?branch=rel-v8r0\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Integration+tests%22+branch%3Arel-v8r0\n   :alt: Integration Tests Status\n\n.. image:: https://readthedocs.org/projects/dirac/badge/?version=rel-v8r0\n   :target: http://dirac.readthedocs.io/en/rel-v8r0/\n   :alt: Documentation Status\n\n\nStatus integration branch (devel):\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Basic%20tests/badge.svg?branch=integration\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Basic+tests%22+branch%3Aintegration\n   :alt: Basic Tests Status\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/pilot%20wrapper/badge.svg?branch=integration\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22pilot+wrapper%22+branch%3Aintegration\n   :alt: Pilot Wrapper Status\n\n.. image:: https://github.com/DIRACGrid/DIRAC/workflows/Integration%20tests/badge.svg?branch=integration\n   :target: https://github.com/DIRACGrid/DIRAC/actions?query=workflow%3A%22Integration+tests%22+branch%3Aintegration\n   :alt: Integration Tests Status\n\n.. image:: https://readthedocs.org/projects/dirac/badge/?version=integration\n   :target: http://dirac.readthedocs.io/en/integration/\n   :alt: Documentation Status\n\nImportant links\n===============\n\n- Official source code repo: https://github.com/DIRACGrid/DIRAC\n- HTML documentation (stable release): http://diracgrid.org (http://dirac.readthedocs.io/en/latest/index.html)\n- Issue tracker: https://github.com/DIRACGrid/DIRAC/issues\n- Discussions: https://github.com/DIRACGrid/DIRAC/discussions\n- [ARCHIVED] Support Mailing list: https://groups.google.com/forum/#!forum/diracgrid-forum\n\nInstall\n=======\n\nThere are basically 2 types of installations: client, and server.\n\nFor DIRAC client installation instructions, see the `web page <http://dirac.readthedocs.io/en/latest/UserGuide/GettingStarted/InstallingClient/index.html>`__.\n\nFor DIRAC server installation instructions, see the `web page <https://dirac.readthedocs.io/en/latest/AdministratorGuide/ServerInstallations/InstallingDiracServer.html>`__.\n\nDIRAC 8.0 drops support for Python 2 based clients and servers.\n\nThere are three available options for installation:\n\n.. _conda: https://conda.io/en/latest/index.html\n.. |conda| replace:: **Conda**\n.. _mamba: https://github.com/mamba-org/mamba#the-fast-cross-platform-package-manager\n.. |mamba| replace:: **Mamba**\n.. _condaforge: https://github.com/mamba-org/mamba#the-fast-cross-platform-package-manager\n.. |condaforge| replace:: **conda-forge**\n\n1. **DIRACOS2:** This is the only fully supported method, see the `DIRACOS 2 documentation <https://github.com/DIRACGrid/DIRACOS2/#installing-diracos2>`__.\n2. |conda|_ **/** |mamba|_ **from** |condaforge|_ **:**\n   We recommend making a new environment for DIRAC using\n\n   .. code-block:: bash\n\n     mamba create --name my-dirac-env -c conda-forge dirac-grid\n     conda activate my-dirac-env\n\n3. **Pip:** Provided suitable dependencies are available DIRAC can be installed with ``pip install DIRAC``. Support for installing the dependencies should be sought from the upstream projects.\n\nDevelopment\n===========\n\nFor the full development guide see `here <https://dirac.readthedocs.io/en/integration/DeveloperGuide/DevelopmentEnvironment/index.html>`__, some of the most important details are included below.\n\nContributing\n~~~~~~~~~~~~\n\nDIRAC is a fully open source project, and you are welcome to contribute to it. A list of its main authors can be found `here <AUTHORS.rst>`__ A detailed explanation on how to contribute to DIRAC can be found in `this page <http://dirac.readthedocs.io/en/latest/DeveloperGuide/index.html>`_. For a quick'n dirty guide on how to contribute, simply:\n\n- `Fork the project <https://docs.github.com/en/get-started/quickstart/fork-a-repo>`_ inside the GitHub UI\n- Clone locally and create a branch for each change\n\n   .. code-block:: bash\n\n      git clone git@github.com:$GITHUB_USERNAME/DIRAC.git\n      cd DIRAC\n      git remote add upstream git@github.com:DIRACGrid/DIRAC.git\n      git fetch --all\n      git checkout upstream/integration\n      git checkout -b my-feature-branch\n      git push -u origin my-feature-branch\n\n- `Create a Pull Request <https://docs.github.com/en/articles/about-pull-requests>`_, targeting the \"integration\" branch.\n\nCode quality\n~~~~~~~~~~~~\n\nTo ensure the code meets DIRAC's coding conventions we recommend installing ``pre-commit`` system wide using your operating system's package manager.\nAlteratively, ``pre-commit`` is included in the Python 3 development environment, see the `development guide <https://dirac.readthedocs.io/en/integration/DeveloperGuide/DevelopmentEnvironment/DeveloperInstallation/editingCode.html>`_ for details on how to create one.\n\nOnce ``pre-commit`` is installed you can enable it by running:\n\n.. code-block:: bash\n\n   pre-commit install --allow-missing-config\n\nCode formatting will now be automatically applied before each commit.\n\nTesting\n~~~~~~~\n\nUnit tests are provided within the source code and can be ran using ``pytest``.\nIntegration, regression and system tests are instead in the ``DIRAC/tests/`` directory.\n\nAcknowledgements\n~~~~~~~~~~~~~~~~\n\nThis work is co-funded by the EOSC-hub project (Horizon 2020) under Grant number 777536\n\n|eu-logo| |eosc-hub-web|\n\n.. |eu-logo| image:: https://raw.githubusercontent.com/DIRACGrid/DIRAC/integration/docs/source/_static/eu-logo.jpeg\n\n.. |eosc-hub-web| image:: https://raw.githubusercontent.com/DIRACGrid/DIRAC/integration/docs/source/_static/eosc-hub-web.png\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "DIRAC is an interware, meaning a software framework for distributed computing.",
    "version": "8.0.44",
    "project_urls": {
        "Homepage": "https://github.com/DIRACGrid/DIRAC/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "837681c0839519598a2026015143ff5243b49e01821450fb226383f1a46da391",
                "md5": "e11643af0904253f068cabc70d2011b6",
                "sha256": "b80001d58cde955386a8911c14000d59ff7ae7564e294cf1a93ad2a71ee4a712"
            },
            "downloads": -1,
            "filename": "DIRAC-8.0.44-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e11643af0904253f068cabc70d2011b6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 2682898,
            "upload_time": "2024-04-23T12:04:54",
            "upload_time_iso_8601": "2024-04-23T12:04:54.417574Z",
            "url": "https://files.pythonhosted.org/packages/83/76/81c0839519598a2026015143ff5243b49e01821450fb226383f1a46da391/DIRAC-8.0.44-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "283c98edae978f4c55580520c9d3c424b2b72ab54384d0041aafb0a92fae31a6",
                "md5": "05a58108ffd1eb66542dd527c2b70425",
                "sha256": "e4036e33b06264f5a645544854f062e114df6ad4b428d2657c62078dfd669afe"
            },
            "downloads": -1,
            "filename": "dirac-8.0.44.tar.gz",
            "has_sig": false,
            "md5_digest": "05a58108ffd1eb66542dd527c2b70425",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 2213498,
            "upload_time": "2024-04-23T12:04:57",
            "upload_time_iso_8601": "2024-04-23T12:04:57.788841Z",
            "url": "https://files.pythonhosted.org/packages/28/3c/98edae978f4c55580520c9d3c424b2b72ab54384d0041aafb0a92fae31a6/dirac-8.0.44.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-23 12:04:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "DIRACGrid",
    "github_project": "DIRAC",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "dirac"
}
        
Elapsed time: 0.34909s