Informatics Matters Data-Manager Metadata
=========================================
A metadata framework package for the Data Tier Data Manager service.
The ``im-data-manager-metadata`` package is a set of utilities
employed by the `Informatics Matters`_ Data-Manager service
as a metadata framework for molecular datasets.
.. image:: /docs/data-manager-metadata.png
:width: 800
:alt: Data Manager Metadata Classes
Dependencies
************
- PyYAML>=5.3
Running the Unit Tests
**********************
>>> python -m venv venv
>>> source venv/bin/activate
>>> pip install --upgrade pip
>>> pip install -r package-requirements.txt
>>> python -m unittest test.test_metadata
>>> python -m unittest test.test_api
Running the Command Line Interface *md-manage.py*
*************************************************
The data manager metadata command line interface can be used by applications to
add annotations to the Metadata by means of an annotations.json files that can be
uploaded.
- help functions. Note that the *annotation_type* (lb, fd or se) is required.
>>> python md_manage.py -h
>>> python md_manage.py lb -h
>>> python md_manage.py fd -h
>>> python md_manage.py se -h
- Creates a label annotation in an annotations.json file placed in test/output.
Note that the *label* is required. Running the command again will create a second annotation
in the same file (i.e. a list of two).
>>> python md_manage.py lb test/output/results.sdf 'foo' -lv='bar'
- Creates a FieldsDescriptorAnnotation in an annotations.json file placed in test/output.
If the annotations.json file exists it will add it to the list of annotations in the file.
>>> python md_manage.py fd test/output/results.sdf -fo='squonk2-job'
-fp='minimizedAffinity,number,Binding affinity
predicted by smina using the vinardo scoring function,true,true'
-fd='Run smina docking'
- Creates a service execution annotation in an annotations.json file placed in test/output.
>>> python md_manage.py se test/output/results.sdf -su=bob -sys='run-smina'
-sy='test/input/virtual-screening.yaml'
-sp param1=val1 param2=val2 -fo='squonk2-job'
-fp='minimizedAffinity,number,Binding affinity predicted,true,true'
-fd='Run smina docking'
Contributing
************
The project uses: -
- `pre-commit`_ to enforce linting of files prior to committing them to the
upstream repository
- `Commitizen`_ to enforce a [Convention Commit] commit message format
- `Black`_ as a code formatter
You **MUST** comply with these choices in order to contribute to the project.
To get started review the pre-commit utility and the conventional commit style
and then set-up your local clone by following the **Installation** and
**Quick Start** sections: -
>>> pip install -r package-requirements.txt
>>> pre-commit install -t commit-msg -t pre-commit
Now the project's rules will run on every commit, and you can check the
current health of your clone with: -
>>> pre-commit run --all-files
.. _Informatics Matters: http://www.informaticsmatters.com
.. _black: https://black.readthedocs.io/en/stable
.. _commitizen: https://commitizen-tools.github.io/commitizen/
.. _pre-commit: https://pre-commit.com
Raw data
{
"_id": null,
"home_page": "https://github.com/InformaticsMatters/squonk2-data-manager-metadata",
"name": "im-data-manager-metadata",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3",
"maintainer_email": null,
"keywords": "jenkins",
"author": "Tim Dudgeon",
"author_email": "tdudgeon@informaticsmatters.com",
"download_url": null,
"platform": "any",
"description": "Informatics Matters Data-Manager Metadata\n=========================================\n\nA metadata framework package for the Data Tier Data Manager service.\nThe ``im-data-manager-metadata`` package is a set of utilities\nemployed by the `Informatics Matters`_ Data-Manager service\nas a metadata framework for molecular datasets.\n\n.. image:: /docs/data-manager-metadata.png\n :width: 800\n :alt: Data Manager Metadata Classes\n\nDependencies\n************\n- PyYAML>=5.3\n\n\nRunning the Unit Tests\n**********************\n\n >>> python -m venv venv\n >>> source venv/bin/activate\n >>> pip install --upgrade pip\n >>> pip install -r package-requirements.txt\n >>> python -m unittest test.test_metadata\n >>> python -m unittest test.test_api\n\nRunning the Command Line Interface *md-manage.py*\n*************************************************\n\nThe data manager metadata command line interface can be used by applications to\nadd annotations to the Metadata by means of an annotations.json files that can be\nuploaded.\n\n - help functions. Note that the *annotation_type* (lb, fd or se) is required.\n\n >>> python md_manage.py -h\n >>> python md_manage.py lb -h\n >>> python md_manage.py fd -h\n >>> python md_manage.py se -h\n\n - Creates a label annotation in an annotations.json file placed in test/output.\n Note that the *label* is required. Running the command again will create a second annotation\n in the same file (i.e. a list of two).\n\n >>> python md_manage.py lb test/output/results.sdf 'foo' -lv='bar'\n\n - Creates a FieldsDescriptorAnnotation in an annotations.json file placed in test/output.\n If the annotations.json file exists it will add it to the list of annotations in the file.\n\n >>> python md_manage.py fd test/output/results.sdf -fo='squonk2-job'\n -fp='minimizedAffinity,number,Binding affinity\n predicted by smina using the vinardo scoring function,true,true'\n -fd='Run smina docking'\n\n - Creates a service execution annotation in an annotations.json file placed in test/output.\n\n >>> python md_manage.py se test/output/results.sdf -su=bob -sys='run-smina'\n -sy='test/input/virtual-screening.yaml'\n -sp param1=val1 param2=val2 -fo='squonk2-job'\n -fp='minimizedAffinity,number,Binding affinity predicted,true,true'\n -fd='Run smina docking'\n\nContributing\n************\n\nThe project uses: -\n\n- `pre-commit`_ to enforce linting of files prior to committing them to the\n upstream repository\n- `Commitizen`_ to enforce a [Convention Commit] commit message format\n- `Black`_ as a code formatter\n\nYou **MUST** comply with these choices in order to contribute to the project.\n\nTo get started review the pre-commit utility and the conventional commit style\nand then set-up your local clone by following the **Installation** and\n**Quick Start** sections: -\n\n >>> pip install -r package-requirements.txt\n >>> pre-commit install -t commit-msg -t pre-commit\n\nNow the project's rules will run on every commit, and you can check the\ncurrent health of your clone with: -\n\n >>> pre-commit run --all-files\n\n.. _Informatics Matters: http://www.informaticsmatters.com\n.. _black: https://black.readthedocs.io/en/stable\n.. _commitizen: https://commitizen-tools.github.io/commitizen/\n.. _pre-commit: https://pre-commit.com\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A framework for Informatics Matters dataset metadata",
"version": "2.0.0",
"project_urls": {
"Homepage": "https://github.com/InformaticsMatters/squonk2-data-manager-metadata"
},
"split_keywords": [
"jenkins"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "77e8d09d4ae00755fb80c1f1f85dfe67a196bfcde17a46e51f2ba37f841cc02a",
"md5": "c151e88227596cc7a83e5659a86286fc",
"sha256": "441788ee5cd441c8e3e22bdd3fdd8db0d8806d622073fb4e5799d904f20a5c09"
},
"downloads": -1,
"filename": "im_data_manager_metadata-2.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c151e88227596cc7a83e5659a86286fc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3",
"size": 18687,
"upload_time": "2024-04-11T16:49:23",
"upload_time_iso_8601": "2024-04-11T16:49:23.106879Z",
"url": "https://files.pythonhosted.org/packages/77/e8/d09d4ae00755fb80c1f1f85dfe67a196bfcde17a46e51f2ba37f841cc02a/im_data_manager_metadata-2.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-11 16:49:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "InformaticsMatters",
"github_project": "squonk2-data-manager-metadata",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "im-data-manager-metadata"
}