Annotation Interface CSVMetadata


@Retention(RUNTIME) @Target(TYPE) public @interface CSVMetadata
Provides more information to generate more detailed OLM bundle manifests, in particular in the ClusterServiceVersion resource. This can be used to provide information that cannot be inferred automatically or override what is generated by default. Many of these fields map to CSV fields. See the OLM documentation on operator manifests for more details.
  • Element Details

    • name

      Deprecated.
      Use bundleName() and csvName() instead as previously this method was being used for both values resulting in confusion or even problems setting the correct CSV name as recommended by OLM. See this issue for a more detailed discussion.
      The name which should be used for the generated bundle. If not provided, the name is derived from the project's (maven or gradle) name. This name can be used to assign reconcilers to the same bundle by creating a SharedCSVMetadata implementation bearing a CSVMetadata annotation specifying the CSV metadata to be shared among reconcilers assigned to that named bundle.
      Default:
      ""
    • bundleName

      String bundleName
      The name which should be used for the generated bundle. If not provided, the name is derived from the project's (maven or gradle) name. This name can be used to assign reconcilers to the same bundle by creating a SharedCSVMetadata implementation bearing a CSVMetadata annotation specifying the CSV metadata to be shared among reconcilers assigned to that named bundle.
      Default:
      ""
    • csvName

      String csvName
      The name used in the CSV metadata stanza. If not provided, this will default to <bundle name>.v<version> as recommended by OLM.
      Default:
      ""
    • annotations

      Extra annotations that should be added to the CSV metadata.
      Default:
      @io.quarkiverse.operatorsdk.annotations.CSVMetadata.Annotations
    • labels

      Extra labels that should be added to the CSV metadata.
      Default:
      {}
    • description

      String description
      Default:
      ""
    • displayName

      String displayName
      Default:
      ""
    • icon

      Default:
      {}
    • keywords

      String[] keywords
      Default:
      {""}
    • maturity

      String maturity
      Default:
      ""
    • version

      String version
      Default:
      ""
    • replaces

      String replaces
      Default:
      ""
    • maintainers

      CSVMetadata.Maintainer[] maintainers
      Default:
      {}
    • provider

      Default:
      @io.quarkiverse.operatorsdk.annotations.CSVMetadata.Provider
    • installModes

      CSVMetadata.InstallMode[] installModes
      Default:
      {}
    • permissionRules

      CSVMetadata.PermissionRule[] permissionRules
      Default:
      {}
    • requiredCRDs

      CSVMetadata.RequiredCRD[] requiredCRDs
      Default:
      {}
    • minKubeVersion

      String minKubeVersion
      Default:
      ""
    • links

      Default:
      {}