Plugin Installation

ADL ships no plugins — each data source is a separate installable package. There are three ways to install plugins, depending on your use case.



Method 2 — ADL_PLUGIN_GIT_REPOS environment variable (quick, single plugin)

For a single plugin, set ADL_PLUGIN_GIT_REPOS in your .env before building:

ADL_PLUGIN_GIT_REPOS=https://github.com/wmo-raf/adl-ftp-plugin.git#0.8.9

Then rebuild:

make build
make up

For multiple plugins, separate URLs with commas — but for readability prefer plugins.toml once you have more than one:

ADL_PLUGIN_GIT_REPOS=https://github.com/wmo-raf/adl-ftp-plugin.git#0.8.9,https://github.com/wmo-raf/adl-tahmo-plugin.git#0.1.0

Method 3 — install-plugin command (ad-hoc, running container)

Install a plugin into an already-running stack without rebuilding:

# From a git repo
docker compose exec adl install-plugin --git https://github.com/wmo-raf/adl-ftp-plugin.git

# With a release tag
docker compose exec adl install-plugin --git https://github.com/wmo-raf/adl-ftp-plugin.git#0.8.9

# From a tarball URL
docker compose exec adl install-plugin --url https://example.com/my-plugin.tar.gz

# From a local folder already inside the container
docker compose exec adl install-plugin --folder /adl/plugins/adl_my_plugin

Checking installed plugins

docker compose exec adl list-plugins

Uninstalling a plugin

It is highly recommended to back up your data before uninstalling.

  1. Remove the plugin from plugins.toml (or from ADL_PLUGIN_GIT_REPOS)

  2. Delete and recreate the container:

    make down
    make build
    make up
    

If you uninstall via exec without removing the plugin from your configuration, the plugin will be re-installed on the next container restart because the configuration still references it.



Local plugin development

See Plugin Development Setup for how to develop and test a plugin from source against the ADL stack.