Skip to content

On Demand Release Process

Samantha Chan edited this page Sep 15, 2017 · 11 revisions

Guidelines for Toolkit on-demand release process

A release is published upon request. To submit a request, please open an issue with the following information:

  • What version of Streams this release needs to support? - This allows us to see which branch we need to release from.
  • A date when you need this release by - We will try our best to accommodate the date, but make no promise. This gives us an idea how urgent this request is.

Upon a request, a release proposal will be made. In the release proposal, we will document the following information:

  • Proposed Date when a release can be available
  • Toolkit Version
  • Supported Streams version
  • Release Notes to document What's New and Changed
  • We will build the release based on the proposal information. Toolkit may follow the Toolkit Versioning Guidelines as documented by IBMStreams Administration project.

Testing will be done on the build. But additional help on testing is always welcome.

When a release is ready, we will:

  • Document test status in the issue, indicating what tests are done, and if there is any issues found.
  • Seek a +1 vote from at least one other committer - Committers check to make sure everything is in-place.
  • Tag the code for the release
  • Publish the release
  • Update SPLDoc with latest if APIs has been changed or updated.

Building a toolkit release

When making a release for a toolkit, the release should include the following:

  • Tagging of source code with release version
  • Source Zip for the release
  • Binary of the toolkit that customers can just download and use. To support multiple OS and architectures, follow these guidelines:
    • If the toolkit operators are written in Java, then only one version of the toolkit binary is needed
    • If the toolkit operators are written in C++ and does not require a custom libraries to be built, then only one version of the toolkit binary is needed. The C++ code is compiled on the platform and environment when customer applications use the operators.
    • If the toolkit operators are written in C++ and require custom C++ libraries to be built, then it is recommended that the toolkit owner selects a reference platform for the toolkit. As a general rule of thumb, the reference platform should match what is shipped in the Streams QSE and Streaming Analytics Service on Bluemix. Currently both of these environments are on RHEL 6. To support customers on other platforms, toolkit owners should provide instructions on how to build the toolkits on other platforms.
  • Include the *.MD5 and *.sha1 files that are part of the toolkit build - they are provided to allow customers to validate the binaries.
  • Update SPL Doc on the toolkit website.