This epic will track all work items related to how the certification program will handle multiple versions of OCP and Chart Verifier
Problem:
OpenShift moves at a fast pace, with multiple minor releases supported at any point in time. Partners need to support multiple releases of OCP to cover their customers' needs. OpenShift Certification should allow a single certification (PR) to cover multiple OCP releases, based on the partner's support matrix.
As of now, a chart certification is tied to a single OCP (minor) release. Furthermore, when the certification tests are run by Red Hat (i.e. when partner does not submit test results in the PR), the certification is tied to whichever OCP version is used in the CI environment at that time.
Goal:
Allow chart provider to specify a range of OCP versions supported by the chart, and capture that information as well as the specific OCP version used when running the certification the tests.
Why is it important?
This approach will offer chart providers more control over their versions and release cycle, by eliminating the need to release a new chart every time there is a new OCP minor release.
Proposal
Partners state their chart compatibility with OpenShift using the following annotation:
charts.openshift.io/supportedOpenShiftVersions
Which can indicate either a single version or a range. The OCP versions targeted must include at least one that is actively supported. If partners run the tests themselves, the OCP version used must fall within this range and must be a version still under support (per the OCP Life Cycle Policy).
Red Hat will add this annotation based on the actual version(s) used for the testing:
charts.openshift.io/testedOpenShiftVersions
This approach gives us better alignment with Operator-based applications, where vendors indicate their coverage via the com.redhat.openshift.versions annotation. While alignment on the annotation name is desirable, it is outside of the scope of this proposal.