Since GoCD 18.3, there is support for plugins with multiple extensions in them. All existing single-extension plugins will still work.
There are two points to remember about multi-extension plugins:
-
It's not possible to have two extensions of the same type in the same plugin. For instance, you cannot have two "task" extensions.
-
Only one extension can respond to the configuration set of requests.
This example plugin implements three extensions:
Only the analytics extension responds to configuration requests in this plugin. The notification extension responds with a 400 status.
Run:
gradle clean assemble
The plugin JAR file will be in build/libs/
.