In the fifth blog in our series of five, we lay out options for hosting and distributing your OpenTAP plugin.
Hosting and Distribution
The OpenTAP developer community and the larger OpenTAP ecosystem (developers, users, partners et al.) benefit from the availability of plugins to support the widest possible range of test automation applications and scenarios. To encourage development and distribution of plugins, the OpenTAP project enables creation and distribution of plugins licensed as both open source software and/or as proprietary/closed source programs, hosted together with OpenTAP in the project repository or in other locations.
Following are concrete, real-world examples of how you are likely to create and distribute your plugin and your licensing options for each.
Creating and Contributing Community Plugins as Open Source
The OpenTAP test automation platform is open source software, so it makes sense that extensions to that platform also be open source (although it’s not required). If you publish your plugin under a license approved for OpenTAP (MPLv2, BSD or MIT), you have the option of hosting it directly on the OpenTAP project site and repository, together with the OpenTAP core engine and with other approved open source plugins. Of course, you can always host or distribute such a plugin on your company site or repository, or together with your product, as well.
Creating an Open Source Plugin and Hosting it Yourself
The universe of open source licenses is large, and the choice of licenses is varied. If you choose a license not currently approved for OpenTAP, or are required to use one because of dependencies on reciprocally licensed software in your plugin, your hosting options are still very broad. You can host or distribute your plugin via
your company web site
your company repository on GitHub, GitLab or equivalent project hosting platforms
direct distribution with your product or on removable media (CD-ROM, etc.)
It is important to understand that if your plugin license is incompatible with the OpenTAP platform license or with other software in a test automation configuration, you are effectively passing responsibility for resolving that incompatibility “downstream” to your customers or other recipients of your plugin.
Creating and Distributing Closed Source Plugins
This scenario, while conceptually appealing to many companies (especially their legal departments), is today an exceptional case. Given the scope and extent of dependencies on other software present in modern software), it is difficult to imagine developing and distributing a 100% proprietary plugin for OpenTAP. That said, if your organization has developed a proprietary plugin, and you want to share or distribute it, you have several options for making it available to the OpenTAP ecosystem:
Host on your company’s site or repository
Distribute the plugin via a third-party site or marketplace
Hosting proprietary plugins is currently under discussion for the OpenTAP project site.
Enriching the OpenTAP Ecosystem
The OpenTAP ecosystem spans the gamut of end-users to integrators to test equipment manufacturers and beyond. New and incremental functionality from plugins is a key factor for making the OpenTAP platform attractive and helping test automation address the highly dynamic technology marketplace.
Take the first step.
Visit OpenTAP.io and join the OpenTAP Community.
· Learn about how to write and package plugins – Video: Creating OpenTAP Packages
· Check out a template for building plugins
· Explore the OpenTAP Project on GitHub