Plugins are files that contain one or more Service Provider implementations. Each plugin file could contain multiple Providers for different types of services, however typically each plugin file would contain only providers related in some fashion.
Rundeck includes a number of "built-in" providers, as well as a few "included" plugin files.
In this document "plugin" and "provider" are used somewhat interchangably. When referring to an actual file containing the provider implementations we will say "plugin file".
Rundeck Providers and Plugin Files
Rundeck supports several different types of plugins to perform different kinds of services:
The Rundeck core makes use of several different "Services" that provide functionality for the different steps necessary to execute workflows, jobs, and commands across multiple nodes.
Each Service makes use of "Providers". Each Provider has a unique "Provider Name" that is used to identify it, and most Services have default Providers unless you specify different ones to use.
Rundeck Plugin Files can contain more than one Provider.
Services fall into different categories, which determine how and where they are used.
Node Execution services - providers of these services operate in the context of a single Node definition, and can be configured at Node scope or higher:
Project services
Global services (framework level)
Workflow services
Notification services