Extensions
Plugins can be written and put in the lib/python/omero/plugins
directory. On execution, all plugins in that directory are registered
with the CLI.
For testing purposes the --path
argument can be used to point to other
plugin files or directories, too.
Alternatively, plugins can be added to any directory ending with
omero/plugins
. If this directory is part of the PYTHONPATH
the
CLI will automatically include them. An example of such a plugin is
omero-cli-render.
Team-supported CLI plugins will be pip-installable. Search for “omero cli” on PyPI.
Thread-safety
The omero.cli.CLI
should be considered not thread-safe. A single
connection object is accessible from all plugins via
self.ctx.conn(args)
, and it is assumed that changes to this object
will only take place in the current thread. The CLI instance itself,
however, can be passed between multiple threads, as long as only one
accesses it sequentially, possibly via locking.
See also
- Extending OMERO.server
Other extensions to OMERO