Skip to main content

A mongodb (portable) "pf" client

Project description

https://badge.fury.io/py/pfmongo.svg https://travis-ci.org/FNNDSC/pfmongo.svg?branch=master https://img.shields.io/badge/python-3.5%2B-blue.svg

Quick Overview

pfmongo is a python client/module (CLI and API) for simplifying the interaction with a MongoDB. The module provides some idiosyncratic abstractions that are nonetheless hoped to be logically straightforward. The repository includes a docker-compose.yml that allows for easy instantiation of the MongoDB infrastructure.

Warning, Will Robinson!

If you wish to use pfmongo on your own computer, you do need to note these prerequisites:

docker and docker-compose

Since pfmongo interacts with a MongoDB, the easiest mechanism to deploy this database is via docker-compose and hence docker. Installation of these is beyond the scope of this document, but should be straightforward enough. Google is your friend in that quest.

Overview

pfmongo provides a somewhat opinionated abstraction for interacting with a MongoDB.

Installation

Using PyPI

The best method of installing this script and all of its dependencies is by fetching it from PyPI using a python virtual environment.

pip3 install pfmongo

Using CLI

Alternatively, from a cloned version of the repository:

pip3 install -r requirements.txt -U ./

or for development purposes

pip3 install -r requirements.txt -e ./

Running

Ecosystem

Assuming you have docker and docker-compose on your system, do

docker-compose up -d

Environment

Several environment variables need to be set prior to using pfmongo:

Linux

export MD_URI=mongodb://localhost:27017 && export MD_USERNAME=admin && export MD_PASSWORD=admin && export MD_SESSIONUSER=rudolph

Windows

$env:MD_USERNAME=admin
$env:MD_PASSWORD=admin
$env:MD_URI=mongodb://localhost:27017
$env:MD_SESSIONUER=rudolph

Command line arguments

pfmongo --help

Examples

alias mdb='pfmongo'
mdb database connect PACSDCM
mdb collection connect MRN
mdb document add --file examples/lld.json --id lld.json

-30-

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

pfmongo-0.9.150.tar.gz (55.8 kB view details)

Uploaded Source

File details

Details for the file pfmongo-0.9.150.tar.gz.

File metadata

  • Download URL: pfmongo-0.9.150.tar.gz
  • Upload date:
  • Size: 55.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for pfmongo-0.9.150.tar.gz
Algorithm Hash digest
SHA256 af2893826fc0088e5862261b443f68832da87c24cc3ae156f9c2a21e25b0c408
MD5 52b048516dbd8b846bc897d770636c51
BLAKE2b-256 85e29198186fad12199763b824f0a4f1c9d7486d2c7dcd6f4edd8869f5aac129

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