Skip to main content

Omero Data Import Export Queue

Project description

omero-quay

![Actions Status][actions-badge] Documentation Status

PyPI version PyPI platforms

omero-quay is a microscopy data transport layer between data management tools.

Currently, it supports the iRODSOMERO architecture built at France BioImaging fbi-omero.

omero-quay orchestrate data transport between iRODS and OMERO

Objectives

  • Interact with data management tools APIs
  • Trigger actions:
    • Create / Read / Update / Delete
    • Transport / Import
  • Synch databases :warning:

Schema driven development

  • manifest.yml defines the data schema in LinkML
  • follows an Investigation Study Assay hierarchy
  • maps APIs, objects ids, ACLs
  • only transports "crates", not individual files

ZeroMQ

{ width="70%" }

  • Message = json dump of a manifest instance
  • Central brocker routes messages based on state

Example route:

{ width="60%" }

Install

This is early stage and only meant for developers.

For now, install from source.

  1. Get and install a conda distribution. We prefer micromamba
  2. Download omero-quay from this repository (as an archive or with git)
  3. In the omero-quay directory:
    • create the conda environment conda env create -f environment.yml
    • activate it conda activate quay
    • install omero-quay in editable mode pip install -e .[dev]

For now, this software alone is not very useful, and works only within the omero-fbi frameworks. Work on setting up a docker compose view of this format is in the works. Look into the tests folder for examples.

Configuration

The configuration is described in quay.yml. On the client or server machine, adapt this file and copy it to /home/user/.config/quay.yml

Usage

Remote client

Install

  • Install omero-quay (see above)
  • add irods server IP to /etc/hosts
  • Write the client configuration file and save it to $HOME/.config/quay.yml
---
irods:
  # This is the configuration for Montpellier
  IRODS_HOST: irods-mtp.omero-fbi.fr
ingest:
  POST_URL: https://mtp.omero-fbi.fr/post

Import data

(all paths below are relative to the omero-quay root directory where this README file resides)

  • Put an excel file with the relevant data at the root of the directory you want to import

  • Run the import client (make sure the quay environment is activated):

python scripts/desktop_cli.py other/path/to/your.xlsx path_in_irods

Service

On the OMERO server machine:

python scripts/run_service.py

Excel client

On a client machine

python scripts/excel_import.py

Autoingest with iRODS

TODO

Tests

In order to run tests, you need to boot up docker containers for the omero server, irods catalog provider and nfsrods.

This is achieved by running up.sh script in tests/containers

cd tests/containers
./up.sh

After some minutes and possible connection retries, you should have the containers running.

You can then run the tests from the root of the repo with pytest

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

omero_quay-1.0.0.tar.gz (16.2 MB view details)

Uploaded Source

Built Distribution

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

omero_quay-1.0.0-py3-none-any.whl (78.5 kB view details)

Uploaded Python 3

File details

Details for the file omero_quay-1.0.0.tar.gz.

File metadata

  • Download URL: omero_quay-1.0.0.tar.gz
  • Upload date:
  • Size: 16.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for omero_quay-1.0.0.tar.gz
Algorithm Hash digest
SHA256 5b31151c2caf96f1385b2b513bc1811f693211821c2ec68399703e58690f31e0
MD5 a4342a241b433b3a08c29ed4d6c85f94
BLAKE2b-256 2a96ff4aecfd7c0827f5c3a128211000bd120b7b1c6a7af492af63aa3dda7332

See more details on using hashes here.

File details

Details for the file omero_quay-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: omero_quay-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 78.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for omero_quay-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 baf20afde3dbcefba75804670477348790182cea0faedcb54a8708435819bf63
MD5 bf53d386b1b5ea32943d7265f252a2bf
BLAKE2b-256 6ac827ba8a0a62467cd9fae6604fbe7d12679c35173a2ee3de2289ceaac77ea1

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