---
title: Platform Operators - CVO Manifest Annotations
tags: platform-operators
---
# Platform Operators - CVO Manifest Annotations
## Overview
This document outlines the metadata annotations that need to be present in the Platform Operators (PO) CVO manifests for each milestone.
### Background
There are [three types of annotations](https://github.com/openshift/enhancements/blob/master/dev-guide/cluster-version-operator/dev/operators.md#manifest-inclusion-annotations) currently supported in CVO manifests: [Cluster Profiles](https://github.com/openshift/enhancements/blob/master/enhancements/update/cluster-profiles.md), [Cluster Capabilities](https://github.com/openshift/enhancements/blob/master/enhancements/installer/component-selection.md) and [TechPreview](https://github.com/openshift/enhancements/blob/master/enhancements/update/cvo-techpreview-manifests.md).
## Phase 0 Requirements
- TechPreview
- Cluster Profiles
- We will need the following annotations:
1) Self-hosted HA (traditional OCP): include.release.openshift.io/self-managed-high-availability
2) Single Node: include.release.openshift.io/single-node-developer
3) OpenShift-hosted (aka hypershift): exclude.release.openshift.io/internal-openshift-hosted
## GA Requirements
- Remove TechPreview
## Future Requirements
These requirements are things we will eventually need, but that aren't yet assigned to a milestone. Once they are assigned to a milestone, they can be moved into the appropriate section above.
- Cluster Capability
- If we decide to make Platform Operators an optional capability, we will need to add a capability annotation to allow cluster admins to toggle PO resource creation on their clusters.
- Cluster Profiles
- Support for OpenShift-hosted (hypershift) cluster profile
- This is not required for GA but will be necessary in the future so a plan for how to implement this is needed for a future milestone.
- Open questions for this integration include:
- Where would PO components run?
- Are there any considerations necessary to accomodate blocking install/upgrade and tying into the upgrade lifecycle?