GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - DIRACGrid/DIRAC: DIRAC Grid

BranchesTags
Open more actions menu

Latest commit

 

History

38,729 Commits
38,729 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
consistency_check
consistency_check
 
 
dashboards
dashboards
 
 
dirac-common
dirac-common
 
 
docs
docs
 
 
src/DIRAC
src/DIRAC
 
 
tests
tests
 
 
.git-blame-ignore-revs
.git-blame-ignore-revs
 
 
.gitignore
.gitignore
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
.readthedocs.yaml
.readthedocs.yaml
 
 
AGENTS.md
AGENTS.md
 
 
AUTHORS.rst
AUTHORS.rst
 
 
LICENSE
LICENSE
 
 
MANIFEST.in
MANIFEST.in
 
 
README.rst
README.rst
 
 
SECURITY.md
SECURITY.md
 
 
codecov.yml
codecov.yml
 
 
dirac.cfg
dirac.cfg
 
 
environment.yml
environment.yml
 
 
integration_tests.py
integration_tests.py
 
 
pyproject.toml
pyproject.toml
 
 
pytest.ini
pytest.ini
 
 
release.notes
release.notes
 
 
releases.cfg
releases.cfg
 
 
setup.cfg
setup.cfg
 
 
setup.py
setup.py
 
 

Repository files navigation

DIRAC

https://img.shields.io/conda/vn/conda-forge/dirac-grid

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 3.11.

Status rel-v8r0 series (stable, recommended):

Basic Tests Status Pilot Wrapper Status Integration Tests Status Documentation Status

Status integration branch (devel):

Basic Tests Status Pilot Wrapper Status Integration Tests Status 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
  • Developer's mailing list: [email protected]
  • Site administrator's mailing list: [email protected]
  • [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.

For DIRAC server installation instructions, see the web page.

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

There are three available options for installation:

  1. DIRACOS2: This is the only fully supported method, see the DIRACOS 2 documentation.

  2. Conda / Mamba from conda-forge : We recommend making a new environment for DIRAC using

    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, 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 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 inside the GitHub UI

  • Clone locally and create a branch for each change

    git clone [email protected]:$GITHUB_USERNAME/DIRAC.git
    cd DIRAC
    git remote add upstream [email protected]: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, 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 for details on how to create one.

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

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

About

DIRAC Grid

diracgrid.org

Topics

distributed-computinggridinterwareworkflow-managementworkload-management

Resources

Readme
GPL-3.0 license

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

125 stars

Watchers

16 watching

Forks

191 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.