Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true
44 changes: 23 additions & 21 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -1,57 +1,59 @@
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy DIRAC Web Site

on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]
# Check that the site builds for pull requests, without deploying
pull_request:

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
permissions: {}

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
group: "pages-${{ github.event_name }}-${{ github.ref }}"
cancel-in-progress: false

jobs:
# Build job
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/setup-python@v5
uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
with:
python-version: '3.11'
- name: Installing dependencies
run: |
python -m pip install \
mkdocs \
mkdocs-material \
BeautifulSoup4
persist-credentials: false
- uses: prefix-dev/setup-pixi@d3f436a425481402e6a95a1d1fc10331c708cd9e # v0.10.2
with:
environments: mkdocs
locked: true
- name: Build Pages
run: |
make build
run: pixi run -e mkdocs mkdocs-build
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
if: github.event_name != 'pull_request'
uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1
with:
path: site

# Deployment job
deploy:
if: github.event_name != 'pull_request'
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
# Allow the GITHUB_TOKEN to deploy to GitHub Pages
permissions:
pages: write
id-token: write
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.pixi/
site/
.cache/
49 changes: 49 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
default_install_hook_types:
- pre-commit
- commit-msg

default_stages: [pre-commit]

# Third-party assets vendored from the HTML5 UP template used by the landing page
exclude: ^docs/assets/(css|js|sass|webfonts)/

repos:
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v4.4.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]
args: ["--verbose"]

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
args: ["--unsafe"]
- id: check-added-large-files
exclude: pixi\.lock$

- repo: https://github.com/hukkin/mdformat
rev: 1.0.0
hooks:
- id: mdformat
args: ["--number"]
additional_dependencies:
- mdformat-mkdocs
- mdformat-gfm

- repo: https://github.com/codespell-project/codespell
rev: v2.4.3
hooks:
- id: codespell
args: ["-w"]
exclude: pixi\.lock$

- repo: https://github.com/zizmorcore/zizmor-pre-commit
rev: v1.30.1
hooks:
- id: zizmor
17 changes: 0 additions & 17 deletions Makefile

This file was deleted.

10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,12 @@
# dirac-site

The repository contains all the sources from the DIRAC project web site

## Building

The site is built with [MkDocs Material](https://squidfunk.github.io/mkdocs-material/) using [pixi](https://pixi.sh):

```bash
pixi run mkdocs # Serve the site locally with live reload
pixi run mkdocs-build # Build the site into site/
```
3 changes: 1 addition & 2 deletions docs/code.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

The DIRAC is hosted in the [GitHub repository](https://github.com/DIRACGrid). The code is open source and it is released under the [GPL v3 license](https://github.com/DIRACGrid/DIRAC/blob/integration/LICENSE).

In the repository, there are several projects corresponding to the DIRAC and DiracX subsystems.
In the repository, there are several projects corresponding to the DIRAC and DiracX subsystems.
29 changes: 14 additions & 15 deletions docs/consortium.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,32 @@

##DIRAC Consortium
## DIRAC Consortium

The Consortium was created in February 2014 to support development and promotion of the DIRAC software. Currently, the Consortium members are

- CNRS, France
- CERN, Switzerland
- IHEP, China
- KEK, Japan
- Imperial College, UK
- CNRS, France
- CERN, Switzerland
- IHEP, China
- KEK, Japan
- Imperial College, UK

The Consortium members hold the copyright for the DIRAC software released under the GPLv3 license

The Consortium is directed by :

- **Andrei Tsaregorodtsev** – Coordinator, atsareg@cppm.in2p3.fr
- **Federico Stagni** – Technical Coordinator, federico.stagni@cern.ch
- **Andrei Tsaregorodtsev** – Coordinator, atsareg@cppm.in2p3.fr
- **Federico Stagni** – Technical Coordinator, federico.stagni@cern.ch

The Consortium Board members:

- **Vanessa Hamar**, CNRS
- **André Sailer**, CERN
- **Xiaomei Zhan**, IHEP
- **I Ueda**, KEK
- **Daniela Bauer**, Imperial College
- **Vanessa Hamar**, CNRS
- **André Sailer**, CERN
- **Xiaomei Zhan**, IHEP
- **I Ueda**, KEK
- **Daniela Bauer**, Imperial College

The Consortium documents:

[Consortium Agreement](assets/files/Consortium_Agreement.pdf)

[Amendment 1](assets/files/Amendment1.pdf)

[Amendment 2](assets/files/Amendment2.pdf)
[Amendment 2](assets/files/Amendment2.pdf)
9 changes: 4 additions & 5 deletions docs/contacts.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@

For any question related to the use of the DIRAC system, bug reports, request for new functionalities and so on, please use the Github discussions area:

- [DIRAC forum](https://github.com/DIRACGrid/DIRAC/discussions)
- [DiracX forum](https://github.com/DIRACGrid/diracx/discussions)
- [DIRAC forum](https://github.com/DIRACGrid/DIRAC/discussions)
- [DiracX forum](https://github.com/DIRACGrid/diracx/discussions)

For question about the possible use of the DIRAC software and service by your experiment and/or institution, please contact the DIRAC Consortium Coordinators:

- **Andrei Tsaregorodtsev** – Coordinator, atsareg@cppm.in2p3.fr
- **Federico Stagni** – Technical Coordinator, federico.stagni@cern.ch
- **Andrei Tsaregorodtsev** – Coordinator, atsareg@cppm.in2p3.fr
- **Federico Stagni** – Technical Coordinator, federico.stagni@cern.ch
19 changes: 8 additions & 11 deletions docs/dirac.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,23 @@

## In the beginning ...

The DIRAC project started as a tool for massive production of modeling data for the [**LHCb**](http://lhcb.cern.ch) experiment at CERN.
The DIRAC project started as a tool for massive production of modeling data for the [**LHCb**](http://lhcb.cern.ch) experiment at CERN.
In order to exploit efficiently the distributed computing grid resources, DIRAC introduced the workload management architecture based on pilot jobs.
The new architecture improved significantly the success rate of the jobs running in the LHC Computing Grid (LCG) and was adopted by other LHC
experiments.
experiments.

!!! note "Pilot jobs"
Pilot jobs are sent to the grid sites as soon as there are user jobs submitted the DIRAC's central Task Queue. When started running
on a worker node, the pilot job checks the execution environment, collects its parameters and presents the computing resource description to
the DIRAC Matcher service. The Matcher selects a job from the Task Queue suitable for running on the proposed resource taking into account the job
priority and other policies. The pilot job then ensures the user's job execution, monitoring its status and uploading the results

Pilot jobs are sent to the grid sites as soon as there are user jobs submitted the DIRAC's central Task Queue. When started running
on a worker node, the pilot job checks the execution environment, collects its parameters and presents the computing resource description to
the DIRAC Matcher service. The Matcher selects a job from the Task Queue suitable for running on the proposed resource taking into account the job
priority and other policies. The pilot job then ensures the user's job execution, monitoring its status and uploading the results

After the successful demonstration of its potential, the DIRAC system was deployed for some other High Energy Physics experiments and research groups.
The code was largely refactored for better scalability and performance but also for support of multi-comunity installations. The extension mechanism allowed
easy customization of the DIRAC components to the needs of a particular communities.
easy customization of the DIRAC components to the needs of a particular communities.

Now, the DIRAC Interware Project provides software and a large set of ready to use components to build distributed computing systems of arbitrary complexity. It ensures access to various types of computing and storage resources with a single intuitive user interface. Both Workload and Data Management subsystems are available which provides a complete solution for creating computing systems for multiple research user communities.


![DIRAC Overview](assets/images/DIRAC_overview.jpg)


DIRAC is used by multiple large [**scientific collaborations**](users.md). The services based on the DIRAC interware are also provided by several large national and international grid infrastructures.
DIRAC is used by multiple large [**scientific collaborations**](users.md). The services based on the DIRAC interware are also provided by several large national and international grid infrastructures.
5 changes: 2 additions & 3 deletions docs/documentation.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@

The DIRAC project is undergoing a major revision and the new generation of the DIRAC software is called DiracX. You can find here links to the original DIRAC and the new DiracX software documentation below:

[**DIRAC documentation**](https://dirac.readthedocs.io/en/latest/)

[**DiracX documentation**](https://diracx.diracgrid.org/)

The DIRAC documentaiton is partitioned in several guides.
The DIRAC documentation is partitioned in several guides.

The [**User Guide**](https://dirac.readthedocs.io/en/latest/UserGuide/index.html) contains all the necessary instructions to install or get access to the DIRAC client software and configure it in order to access a preferred DIRAC service. The guide describes the user interfaces – command line and Web. It also provides a complete list of DIRAC commands. A number of tutorials demonstrate step by step the operations to be performed to set up the client and perform most of the common operations. Finally, a set of How-To items provide answers to commonly asked questions.

All the necessary information for developing new DIRAC components is provided by the [**Developer Guide**](https://dirac.readthedocs.io/en/latest/DeveloperGuide/index.html). It contains an overview of the DIRAC architecture, describes general code management procedures as well as building and distributing DIRAC releases. You will find out how to set up the development environment, how to write codes that can be tested together with the other components in an automated way.
The Code Documentation provides a detailed description of the DIRAC APIs that can be used for developing new user interfaces and server-side components.

The [**Administrator Guide**](https://dirac.readthedocs.io/en/latest/AdministratorGuide/index.html) provides instructions on how to install and setup DIRAC services and web portals, how to configure them providing description of users and resources. It describes the tools to monitor DIRAC installations and perform day-to-day operations. Several tutorials are provided in order walk the new administrators through procedures to setup new installations.
The [**Administrator Guide**](https://dirac.readthedocs.io/en/latest/AdministratorGuide/index.html) provides instructions on how to install and setup DIRAC services and web portals, how to configure them providing description of users and resources. It describes the tools to monitor DIRAC installations and perform day-to-day operations. Several tutorials are provided in order walk the new administrators through procedures to setup new installations.
5 changes: 2 additions & 3 deletions docs/events.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
##11th DIRAC User's Workshop
## 11th DIRAC User's Workshop

The next DIRAC User's Workshop will take place in IHEP, Beijing, on the 17th-20th September. The workshop will be devoted to the information exchange between the Dirac(X) developers, service administrators and users. Reports on the Dirac(x) ongoing and planned developments, service management tools will be included into the agenda together with the users reporting their experience. You are welcome to suggest your items to the [workshop agenda](https://indico.cern.ch/event/1433941/). You can also register there if you are planning to participate in person.
The next DIRAC User's Workshop will take place in IHEP, Beijing, on the 17th-20th September. The workshop will be devoted to the information exchange between the Dirac(X) developers, service administrators and users. Reports on the Dirac(x) ongoing and planned developments, service management tools will be included into the agenda together with the users reporting their experience. You are welcome to suggest your items to the [workshop agenda](https://indico.cern.ch/event/1433941/). You can also register there if you are planning to participate in person.

![Poster](assets/images/Poster_1.0.png)

12 changes: 6 additions & 6 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,8 @@ <h3><a href="code.html">Batteries included</a></h3>
<h3><a href="documentation.html">Open source</a></h3>
</header>
<p>
DIRAC is a open source project with the code repository and documentation publicly available.
It has got controbutions from dozens of developers from all over the world.
DIRAC is a open source project with the code repository and documentation publicly available.
It has got contributions from dozens of developers from all over the world.
</p>
</article>
<article class="col-4 col-12-mobile special">
Expand All @@ -103,7 +103,7 @@ <h3><a href="users.html">Battle proven</a></h3>
</header>
<p>
DIRAC is actively used by a large number of small and large scientific communities. DIRAC services
are provided by several large scale grid infrastructures.
are provided by several large scale grid infrastructures.
</p>
</article>
<article class="col-4 col-12-mobile special">
Expand All @@ -123,7 +123,7 @@ <h3><a href="consortium.html">Solid basis</a></h3>
</header>
<p>
The DIRAC Consortium unites five world-class scientific institutions working together to
develop and promote the DIRAC software.
develop and promote the DIRAC software.
</p>
</article>
</div>
Expand All @@ -137,11 +137,11 @@ <h3><a href="consortium.html">Solid basis</a></h3>
<h2 >Get in touch</h2>
<p> Drop us a mail</p>
</header>

<ul class="actions">
<li><a href="contacts.html" class="button special primary">Contact us</a></li>
</ul>

</div>

<div class="copyright">
Expand Down
4 changes: 2 additions & 2 deletions docs/overrides/assets/stylesheets/diracgrid.css
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@
}

.md-header__button.md-logo img {
height: 4.2rem;
}
height: 4.2rem;
}
18 changes: 9 additions & 9 deletions docs/users.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,30 @@ The DIRAC software and services are used by multiple scientific experiments and

**The page is under construction**

##LHCb
## LHCb

##Belle II
## Belle II

##CTAO
## CTAO

##ILC/CLIC/FCC
## ILC/CLIC/FCC

[iLCDirac](ilcdirac.cern.ch) is a multi-community DIRAC instance serving future collider communities from the FCC and linear colliders.
[iLCDirac](https://ilcdirac.cern.ch) is a multi-community DIRAC instance serving future collider communities from the FCC and linear colliders.

##JUNO
## JUNO

##GridPP
## GridPP

![GridPP logo](assets/images/gridpplogo1.jpg){ align=right width="100" }

[GridPP](https://www.gridpp.ac.uk/) is a collaboration of 15 UK universities, plus Rutherford Appleton Laboratory (RAL) that operates the UK Grid infrastructure. It is part of the [WLCG](https://wlcg.web.cern.ch/) and its focus is on particle physics, neutrino, and adjacent experiments. GridPP maintains the [GridPP DIRAC server](https://dirac.gridpp.ac.uk) as the entrypoint to grid (compute and storage) and cloud resources for a number of scientific communities with UK participation. Further information on the GridPP specific implementation of DIRAC can be found here: [GridPP documentation](https://github.com/ic-hep/gridpp-dirac-users/wiki). If you think your community would benefit from using the GridPP DIRAC instance, please don't hesitate to [contact us](https://www.gridpp.ac.uk/contact/).

##EGI
## EGI

![EGI logo](assets/images/egi-logo.png){ align=right width="100" }

[EGI](https://www.egi.eu) is a European Grid Infrastructure operating a federation of computing resources and service providers for multiple scientific communities in Europe and in the world.

![EGI jobs](assets/images/EGI_jobs.png){ align=left width="250" }

One of the services offered by EGI is the [Workload Manager](https://www.egi.eu/service/workload-manager/) which is a DIRAC service. It provides both workload and data management components allowing users to execute jobs in the EGI sites as well as manage their distributed data. The [EGI Workload Manager](https://dirac.egi.eu) is serving about 20 scientific communities from various scientific domains, some of them counting more than thousand users. The service is hosted on the premises of the [IN2P3 Computing Center, Lyon](https://cc.in2p3.fr/en/) and is operated by a team of administrators from several CNRS laboratories. In 2024, more than 30 millions user jobs were executed with the help of the EGI Workload Manager service.
One of the services offered by EGI is the [Workload Manager](https://www.egi.eu/service/workload-manager/) which is a DIRAC service. It provides both workload and data management components allowing users to execute jobs in the EGI sites as well as manage their distributed data. The [EGI Workload Manager](https://dirac.egi.eu) is serving about 20 scientific communities from various scientific domains, some of them counting more than thousand users. The service is hosted on the premises of the [IN2P3 Computing Center, Lyon](https://cc.in2p3.fr/en/) and is operated by a team of administrators from several CNRS laboratories. In 2024, more than 30 millions user jobs were executed with the help of the EGI Workload Manager service.
Loading
Loading