Introduction to plugin development

2 minute readReferenceExtensibilityDeveloper productivity

A plugin provides an ability to extend CloudBees CD/RO capabilities by providing integrations with CloudBees CD/RO and, where necessary, with third party software products with the goal of addressing use cases ranging from code check-ins to the releasing applications. Here are some examples:

  • EC-Git performs code checkouts, preflight build, and continuous integration with any Git compliant SCM, for example GitHub, GitLab, and so on.

  • EC-Artifactory publishes and retrieves artifacts fromJFrog Artifactory.

  • EC-Weblogic deploys web applications to the Weblogic application server.

  • EC-AWS-EC2 spins compute resources to AWS.

  • EC-Jenkins runs and monitors build jobs on a Jenkins CI server.

  • EC-Jira manages issues in the Atlassian Jira Issue Management System.

  • EC-Admin provides a collection of administrative procedures that helps in managing the server.

Plugin types

There are two types of plugins:

  • CloudBees CD/RO plugins: extend as mentioned above and are installed on the automation platform.

  • Native plugins: Plugins that make features available in other platforms, for example Jenkins, TFS, and so on. These plugins are developed using the specific platform’s native plugin infrastructure and typically use Rest APIs for integrating with. These plugins run natively on a third party platform using its infrastructure.

Document assumptions

  • This guide is meant for developers who want to develop plugins for the CloudBees CD/RO platform, using the newly introduced CloudBees CD/RO plugin development framework (pdk).

  • This guide assumes that the developer is already familiar with CloudBees CD/RO concepts, tools, and APIs as documented in the CloudBees CD/RO documentation.

  • This guide addresses plugins that are installed on the CloudBees CD/RO platform, only, and not native plugins.

Deprecation of ElectricFlow 6.0 Plugin SDK

Beginning with CloudBees CD/RO 9.1, the current document replaces the Plugin developer guide mentioned below and provides the only methodology for creating plugins going forward. Further the SDK and the methodology of developing Plugins as mentioned in the guide (see below) are considered obsolete, not recommended for use and not supported.