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

Complete documentation about the d2s-cli on the d2s documentation website 📖

Install with pipx

pipx 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

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

Set your terminal to use ZSH by default:

chsh -s /bin/zsh

A oh-my-zsh theme can be easily chosen for a personalized experience. See the zsh-theme-biradate to easily install a simple theme and configure your terminal in a few minutes.

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

To be tested.

Upgrade package

With pipx:

pipx uninstall d2s
pipx install d2s

With pip:

pip install --upgrade d2s 

Try it

Display the default help command

d2s

Create a d2s project in the given folder

d2s init project-folder-name

All d2s commands are designed to be run from the project folder, move to it

cd project-folder-name/

Project settings stored if .d2sconfig file.

Development setup

Install package and add it to requirements.txt:

pip install package && pip freeze > requirements.txt

Install for dev

Install d2s as executable in local for development. d2s will be updated directly on change in the code.

pip install --editable .

To publish a new version, upgrade the version in setup.py and use the following script to build and publish automatically using Docker:

./publish_pip.sh

Or do it locally:

# Build packages in dist/ folder
python3 setup.py sdist bdist_wheel
# Publish packages previously built in the dist/ folder
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.22.tar.gz (9.4 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.22-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: d2s-0.1.22.tar.gz
  • Upload date:
  • Size: 9.4 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.22.tar.gz
Algorithm Hash digest
SHA256 124f6440455a92525a66c907db1593d7a066213161e000db5eb7cb50ecc49080
MD5 b6552679a707f6e9d7d7a11552e908b0
BLAKE2b-256 bd0b981383f1b95ed6dd9f3aa32f2d75211f105b57651afdc84acdac99b48e99

See more details on using hashes here.

File details

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

File metadata

  • Download URL: d2s-0.1.22-py3-none-any.whl
  • Upload date:
  • Size: 9.8 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.22-py3-none-any.whl
Algorithm Hash digest
SHA256 c1eb905e6dc2817f4e8a5186db871d0981113d267c0cdcdc56fdda6b572772b6
MD5 b6abfc860c5b3e471ddc472da55e49a1
BLAKE2b-256 6e3b655ec1faa21877a2accdeb675978a1b2bb5bf899f4cad4596fda17834467

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