madbot-community-abromics
Madbot Data plugin for Abromics: Python package abromics-plugin, import path abromics_plugin, main class AbromicsPlugin, Django app config AbromicsPluginConfig.
Upstream: madbot_community_abromics on GitLab.
What it does
Registers a Madbot plugin that exposes Abromics-backed data and file access so the Madbot API (and clients such as Abromics Analysis) can open connections and resolve datalinks. The connection payload from Abromics uses plugin id:
abromics_plugin.plugins.AbromicsPlugin
Requirements
- Python 3.10+
- A running Madbot API using the same interpreter / virtual environment as this package (and the same for Celery workers if you use them).
- Dependencies:
django,requests(seepyproject.toml). Madbot’splugin_apiis expected to be onPYTHONPATHwhen Madbot runs.
Install
Clone and install in editable mode from the directory that contains pyproject.toml:
git clone git@gitlab.com:ifb-elixirfr/madbot/plugins/community/madbot_community_abromics.git
cd madbot_community_abromics
pip install -e .
If your Madbot checkout provides a helper (e.g. a Pixi task in api/ that installs this path), you can use that instead—what matters is that import abromics_plugin succeeds in the process that serves the API and runs background jobs.
Docker: add the same pip install -e . (or equivalent) to the API (and worker) image build, not only your laptop venv.
Configure Madbot
-
Add the Django app module to
MADBOT_INSTALLED_PLUGINS(comma-separated list in.env):MADBOT_INSTALLED_PLUGINS=abromics_plugin,madbot_ena
Include any other plugins you use; order is only relevant if you rely on specific discovery behaviour.
-
Restart the API and Celery (or reload as your deployment does).
-
After changing plugin metadata, run Madbot’s plugin reload if your setup uses it (e.g.
reload_pluginsmanagement command) so schemas stay in sync.
If POST /api/connections returns 400 with plugin / does_not_exist, the runtime cannot import abromics_plugin.plugins.AbromicsPlugin—fix the install in that environment and restart.
Package layout
| Path | Role |
|---|---|
abromics_plugin/ |
Django app and plugin implementation |
abromics_plugin/plugins.py |
AbromicsPlugin (Data plugin class) |
abromics_plugin/apps.py |
AbromicsPluginConfig |
PyPI-style name: abromics-plugin ([project].name in pyproject.toml).
CI / PyPI releases
On push to dev, GitLab CI runs semantic-release (conventional commits). If there is a releasable change, it bumps the version in pyproject.toml and abromics_plugin/__init__.py, updates CHANGELOG.md, builds the sdist/wheel, uploads to PyPI, and pushes the release commit.
CI/CD variables (Settings → CI/CD → Variables):
| Variable | Purpose |
|---|---|
GITLAB_TOKEN |
Project access token with api + write_repository (push tags/commits from the job) |
PYPI_TOKEN |
PyPI API token (upload scope); used as twine password with username __token__ |
Local dry-run (optional): pixi install -e dev && npm install && npx semantic-release --dry-run (export the same env vars or use .env tooling—never commit tokens).
License
MIT — Copyright (c) 2026 Abromics Team.
Metadata
Release files for abromics-plugin 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| abromics_plugin-1.0.0.tar.gz | 16.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| abromics_plugin-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.3 kB
Release files / abromics_plugin-1.0.0.tar.gz
| Download URL | abromics_plugin-1.0.0.tar.gz |
|---|---|
| Size | 16.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cf54d99e4431ed9f1d7bc9e0e7ab7c96fd0c06a2b8e0a11ae0ba7bbb689b6707
|
|
BLAKE2b-256 checksum How to use checksums |
4e05826b1fa082f64c42dcd0cfc2b39b5f075a017d3407e5e7986ef6dbff2d2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / abromics_plugin-1.0.0-py3-none-any.whl
| Download URL | abromics_plugin-1.0.0-py3-none-any.whl |
|---|---|
| Size | 16.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aa176554b6e8051ec032b528544a865eb2e6955ff46b3109ee5f67aef4d57f65
|
|
BLAKE2b-256 checksum How to use checksums |
d3f7e654aea4f0cf6580baf4559ba0ca3c3fd073addb0f504d1157cfe0a0aee0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|