Plug-in Development Kit

The Plug-in Development Kit (PDK) is designed to help you build your own pattern projects, which include software components, script packages, pattern types, plug-ins. The PDK provides creation, configuration, packaging, deployment, and debug capabilities for these projects.

Contents of the PDK

The PDK is a compressed file package that available as a download from developerWorks® or from Cloud Pak System Software for Power® itself. It includes a plug-in and pattern type build environment, samples, and a tool to create a plug-in starter project.
File or directory Description
docs Contains documentation for the PDK.
  • docs/index.html Open this file with your web browser to view a list of links to the documentation in the docs directory.
  • docs/PDKSampleUsersGuide.pdf
  • docs/javadoc

    This directory contains Javadoc for Cloud Pak System Software interfaces that the plug-ins can invoke from the Java™ code.

  • docs/pydoc

    This directory contains documentation for the maestro module that is used in lifecycle Python scripts for nodeparts and parts.

iwd-pdk-workspace The root directory of your development workspace. Each software package, script package, plug-in, pattern type has its own project directory in this root directory. These directories can be used directly from the command line or imported into Eclipse as plug-ins.
com.ibm.maestro.plugin.pdk.site.zip Contains an Eclipse plug-in that you can use in your Eclipse or Rational® Application Developer environment to create and edit some of the configuration files for your projects. For more information, see "Installing the Plug-in Development Kit Eclipse plug-in."
pdk-debug-{version}.tgz This file is the debug plug-in that can be installed into the Cloud Pak System Software instance and used to develop and debug the plug-ins. The plug-in includes features to deploy and debug a topology document, which is a JSON object, and debug plug-in installation and lifecycle Python scripts on deployed nodes. It does not support debugging for Java code in plug-ins. For more information, see "Debug plug-in."
pdk-unlock-{version}.tgz Use the unlock plug-in to delete a plug-in that is in use by a deployed application, replace it with an updated version, and activate the modified plug-in on deployed virtual machines in the application. For more information, see "Unlock plug-in."

plugin.depends tool

The plugin.depends tool is provided in the IBMWorkloadPluginDevKit_<version>.zip file. This plug-in development tool is a standard OSGi plug-in project. The tool includes Cloud Pak System Software for Power plug-in libraries for development, build tools for plug-in and pattern types, and an Ant build library. The Ant build library includes the following files:
  • The lib folder that includes all of the Java archive (JAR) files that are required for plug-in development.
  • The lib-build folder that includes all of the libraries that are required for the plug-in build script.
  • The build/build.plugins.xml file that is the base internal build script file for single plug-in building. The build script files of each plug-in import this build script file first and add more actions, if necessary.
  • The build/build.patterntypes.xml file, which is a generic pattern type building script. The build script file of each pattern type imports this build script file first and adds more actions, if necessary.
  • The create.plugin.project.xml file, which is an Ant script that is used to create projects for the plug-ins in your workspace.
    You can use the create.plugin.project.xml file of plugin.depends to create projects for your plug-ins. This file creates a template or a Java plug-in project. There are two required parameters: project-name and plugin-name. Using these two parameters creates a template project. The third parameter, java.classname, is optional. If a valid class name is given, a Java plug-in project is created. The class name can be a simple name like MyPlugin or a package-qualified name, like com.acme.iwd.plugin.MyPlugin.
    Important: Do not add the .java extension to the end of the Java plug-in project because the extension is assumed.
  • The plugin-project-template that is used by the create.plugin.project.xml Ant script to create plug-in projects.