Skip to main content

A Command Line Interface to orchestrate the integration of heterogenous data and the deployment of services consuming the integrated data. See https://d2s.semanticscience.org

Project description

A Command Line Interface to orchestrate the integration of heterogenous data sources under a common RDF Knowledge Graph using CWL workflows, and the deployment of user-facing services over the integrated data using Docker (SPARQL, GraphQL-LD, OpenAPI, Web UI).

Installation

More detailed instruction on the d2s documentation website.

Install with pip

pip install d2s cwlref-runner

Use pip, pip3 or pipx depending on your system preferences.

Requirements:

Enable autocompletion

Enable commandline autocompletion in the terminal

Highly recommended, it makes d2s much more user-friendly

  • Bash: add the import autocomplete line to .bashrc
echo 'eval "$(_D2S_COMPLETE=source d2s)"' >> ~/.bashrc

nano .bashrc if issues with the import

  • ZSH: add the import autocomplete line to .zshrc
echo 'eval "$(_D2S_COMPLETE=source_zsh d2s)"' >> ~/.zshrc

nano .zshrc if issues with the import

Try it

Display the default help command

d2s

Create a d2s project in the current directory

d2s init

Development setup

# Add new package
pip install package && pip freeze > requirements.txt

Install for dev

Install d2s as cli in local for dev. d2s will be updated directly on change.

pip install --editable .

Recommended script to build and publish automatically using Docker:

./publish_pip.sh

Or do it locally

# Build packages in dist/
python3 setup.py sdist bdist_wheel
# Publish the built dist/ directory
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*

You might need to install twine

pipx install twine

If you experience issues with Bash or ZSH because d2s is not defined when installing for dev. Then add pip install --editable develop/d2s-cli to .zshrc

You might need to install Python3.6 for dev (dev with python3.6 should work though)

sudo apt-get install python3.6 python3.6-venv python3.6-dev
# Set python3 to use 3.6
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
sudo update-alternatives --config python3
vim /usr/bin/gnome-terminal

#!/usr/bin/python3.6

If you face issue uploading the package on pypi

twine check dist/d2s-*-py3-none-any.whl

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

d2s-0.1.12.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

d2s-0.1.12-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file d2s-0.1.12.tar.gz.

File metadata

  • Download URL: d2s-0.1.12.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10

File hashes

Hashes for d2s-0.1.12.tar.gz
Algorithm Hash digest
SHA256 78e7cad0ab34a3f2ccbc22b86e0c521bf3ac8d76378b6a7756382e98bed45c6f
MD5 dd3a304b288294a4d9dd35d289fee08c
BLAKE2b-256 f21c6f609ce1efc92e123c25b260a48be31b951f5384e923c7fee71c4be89ee0

See more details on using hashes here.

File details

Details for the file d2s-0.1.12-py3-none-any.whl.

File metadata

  • Download URL: d2s-0.1.12-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10

File hashes

Hashes for d2s-0.1.12-py3-none-any.whl
Algorithm Hash digest
SHA256 59ec3b19211b6d39f5d23117efbdc245fb07da931021de7f2745d05482d51556
MD5 69cddfb336bdac777e9afc16ee9acb36
BLAKE2b-256 636e0df25dd7c3b94687060aa07617fdb60fd322d37ea1fa09a8ef36bfe48b23

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page