Skip to main content

About

PyPI version

Microservice to manage biomaj, acts as a frontend to receive biomaj-cli commands and execute operations

Needs mongo and redis

Development

flake8 --ignore E501 biomaj_daemon

Run

Message consumer:

export BIOMAJ_CONFIG=path_to_config.yml
python bin/biomaj_daemon_consumer.py

Web server

If package is installed via pip, you need a file named gunicorn_conf.py containing somehwhere on local server:

def worker_exit(server, worker):
    from prometheus_client import multiprocess
    multiprocess.mark_process_dead(worker.pid)

If you cloned the repository and installed it via python setup.py install, just refer to the gunicorn_conf.py in the cloned repository.

export BIOMAJ_CONFIG=path_to_config.yml
rm -rf ..path_to/prometheus-multiproc
mkdir -p ..path_to/prometheus-multiproc
export prometheus_multiproc_dir=..path_to/prometheus-multiproc
gunicorn -c ../path_to/gunicorn_conf.py biomaj_daemon.daemon.biomaj_daemon_web:app

Web processes should be behind a proxy/load balancer, API base url /api/daemon

API

For authentication, add api key to HTTP header X-API-KEY

For admin only, operations, add to config.yml

general:
  admin:
    - admin_user_id

TO use API, some operations are limited to

3.0.24: Fix pyaml setup

3.0.23: Expose endpoint, return 404 if bank does not exists

3.0.22: Add /api/daemon/expose endpoint for traefik auth requests to allow/deny access to /db web access

3.0.21: Add support for repair option Add cors support Fix /status/ko

3.0.20: Add some checks on options Add data-list and data-import options

3.0.19: Fix traefix prefix

3.0.18: Fix some bank status info checks Add new endpoint /api/daemon/bank//owns Add queued bank names in whatsup Update pika dependency release Add tags for traefik support

3.0.17: Allow use of env variables to override micro.x and rabbitmq variables in global.properties like for config.yml. Ex: WEB_LOCAL_ENDPOINT_DOWNLOAD defines proxy address for download web service, WEB_LOCAL_ENDPOINT defines global proxy address for all web services, etc. If not defined, will use values from global.properties

3.0.16: After migration checks, update db_schema to current version

3.0.15: Add --history option Catch SIGTERM to cancel bank update for SIGKILL

3.0.14: Fake version for Pypi re-upload

3.0.13: Allow per service local_endpoint definition Add --stats option Modify --version option to get all module details Add REST API to daemon (/api/daemon/...)

3.0.12: Add biomaj_daemon_consumer.py to python scripts for install with package

3.0.11: Disable daemon web service logging

3.0.10: Fix tail endpoint syntax

3.0.9: Fix #1 remove debug log Fix #2 log dir not removed with --remove-all if proxy option not set

3.0.8: Fix #78, for multiple banks update in monolithic config, if one fails, next banks are not updated Add /api/daemon/bank/x/log[/y] endpoint to get last bank session log file

3.0.7: Add whatsup support for non proxy config Skip bank config with errors

3.0.6: Fix logging for monolithic setup Add whatsup option Fix prometheus stats

3.0.5: Fix for python 2.x

3.0.4: Fix status page with other services Add missing README in package

3.0.3: Fix missing parameters

3.0.2: Move options to management to utils for reuse Fix --about-me

3.0.1: Micro service to manage biomaj updates

Metadata

Release files for biomaj-daemon 3.0.24

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for biomaj-daemon 3.0.24
File Interpreter ABI Platform
biomaj_daemon-3.0.24-py2.py3-none-any.whl Python 2, Python 3 none any Details

Release files / biomaj_daemon-3.0.24-py2.py3-none-any.whl

Download URL biomaj_daemon-3.0.24-py2.py3-none-any.whl
Size 19.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
7e1b5d0290056a0a98612ce25d7d725acb2fe9c84f743ee9250bdb305453e013
BLAKE2b-256 checksum
How to use checksums
4bf68f8e38f9b213be634c272826e2c6a1162f235e26d585d015214c48b3d242
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 CPython/3.10.4

Release history Release notifications | RSS feed

This release

3.0.24 This release

1 release file

3.0.22

1 release file

3.0.20

2 release files

3.0.18

2 release files

3.0.17

1 release file

3.0.16

1 release file

3.0.15

1 release file

3.0.14

1 release file

3.0.12

1 release file

3.0.11

1 release file

3.0.10

1 release file

3.0.9

1 release file

3.0.8

1 release file

3.0.7

1 release file

3.0.6

2 release files

3.0.5

2 release files

3.0.4

2 release files

3.0.3

2 release files

3.0.2

2 release files

3.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page