Skip to main content

NoSQL in-memory Tango DB for project testing

Project description

No SQL in-memory Tango database for testing.

It provides

  • An human readable data structure based on Yaml to describe the content of a tango database;
  • Helpers to launch such database in python for testing.

The code was previously at:

Connectors

Two connectors are provided using the same data structure:

  • beacon using a Redis/Beacon infrastructure to store the database;
  • yaml using direct yaml files with in-memory only storage.

Command line

The database can be launched the following ways.

Using the actual Redis database:

NosqlTangoDB --port 10000 --db_access=beacon 2

Using a specific directory containing Yaml files:

NosqlTangoDB --port 10000 --db_access=yaml:tests/data/test1/ 2

Using a specific hostname

NosqlTangoDB --port 10000 --host localhost --db_access=yaml:tests/data/test1/ 2

Python

The following code can be used in Python projects.

It spawns the database process with a context manager.

The port is yield when the database is ready to be used.

It finally terminates the database process.

from nosqltangodb import helper

with helper.running_db(
    name="2",
    db_access="yaml",
    yaml_root=yaml_root,
    port="auto",
    debug_protocol=True,
    update_tango_host=True,
    timeout=10,
) as db:
    print("Tango DB port:", db.port)

Project release

Here is the template for pypi credencial.

# ~/.pypirc
[nosql-tango-db]
repository = https://upload.pypi.org/legacy/
username = __token__
password = pypi-...

The project uses setuptools-scm configured such way the distribution is tagged according to the actual commit tag.

Tag your release:

git tag x.y.z

Build the package:

pixi run dist

# The wheel is created inside ./dist
ls ./dist

Upload the result to pypi:

pixi run upload
# Same as: twine upload dist/nosqltangodb-*.whl -r nosqltangodb

Finally:

git push --tag

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

nosqltangodb-1.0.8-py3-none-any.whl (46.3 kB view details)

Uploaded Python 3

File details

Details for the file nosqltangodb-1.0.8-py3-none-any.whl.

File metadata

  • Download URL: nosqltangodb-1.0.8-py3-none-any.whl
  • Upload date:
  • Size: 46.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for nosqltangodb-1.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 3bcb9e08681c577a0990abd13c569a47b1a85dac04dd039363a5fcda8382c0d3
MD5 0d3003bb427f6011f440b75a86d1fdfe
BLAKE2b-256 872f78b136d30b2c7eab5a816623f248986cab613ff91926f106b9cddcd001dc

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