Skip to content

Commit

Permalink
setup: support for XRootD backend storage
Browse files Browse the repository at this point in the history
Adds support for XRootD remote file locations in workflow definitions.
Closes #41.
  • Loading branch information
tiborsimko committed May 1, 2022
1 parent 40a80ff commit 939ae77
Show file tree
Hide file tree
Showing 8 changed files with 35 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ jobs:
- name: Install Python dependencies
run: |
pip install --upgrade pip setuptools py
pip install --upgrade pip setuptools py wheel
pip install -e .[all]
- name: Run Sphinx documentation with doctests
Expand Down
5 changes: 5 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Changes
=======

Version 0.9.0 (UNRELEASED)
---------------------------

- Adds support for XRootD remote file locations in workflow specification definitions.

Version 0.8.1 (2022-02-07)
---------------------------

Expand Down
14 changes: 9 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
# This file is part of REANA.
# Copyright (C) 2021 CERN.
# Copyright (C) 2021, 2022 CERN.
#
# REANA is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.

# Install base image and its dependencies
FROM python:3.8-slim
FROM python:3.8
# hadolint ignore=DL3008, DL3013, DL3015
RUN apt-get update && \
apt-get install -y \
vim-tiny \
cmake \
gcc \
graphviz \
graphviz-dev && \
graphviz-dev \
libxrootd-client-dev \
vim-tiny \
xrootd-client && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
pip install --upgrade pip
Expand All @@ -27,7 +30,8 @@ COPY . /code

# Are we debugging?
ARG DEBUG=0
RUN if [ "${DEBUG}" -gt 0 ]; then pip install -e ".[debug]"; else pip install .; fi;
# hadolint ignore=DL3013
RUN if [ "${DEBUG}" -gt 0 ]; then pip install -e ".[debug,xrootd]"; else pip install ".[xrootd]"; fi;

# Are we building with locally-checked-out shared modules?
# hadolint ignore=SC2102
Expand Down
5 changes: 4 additions & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# -*- coding: utf-8 -*-
#
# This file is part of REANA.
# Copyright (C) 2021 CERN.
# Copyright (C) 2021, 2022 CERN.
#
# REANA is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.
Expand Down Expand Up @@ -42,6 +42,9 @@
"sphinx.ext.viewcode",
]

# Autodoc mocking to fix missing dependencies
autodoc_mock_imports = ["xrootd"]

# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]

Expand Down
4 changes: 2 additions & 2 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This file is part of REANA.
# Copyright (C) 2021 CERN.
# Copyright (C) 2021, 2022 CERN.
#
# REANA is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.

-e .[all]
-e .[docs]
7 changes: 7 additions & 0 deletions requirements.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# This file is part of REANA.
# Copyright (C) 2022 CERN.
#
# REANA is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.

xrootd>=5.4.2,<6.0
7 changes: 4 additions & 3 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile --output-file=requirements.txt setup.py
# pip-compile --output-file=requirements.txt requirements.in setup.py
#
amqp==5.1.0 # via kombu
appdirs==1.4.4 # via fs, snakemake
Expand All @@ -14,7 +14,7 @@ charset-normalizer==2.0.12 # via requests
checksumdir==1.1.9 # via reana-commons
click==8.1.1 # via reana-commons
configargparse==1.5.3 # via snakemake
connection_pool==0.0.3 # via snakemake
connection-pool==0.0.3 # via snakemake
datrie==0.8.2 # via snakemake
docutils==0.18.1 # via snakemake
filelock==3.6.0 # via snakemake
Expand Down Expand Up @@ -49,7 +49,7 @@ requests==2.27.1 # via bravado, snakemake
rfc3987==1.3.8 # via jsonschema
simplejson==3.17.6 # via bravado, bravado-core
six==1.16.0 # via bravado, bravado-core, fs, jsonschema, mock, python-dateutil, swagger-spec-validator
smart_open==5.2.1 # via snakemake
smart-open==5.2.1 # via snakemake
smmap==5.0.0 # via gitdb
snakemake[reports]==6.8.0 # via reana-commons
stopit==1.1.2 # via snakemake
Expand All @@ -64,6 +64,7 @@ vine==5.0.0 # via amqp, kombu
webcolors==1.11.1 # via jsonschema
werkzeug==2.1.0 # via reana-commons
wrapt==1.14.0 # via snakemake
xrootd==5.4.2 # via -r requirements.in

# The following packages are considered to be unsafe in a requirements file:
# setuptools
3 changes: 3 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@
"sphinx-rtd-theme>=0.1.9",
],
"tests": tests_require,
"xrootd": [
"xrootd>=5.4.2,<6.0",
],
}

extras_require["all"] = []
Expand Down

0 comments on commit 939ae77

Please sign in to comment.