Overview of plugins in IDP
Harness IDP is built on top of the Backstage plugin architecture and supports a curated list of plugins. Plugins are often used to show additional metadata about a software component on the software catalog. For example, plugins show information about CI/CD pipelines, alerts, incidents, and project status. The curated list of plugins is a subset of publicly available Backstage plugins. Along with this we support custom plugins as well which users can upload into IDP. Also, we are constantly adding new plugins from the marketplace and building new plugins of our own.
Configuration
A typical plugin in IDP is configured using the options described in this section.
Application configuration YAML
An application configuration is a YAML-driven way of configuring a plugin's behavior, and it is stored in a file named app-config.yaml. The application configuration file is mostly used to define how a frontend-only plugin makes authenticated calls to a third-party provider. Most plugins do not require you to change anything in their configuration files.
Secrets
A plugin configuration allows you to define variables whose values are secrets. The variables can be used in the application configuration YAML file. The secret is usually an API key for the third-party provider that the plugin supports. Any secret variable defined as ${}
in the application configuration YAML file must have a corresponding secret value defined. The secrets configured in IDP are stored in the Harness platform's built-in secret manager or your own secret manager. In case you are using your own secret manager, you will need to configure a Delegate proxy like the one below and ensure the delegate has access to your secret manager.
The secret variables in IDP must be globally unique across all plugins. This requirement ensures that you can reuse one plugin's secret variable in another plugin's configuration. However, we recommend redefining variables that are required by a plugin for the benefit of other users.
(Optional) Delegate proxy
Plugins that support publicly-accessible third-party providers can connect with the provider directly. However, some plugins, such as the Kubernetes plugin, require access to systems that are hosted in your private network. Such plugins require Harness Delegates, which serve as an HTTP proxy to connect to services running in your private network. In the configuration of the plugin, you can specify a host or IP address and choose which delegate to use when making requests.
You can learn more about the architecture of Delegate Proxy.
FAQs
What plugins are available in Harness IDP?
See the list of curated plugins.
A plugin is available in the Backstage marketplace but not in Harness IDP. Can we file a request to add the plugin to IDP?
We’re happy to expand our curated plugin list based on customer requests. Submit a request in the marketplace to make a plugin available in your Developer Portal.
We are looking for a plugin that is not present in the Backstage marketplace. What are our options?
- Go to plugin ideas by the Backstage community and check whether a request already exists. If not, you can create one.
- You can build a new Backstage plugin and publish it on the marketplace. Start here and search for "how to create a Backstage plugin".
- You can build a custom plugin and use it in Harness IDP, without making the source public.