Skip to main content

Storage support for 4DN Data Portals.

Project description

Build status

Overview

DCIC Snovault is a JSON-LD Database Framework that serves as the backend for the 4DN Data portal and CGAP. Check out our full documentation here.

Installation in 4DN components

DCIC Snovault is pip installable as the dcicsnovault package with:

$ pip install dcicsnovault``

However, at the present time, the functionality it provides might only be useful in conjunction with other 4DN-DCIC components.

NOTE: If you’d like to enable Elasticsearch mapping with type=nested, set the environment variable “MAPPINGS_USE_NESTED” or set the registry setting “mappings.use_nested”.

Installation for Development

Currently these are for Mac OSX using homebrew. If using linux, install dependencies with a different package manager.

Step 0: Install Xcode

Install Xcode (from App Store) and homebrew: http://brew.sh

Step 1: Verify Homebrew Itself

Verify that homebrew is working properly:

$ brew doctor

Step 2: Install Homebrewed Dependencies

Install or update dependencies:

$ brew install libevent libmagic libxml2 libxslt openssl postgresql graphviz python3
$ brew install freetype libjpeg libtiff littlecms webp  # Required by Pillow
$ brew cask install adoptopenjdk8
$ brew install elasticsearch@5.6

NOTES:

  • If installation of adtopopenjdk8 fails due to an ambiguity, it should work to do this instead:

    $ brew cask install homebrew/cask-versions/adoptopenjdk8
  • If you try to invoke elasticsearch and it is not found, you may need to link the brew-installed elasticsearch:

    $ brew link --force elasticsearch@5.6
  • If you need to update dependencies:

    $ brew update
    $ rm -rf encoded/eggs
  • If you need to upgrade brew-installed packages that don’t have pinned versions, you can use the following. However, take care because there is no command to directly undo this effect:

    $ brew update
    $ brew upgrade
    $ rm -rf encoded/eggs

Step 3: Running Poetry

To locally install using versions of Python libraries that have worked before, use this:

$ poetry install

Updating dependencies

To update the version dependencies, use:

$ poetry update

This command also takes space-separated names of specific packages to update. For more information, do:

$ poetry help update

Managing poetry.lock after update

There may be situations where you do this with no intent to check in the resulting updates, but once you have checked that the updates are sound, you may wish to check the resulting poetry.lock file.

Publishing

Normally, a successful build on a tagged branch will cause publication automatically. It should not be necessary for you to manually use:

$ poetry publish

Also, you would need appropriate credentials on PyPi for such publication to succeed. As presently configured, these credentials need to be in the environment variables PYPI_USER and PYPI_PASSWORD. If you attempt to do this manually, be sure the version is set properly!

Running tests

To run specific tests locally:

$ bin/test -k test_name

To run with a debugger:

$ bin/test --pdb

Specific tests to run locally for schema changes:

$ bin/test -k test_load_workbook

Run the Pyramid tests with:

$ bin/test

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

dcicsnovault-3.0.2.tar.gz (183.4 kB view details)

Uploaded Source

Built Distribution

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

dcicsnovault-3.0.2-py3-none-any.whl (214.6 kB view details)

Uploaded Python 3

File details

Details for the file dcicsnovault-3.0.2.tar.gz.

File metadata

  • Download URL: dcicsnovault-3.0.2.tar.gz
  • Upload date:
  • Size: 183.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.6.3 Linux/4.4.0-101-generic

File hashes

Hashes for dcicsnovault-3.0.2.tar.gz
Algorithm Hash digest
SHA256 a4c0ed6447accf43f5f4c5498f3b55624cbefff751dd8abe19c70ab355c3586d
MD5 23fb8136ebd903f0264107afe014271e
BLAKE2b-256 531cc962deb5b86277c37d53803afa27293f66595a2023db573dba7740aac8af

See more details on using hashes here.

File details

Details for the file dcicsnovault-3.0.2-py3-none-any.whl.

File metadata

  • Download URL: dcicsnovault-3.0.2-py3-none-any.whl
  • Upload date:
  • Size: 214.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.6.3 Linux/4.4.0-101-generic

File hashes

Hashes for dcicsnovault-3.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 da2d084247cf218e00cd87f6b59f568c5930d417c72d7a7060dbfbe5742cc802
MD5 8f3970c2cd763df0ae0898e06b0ab769
BLAKE2b-256 b8847412bfa680b1b179fbb8f98007bda12ae7559ba1df023728cd50e72253bb

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